From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH] KVM: x86: Save&restore interrupt shadow mask Date: Sun, 14 Feb 2010 18:57:10 +0200 Message-ID: <4B782B66.4090205@redhat.com> References: <4B782980.8070300@web.de> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Marcelo Tosatti , kvm To: Jan Kiszka Return-path: Received: from mx1.redhat.com ([209.132.183.28]:30209 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751665Ab0BNQ5L (ORCPT ); Sun, 14 Feb 2010 11:57:11 -0500 In-Reply-To: <4B782980.8070300@web.de> Sender: kvm-owner@vger.kernel.org List-ID: On 02/14/2010 06:49 PM, Jan Kiszka wrote: > From: Jan Kiszka > > The interrupt shadow created by STI or MOV-SS-like operations is part of > the VCPU state and must be preserved across migration. Transfer it in > the spare padding field of kvm_vcpu_events.interrupt. > > As a side effect we now have to make vmx_set_interrupt_shadow robust > against both shadow types being set. Give MOV SS a higher priority and > skip STI in that case to avoid that VMX throws a fault on next entry. > > > diff --git a/arch/x86/include/asm/kvm.h b/arch/x86/include/asm/kvm.h > index f46b79f..4dd01e2 100644 > --- a/arch/x86/include/asm/kvm.h > +++ b/arch/x86/include/asm/kvm.h > @@ -258,6 +258,9 @@ struct kvm_reinject_control { > #define KVM_VCPUEVENT_VALID_NMI_PENDING 0x00000001 > #define KVM_VCPUEVENT_VALID_SIPI_VECTOR 0x00000002 > > +#define X86_SHADOW_INT_MOV_SS 1 > +#define X86_SHADOW_INT_STI 2 > + > svm doesn't make a difference. Is it worth exposing this to userspace (and thus providing wrong information on svm)? (in any case, needs a KVM_ prefix). Needs a KVM_CAP_ and flags bit. -- error compiling committee.c: too many arguments to function