From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jan Kiszka Subject: Re: [PATCH 1/1] Disable GUEST_INTR_STATE_STI flag before injecting NMI to guest on VMX Date: Fri, 27 Aug 2010 13:06:37 +0200 Message-ID: <4C779C3D.2070700@siemens.com> References: <1282853162-16925-1-git-send-email-Jes.Sorensen@redhat.com> <1282853162-16925-2-git-send-email-Jes.Sorensen@redhat.com> <4C7776F9.4070306@siemens.com> <4C7777CA.4010208@redhat.com> <4C7779D2.9090902@siemens.com> <4C77895A.1000708@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: Jes Sorensen , "kvm@vger.kernel.org" , "gleb@redhat.com" To: Avi Kivity Return-path: Received: from david.siemens.de ([192.35.17.14]:20350 "EHLO david.siemens.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753148Ab0H0LGz (ORCPT ); Fri, 27 Aug 2010 07:06:55 -0400 In-Reply-To: <4C77895A.1000708@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: Avi Kivity wrote: > On 08/27/2010 11:39 AM, Jan Kiszka wrote: >> AMD does not differentiate between MOV-SS and STI interrupt shadows. >> >> But AMD has its own NMI problems as it does not allow to trap after >> IRET-from-NMI and requires magic dances which are partly broken in K= VM. >> I'm leaning towards NMI window emulation via the workaround we use f= or >> older Intel CPUs without NMI window trapping as well. >=20 > Can you elaborate? Basically the issues you found regarding our single-step-based workaround. Moreover, we cannot easily prevent that TF set by the NMI code leaks onto the guest's stack. J=F6rg and I stuck heads together about this during LinuxCon. We came t= o the conclusion that we either have to emulate the instruction that delays NMIs (ie. _every_ possible instruction for the interrupt shadow case) or fall back to the VMX workaround based on interrupt window trapping and an emergency timeout (much simpler, but not really correct= ). Jan --=20 Siemens AG, Corporate Technology, CT T DE IT 1 Corporate Competence Center Embedded Linux