Re: [PATCH 1/12]: MUTEX: Implement mutexes

From: Nicolas Pitre
Date: Sat Dec 17 2005 - 20:32:55 EST


On Sat, 17 Dec 2005, Linus Torvalds wrote:

> Of the other architectures you list, only ARM is really important. And no,
> arm doesn't do swap. It does LL/SC (except they call it "ldrex/strex",
> which I assume stands for "load/store with reservation and X just because
> X is cool. Yeah, we're cool" (*)).

Well, if you really want to be honest, you have to consider that the
ldrex/strex instructions are available only on ARM architecture level 6
and above, or in other words with only about 1% of all ARM deployments
out there. The other 99% of actual ARM processors in the field only
have the atomic swap (swp) instruction which is insufficient for
implementing a counting semaphore (we therefore have to disable
interrupts, do the semaphore update and enable interrupts again which is
much slower than a swp-based mutex).


Nicolas
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/