Patchwork uq/master: KVM: Request setting of nmi_pending and sipi_vector

login
register
mail settings
Submitter Jan Kiszka
Date Jan. 28, 2010, 8:30 a.m.
Message ID <4B614B3B.1040606@siemens.com>
Download mbox | patch
Permalink /patch/43853/
State New
Headers show

Comments

Jan Kiszka - Jan. 28, 2010, 8:30 a.m.
The final version of VCPU events in 2.6.33 will allow to skip
nmi_pending and sipi_vector on KVM_SET_VCPU_EVENTS. For now let's write
them unconditionally, which is unproblematic for upstream due to missing
SMP support. Future version which enable SMP will write them only on
reset.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---

The same patch can be used by qemu-kvm as it will only trigger on
init/reset unlike upstream.

 target-i386/kvm.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)
Marcelo Tosatti - Jan. 28, 2010, 7:58 p.m.
On Thu, Jan 28, 2010 at 09:30:51AM +0100, Jan Kiszka wrote:
> The final version of VCPU events in 2.6.33 will allow to skip
> nmi_pending and sipi_vector on KVM_SET_VCPU_EVENTS. For now let's write
> them unconditionally, which is unproblematic for upstream due to missing
> SMP support. Future version which enable SMP will write them only on
> reset.
> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>

Applied, thanks.

Patch

diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 5b093ce..b457b96 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -794,6 +794,9 @@  static int kvm_put_vcpu_events(CPUState *env)
 
     events.sipi_vector = env->sipi_vector;
 
+    events.flags =
+        KVM_VCPUEVENT_VALID_NMI_PENDING | KVM_VCPUEVENT_VALID_SIPI_VECTOR;
+
     return kvm_vcpu_ioctl(env, KVM_SET_VCPU_EVENTS, &events);
 #else
     return 0;