[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <4E835F8C0200007800058461@nat28.tlf.novell.com>
Date: Wed, 28 Sep 2011 16:55:24 +0100
From: "Jan Beulich" <JBeulich@...e.com>
To: "Jeremy Fitzhardinge" <jeremy@...p.org>,
"Linus Torvalds" <torvalds@...ux-foundation.org>
Cc: "Stephan Diestelhorst" <stephan.diestelhorst@....com>,
"Jeremy Fitzhardinge" <jeremy.fitzhardinge@...rix.com>,
"Ingo Molnar" <mingo@...e.hu>, "Andi Kleen" <andi@...stfloor.org>,
"Peter Zijlstra" <peterz@...radead.org>,
"Nick Piggin" <npiggin@...nel.dk>,
"the arch/x86 maintainers" <x86@...nel.org>,
<xen-devel@...ts.xensource.com>, "Avi Kivity" <avi@...hat.com>,
"Marcelo Tosatti" <mtosatti@...hat.com>,
"KVM" <kvm@...r.kernel.org>,
"Linux Kernel Mailing List" <linux-kernel@...r.kernel.org>,
"H. Peter Anvin" <hpa@...or.com>
Subject: Re: [Xen-devel] [PATCH 00/10] [PATCH RFC V2] Paravirtualized
ticketlocks
>>> On 28.09.11 at 17:38, Linus Torvalds <torvalds@...ux-foundation.org> wrote:
> On Tue, Sep 27, 2011 at 9:44 AM, Jeremy Fitzhardinge <jeremy@...p.org> wrote:
>>
>> I guess it comes down to throwing myself on the efficiency of some kind
>> of fence instruction. I guess an lfence would be sufficient; is that
>> any more efficient than a full mfence? At least I can make it so that
>> its only present when pv ticket locks are actually in use, so it won't
>> affect the native case.
>
> Please don't play with fences, just do the final "addb" as a locked
> instruction.
>
> In fact, don't even use an addb, this whole thing is disgusting:
>
> movzwl (%rdi),%esi (esi:=0x0400)
> addb $0x2,(%rdi) (LOCAL copy of lock is now: 0x0402)
> movzwl (%rdi),%eax (local forwarding from previous store: eax := 0x0402)
>
> just use "lock xaddw" there too.
I'm afraid that's not possible, as that might carry from the low 8 bits
into the upper 8 ones, which must be avoided.
Jan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists