On Sat, Oct 16, 2010 at 06:57:09PM +1100, Nick Piggin wrote: > > > Ah, done thinking now! I was so the i_state field had been set > > > before the inode was added to various lists and potentially > > > accessable to other threads. I should probably add a comment to that > > > effect, right? > > > > Yes, please. > > This is due to i_lock not covering all the icache state of the inode, > so you have to make these synchronisation changes like this. > > I much prefer such proposals to go at the end of my series, where I > will probably nack them (and use rcu instead if the remaining trylocks > are such a big issue). To get back to the context - what it changes is setting up i_state = I_NEW before adding the inode to the sb-list and the hash. Making sure objects are fully set up before adding to a list is always a good idea, and really has nothing to do with RCU. -- 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