ext2 used to have similar issues with the superblock lock - where things
like block allocation (very much in the write path) would grab the
superblock lock, and completely destroy interactive feel even for
processes that didn't need to do IO, because the superblock lock was
often grabbed even if the data was actually cached (sb locking needed
just to _look_up_ the physical block so that you could look up the
cached data in the buffer cache).
Al Viro largely fixed in for ext2, which now uses lock_super() a lot
less. But a lot of filesystems are based on the old ext2 locking, and
may have inherited some of the worst parts..
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/