Messages in this thread | | | Date | Mon, 25 Mar 2013 01:15:56 -0700 | From | Andi Kleen <> | Subject | Re: [PATCH 02/29] x86, tsx: Add RTM intrinsics |
| |
> FYI the TM spec can be downloaded here: > https://www.power.org/documentation/power-isa-transactional-memory/ > > You're example code looks like this:
I don't think portable code will use this directly. Note it's in arch/x86/
Generally portable code should use higher level interfaces, like elide_lock/elide_lock_adapt that hide the architecture specific details.
If you want to do lock elision you would plug in some elision algorithm that works well at that level.
> Secondly, can we make xbegin just return true/false and get the status > later if needed?
I now removed xbegin() from the portable file, as it's only used in arch specific code. And FWIW I'm considering to change it to save a few instructions and go for the more efficient goto based interface in glibc.
> > ppc = tcheck... should be fine, other than the name.
Well x and tm doesn't really matter, but I already have x* so i'm inclined to keep it, unless people bikeshed too strongly. It should work for PPC too.
BTW if the percpu include loop hell is ever sorted out _xtest may even stop using XTEST.
-Andi
-- ak@linux.intel.com -- Speaking for myself only
| |