Lock elision problems in glibc-2.18
Andi Kleen
andi@firstfloor.org
Wed Sep 11 22:53:00 GMT 2013
Torvald Riegel <triegel@redhat.com> writes:
> I agree that the abort codes can be misinterpreted. Part of the problem
> is that they form something like an ABI, but this ABI is "implicit" and
> not specified anywhere. That seems to be the case at least for TSX;
> I've asked Andi in the past for a definitive spec for those abort codes
> (i.e., the place where this ABI is defined), but didn't get a reply.
It's in the IA optimization manual.
http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-optimization-manual.pdf
12.4.5
Can probably look into adding it to the x86-64 ABI too.
> That's true, but glibc's lock elision code will not do anything
> incorrect if it misinterprets an abort code that it gets. It might make
> a decision that's not quite optimal regarding performance, but that's
> it.
Yes it's always only a hint.
-andi
--
ak@linux.intel.com -- Speaking for myself only
More information about the Libc-alpha
mailing list