lkml.org 
[lkml]   [2011]   [Sep]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Xen-devel] [PATCH 00/10] [PATCH RFC V2] Paravirtualized ticketlocks
>>> On 28.09.11 at 17:38, Linus Torvalds <torvalds@linux-foundation.org> wrote:
> On Tue, Sep 27, 2011 at 9:44 AM, Jeremy Fitzhardinge <jeremy@goop.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



\
 
 \ /
  Last update: 2011-09-28 17:57    [from the cache]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and my Meterkast|Read the blog