On Fri, Jan 13, 2012 at 01:50:52PM -0700, Allison Henderson wrote: > On 01/12/2012 09:34 PM, Dave Chinner wrote: > >On Thu, Jan 12, 2012 at 08:01:43PM -0700, Allison Henderson wrote: > >>Hi All, > >> > >>I know this is an old topic, but I am poking it again because I've > >>had some work items wrap up, and Im planning on picking up on this > >>one again. I am thinking about implementing extent locks to replace > >>i_mutex. So I just wanted to touch base with folks and see what > >>people are working on because I know there were some folks out there > >>that were thing about doing similar solutions. > > > >What locking API are you looking at? If you are looking at an > >something like: > > > >read_range_{try}lock(lock, off, len) > >read_range_unlock(lock, off, len) > >write_range_{try}lock(lock, off, len) > >write_range_unlock(lock, off, len) > > > >and implementing with an rbtree or a btree for tracking, then I > >definitely have a use for it in XFS - replacing the current rwsem > >that is used for the iolock. Range locks like this are the only > >thing we need to allow concurrent buffered writes to the same file > >to maintain the per-write exclusion that posix requires. > > Yes that is generally the idea I was thinking about doing, but at > the time, I was not thinking outside the scope of ext4. You are > thinking maybe it should be in vfs layer so that it's something that > all the filesystems will use? That seems to be the impression I'm > getting from folks. Thx! Yes, that's what I'm suggesting. Not so much a vfs layer function, but a library (range locks could be useful outside filesystems) so locating it in lib/ was what I was thinking.... Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx -- 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