On 05/09/2012 07:10 PM, Christoph Hellwig wrote: > On Wed, May 09, 2012 at 05:11:53PM +0800, Liu Yuan wrote: >> > I am still not convinced to run away from RCU-based mechanism or data >> > structure. > I hope I have stated clearly enough that I don't want to "run away", > I just don't think it's a very good fit. If we have a reall good > argument for adding it, and have the house in order before adding these > complexities it's all fine with me. > >> > For the new patch set, it seems that 1) we can't avoid to share vnode >> > info between main and threads, and 2) get a difficult-to-use API: >> > grab/get/put > It's a very simple refcount API, basically the simples way to manage > object lifetimes. > I am more fond of binary tuple of get/put, instead of triple tuple API. With RCU, we could get this finer API back and it's also a very simple solution. >> > 3) need to pass vnode_info everywhere and change internal >> > API a lot. > It's not all that much of a change. In fact I'd like to do bigger > changes eventually to pass proper objects down the cluster OP path > instead of the current high number of individually passed arguments. > Okay, it's better for us to see the whole picture. Actually, I am most concerned of extra argument to pass vnode_info everywhere, If we can get a more reasonable argument structure, I'll calm down about it. Thanks, Yuan |