看板 DFBSD_kernel 關於我們 聯絡資訊
At Thu, 10 Feb 2005 11:02:09 -0800 (PST), Matthew Dillon wrote: > Ahhh. This clears things up! Very nice debugging printfs. It makes > it completely obvious. > > What is happening is that cache_resolve() is creating a child node > under home at the same time cache_inval() is trying to invalidate it. > > Hmm. Ok. I think I might have been a bit overzelous in the retry code. > It isn't actually necessary to re-destroy new associations created > while cache_inval is recursing on the children. We only need to destroy > the *old* associations. This means we can take just a single-pass > through and get rid of the retry code entirely. > > The only place where it really matters is in cache_rename(), but that > case can be handled in cache_rename() itself. Actually, I was thinking that the retry may be unnecessary when I first looked at cache_inval. I wasn't really sure about what all callers expected though. > I really appreciate the work you are doing, the new namecache code is > the cornerstone of a great deal of already completed and up-and-coming > VFS code and we have to make sure it works properly. > > Please try this patch. > Works great. Thanks! -Richard