On Mon, Oct 08, 2012 at 04:33:45PM -0700, Peter Fordham wrote: > > Can someone give me a quick outline of why spinlocks are required in > the EXT4 code? Don't all file-system requests originate from user > context, hence meaning all locking be done with mutexes or semaphores. Mutexes are incredibly expensive in the contended case, since you basically have to take a trip through the scheduler. If the other CPU is only going to be holding the lock for a few dozen cycles, a spinlock is far preferable to a mutex. > I'm doing some profiling on an ARM device it's showing up spin unlock > taking a lot of time and I'd like to migrate to using mutex's instead > since they don't incur penalties from synchronization instructions > like DMB. I'm guessing there's some underlying reason why this isn't > safe and I'd like to understand it. Why in the world does ARM have expensive spinlocks? ARM64 is *doomed* if this is a fundamental property of the ARM processor design... - Ted -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html