xen-devel
[Xen-devel] Re: [PATCH 08/13] xen/pvticketlock: disable interrupts while
To: |
Andi Kleen <andi@xxxxxxxxxxxxxx> |
Subject: |
[Xen-devel] Re: [PATCH 08/13] xen/pvticketlock: disable interrupts while blocking |
From: |
Avi Kivity <avi@xxxxxxxxxx> |
Date: |
Wed, 14 Sep 2011 18:01:18 +0300 |
Cc: |
Don Zickus <dzickus@xxxxxxxxxx>, Jeremy Fitzhardinge <jeremy@xxxxxxxx>, Marcelo Tosatti <mtosatti@xxxxxxxxxx>, Nick Piggin <npiggin@xxxxxxxxx>, KVM <kvm@xxxxxxxxxxxxxxx>, Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>, Peter Zijlstra <peterz@xxxxxxxxxxxxx>, the arch/x86 maintainers <x86@xxxxxxxxxx>, Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>, Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>, Jeremy Fitzhardinge <jeremy.fitzhardinge@xxxxxxxxxx>, "H. Peter Anvin" <hpa@xxxxxxxxx>, Ingo Molnar <mingo@xxxxxxx>, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> |
Delivery-date: |
Wed, 14 Sep 2011 08:04:16 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
In-reply-to: |
<20110914144926.GU7761@xxxxxxxxxxxxxxxxxx> |
List-help: |
<mailto:xen-devel-request@lists.xensource.com?subject=help> |
List-id: |
Xen developer discussion <xen-devel.lists.xensource.com> |
List-post: |
<mailto:xen-devel@lists.xensource.com> |
List-subscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
References: |
<20110907134411.GV5795@xxxxxxxxxx> <4E678992.5050709@xxxxxxxxxx> <20110907155657.GX5795@xxxxxxxxxx> <4E679AF4.50209@xxxxxxxxxx> <20110907165203.GQ6838@xxxxxxxxxx> <4E67A551.4000502@xxxxxxxxxx> <20110913184044.GN5795@xxxxxxxxxx> <20110913190320.GR7761@xxxxxxxxxxxxxxxxxx> <20110913192152.GO5795@xxxxxxxxxx> <4E7050F7.3000208@xxxxxxxxxx> <20110914144926.GU7761@xxxxxxxxxxxxxxxxxx> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:6.0) Gecko/20110816 Thunderbird/6.0 |
On 09/14/2011 05:49 PM, Andi Kleen wrote:
On Wed, Sep 14, 2011 at 10:00:07AM +0300, Avi Kivity wrote:
> On 09/13/2011 10:21 PM, Don Zickus wrote:
> >Or are you saying an NMI in an idle system will have the same %rip thus
> >falsely detecting a back-to-back NMI?
> >
> >
>
> That's easy to avoid - insert an instruction zeroing the last nmi_rip
> somewhere before or after hlt. It's always okay to execute such an
> instruction (outside the nmi handler itself), since nmi_rip is meant to
> detect a "no instructions executed" condition.
At least for classic hlt there is no simple "after hlt" because it's all
interrupt handlers and exceptions and everything else that can interrupt
combined.
If an NMI hits in an interrupt handler, or in the "after hlt" section
before the write-to-last-nmi-rip, then we'll see that %rip has changed.
If it hits after the write-to-last-nmi-rip instruction (or in the hlt
itself), then we'll also see that %rip has changed, due to the effect of
that instruction.
--
error compiling committee.c: too many arguments to function
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|