On 05/03/2012 02:42 PM, Liu Yuan wrote: > On 05/03/2012 02:39 PM, tao.peng at emc.com wrote: > >> I guess something like >> old = current; >> current = new; >> __sync_synchronize(); >> put_vnode_info(old); >> >> should be sufficient to fix it? > > It seems that we are not talking about the same problem. > > get/put_vnode_info() are executed in main thread, I guess there isn't > race as you describe. > > Thanks, > Yuan They're not always in main thread, del_vdi() runs in worker thread, but it also need get_vnode_info |