From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeroen Groenewegen van der Weyden Subject: Re: Crash of guest with nested vmx with Unknown nested vmexit reason 80000021. Date: Fri, 10 Oct 2014 12:31:47 +0200 Message-ID: <5437B593.80702@grosc.com> References: <542AD266.5030803@grosc.com> <5433B94E020000780003CBF0@mail.emea.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: "Tian, Kevin" , Jan Beulich , "Dong, Eddie" , "Nakajima, Jun" , "Zhang, Yang Z" Cc: "xen-devel@lists.xen.org" List-Id: xen-devel@lists.xenproject.org Hi all, Any input from my side necessary to keep this rolling? BR, Jeroen. Tian, Kevin schreef op 7-10-2014 om 21:56: > Add Yang as the nested vmx owner. > >> From: Jan Beulich [mailto:JBeulich@suse.com] >> Sent: Tuesday, October 07, 2014 12:59 AM >> >>>>> On 30.09.14 at 17:55, wrote: >>> Recently I updated my openSuse box from 12.3 to 13.1. On this box I run >>> xen with several guests. One of these guests is an appliance that has 4 >>> kvm guests running. >>> When I start this appliance with the nested vmx feature the appliance >>> crashes either immediately or after a few minutes. >>> >>> This same guest was running without a problem on opensuse releases 11.4 >>> until 12.3 >>> [...] >>> ==== outup xl demsg >>> (XEN) vvmx.c:2459:d5 Unknown nested vmexit reason 80000021. >>> (XEN) Failed vm entry (exit reason 0x80000021) caused by invalid guest >>> state (0). >>> (XEN) ************* VMCS Area ************** >>> [...] >> So the problem here is that >> >>> (XEN) Interruptibility=0008 ActivityState=0000 >> VMX_INTR_SHADOW_NMI is set while >> >>> (XEN) PinBased=0000003f CPUBased=b6b9e5fa SecondaryExec=000004eb >> PIN_BASED_VIRTUAL_NMIS is active and >> >>> (XEN) VMEntry: intr_info=80000202 errcode=5d021101 ilen=00000003 >>> (XEN) VMExit: intr_info=00000000 errcode=00000000 ilen=00000003 >>> (XEN) reason=80000021 qualification=00000000 >>> (XEN) IDTVectoring: info=80000202 errcode=00000000 >> an NMI is being injected. This case is explicitly mentioned in Vol 3 >> section 31.7.1.2 (Resuming Guest Software after Handling an >> Exception). Either there needs to be extra code in vvmx.c to clear >> VMX_INTR_SHADOW_NMI (as the second sub-bullet point of the last >> bullet point says), or the second half of vmx_idtv_reinject() needs >> to be done without regard to nestedhvm_vcpu_in_guestmode(v) >> (and maybe also without regard to EXIT_REASON_TASK_SWITCH). >> >> Speaking of SDM sections: There are quite a few references in the >> code that name just section numbers (in the case here, several >> references to sections 25.7.1.* exist). These numbers become stale >> quite quickly (here they're now 31.7.1.*), so in order to help >> digging through issues like the one here, can I please ask one of >> you to go through and replace (or at least amend) these numbers >> with the sections' titles (which I hope won't get altered that quickly)? >> >> Jan > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xen.org > http://lists.xen.org/xen-devel >