[PATCH] powerpc: Don't clear larx reservation on system call exit
Benjamin Herrenschmidt
benh at kernel.crashing.org
Mon Feb 15 15:15:07 EST 2010
On Mon, 2010-02-15 at 15:06 +1100, Anton Blanchard wrote:
>
> Yeah that was my primary concern. Right now these things fail 100%, so
> no one is relying on it. The worry is if people start writing their own
> crazy low level system call + locking stubs that might work most of the
> time (if we remove the stwcx in syscall exit).
Worse than that. It will look like it works, but it won't really since
the dangling reservation matches a completely unrelated lwarx done by
the kernel and not the original userspace one, so the stwcx. might
succeed despite the fact that the original value -was- changed.
So it's really a matter of documentation I suppose but we have to be
careful as I've learned with time that there is nothing too silly for
userspace to do :-)
> Good point, I hadn't thought of signals and I agree we'd need to clear the
> reservation in the sigreturn path.
Right. As I said, I'm pretty sure it will happen as a side effect of
other things but I'd rather pay the small price of having an explicit
blurb to do it in sigreturn regardless.
Cheers,
Ben.
More information about the Linuxppc-dev
mailing list