|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel] Re: [PATCH RFC 02/12] x86/ticketlock: convert spin loop to C
On 08/06/2010 07:53 AM, Jeremy Fitzhardinge wrote:
On 08/06/2010 05:43 AM, Jan Beulich wrote:
You certainly mean "the compiler currently treats this as being:" - I
don't think there's a guarantee it'll always be doing so.
for (;;) {
if (inc.tickets.head == inc.tickets.tail)
goto out;
...
}
out: barrier();
}
(Which would probably be a reasonable way to clarify the code.)
I therefore think it needs to be written this way.
Agreed.
A call/return to an actual out-of-line function is a barrier (and will
always be a barrier, as it is the fundamental ABI sequence points), but
to an inline function it is not.
-hpa
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
|
|
|
|