[OpenAFS-devel] Linux cache manager throwing away callbacks
Simon Wilkinson
sxw@inf.ed.ac.uk
Mon, 19 Jan 2009 16:27:05 +0000
>
> checking CUnlinked doesnt prevent that. this code in .dentry_iput has
> been around quite a while i think.
So, this is the behaviour I'm seeing... dentry_iput gets called when
the dentry count reaches 0, regardless of what the inode count is
doing. So, the kernel can end up dereferencing the dentry by calling
dentry_iput whilst the cache manager is still holding references on
the inode.
This is hurting me in disconnected mode, but I also wonder if there
are potential locations where invalidating the segments may break
things when running normally, in particular where we are using
background stores against a slow file server.
Simon.