RE: [PATCH] lockref: remove cpu_relax() again
From: Luck, Tony
Date: Thu Sep 05 2013 - 15:45:44 EST
>> Worse still - early processor implementations actually just ignored
>> the acquire/release and did a full fence all the time. Unfortunately
>> this meant a lot of badly written code that used .acq when they really
>> wanted .rel became legacy out in the wild - so when we made a cpu
>> that strictly did the .acq or .rel ... all that code started breaking - so
>> we had to back-pedal and keep the "legacy" behavior of a full fence :-(
>
> Ugh. Can you try what happens with the weaker release-semantics
> performance-wise for that code? Do it *just* for the lockref code..
No. I can change the Linux code to say "cmpxchg.rel" here ... but the
h/w will do exactly the same thing it did when I had "cmpxchg.acq".
-Tony
èº{.nÇ+·®+%Ëlzwm
ébëæìr¸zX§»®w¥{ayºÊÚë,j¢f£¢·hàz¹®w¥¢¸¢·¦j:+v¨wèjØm¶ÿ¾«êçzZ+ùÝj"ú!¶iOæ¬z·vØ^¶m§ÿðÃnÆàþY&