On Wed, May 02, 2018 at 08:37:13PM +0000, Daniel Colascione wrote:
quoted
Recursive locks are teh most horrible crap ever. And having the tid in
What happened to providing mechanism, not policy?
You can't wish away recursive locking. It's baked into Java and the CLR,
and it's enshrined in POSIX. It's not going away, and there's no reason not
to support it efficiently.
You can implement recursive locks just fine with a TID based word, just
keep the recursion counter external to the futex word. If owner==self,
increment etc..
quoted
the word allows things like kernel based optimistic spins and possibly
PI related things.
Sure. A lot of people don't want PI though, or at least they want to opt
into it. And we shouldn't require an entry into the kernel for what we can
in principle do efficiently in userspace.
Any additional PI would certainly be opt-in, but the kernel based
spinning might make sense unconditionally.