vmm on !MULTIPROCESSOR kernels should still mark vpus with pending intrs.
authordlg <dlg@openbsd.org>
Wed, 9 Nov 2022 10:19:20 +0000 (10:19 +0000)
committerdlg <dlg@openbsd.org>
Wed, 9 Nov 2022 10:19:20 +0000 (10:19 +0000)
the #ifdef MULTIPROCESSOR was a little broad.

still grateful to anton and stsp for unbreaking the tree though.

sys/arch/amd64/amd64/vmm.c

index 80256ed..7ba57a4 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: vmm.c,v 1.330 2022/11/09 06:32:58 stsp Exp $  */
+/*     $OpenBSD: vmm.c,v 1.331 2022/11/09 10:19:20 dlg Exp $   */
 /*
  * Copyright (c) 2014 Mike Larkin <mlarkin@openbsd.org>
  *
@@ -896,8 +896,8 @@ vm_intr_pending(struct vm_intr_params *vip)
                goto out;
        }
 
-#ifdef MULTIPROCESSOR
        vcpu->vc_intr = vip->vip_intr;
+#ifdef MULTIPROCESSOR
        ci = READ_ONCE(vcpu->vc_curcpu);
        if (ci != NULL)
                x86_send_ipi(ci, X86_IPI_NOP);