[patch 00/14] reworked minimal inode_lock breaking series

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I am still very much against the locking design of Dave's patchset, but
especially the way it is broken out. I could fathom accepting some of the
i_lock width reduction if they are properly broken out and justified and
documented why they are safe. But lumping this huge series of stuff before
inode_lock is even lifted is not the right way to go about it.

I still maintain that i_lock for icache state lock is the way to go at least
until we get quite a way down the track. I think a lot of people can't see it
maybe because my patchset wasn't broken out terribly well.

So I am posting here just the initial lock breaking part, reworked. In
particular, i_lock coverage is established before adding broken out data
structure locks, but it also cleans things up and attempts not to move stuff
around that isn't strictly required.

I still wait until everything is covered before touching inode_lock, but I have
explained how it is actually possible to start removing some of inode_lock even
before then, which I think is a good demonstration of the power of having full
i_lock coverage.

The steps here should be relatively easy to follow and verify (I hope), and
they lead quite easily to the actual scalability improvement steps. So please
don't get sidetracked on the temporary trylock ugliness!

Thanks,
Nick


--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux