The following commit has been merged in the master branch:
commit 752d77b5561bfb6b70e203d3bfcddd93c9dffa12
Author: Andrew Deason <[email protected]>
Date:   Thu Aug 29 15:33:49 2013 -0500

    namei: IH_REALLYCLOSE special inode on delete
    
    When we delete a special inode, we should IH_REALLYCLOSE it, to ensure
    no other cached file handles are open for that special inode. However,
    currently PurgeHeader_r does this, and then IH_DECs the special
    inodes. On namei, calling IH_DEC on a special inode causes the inode
    to be opened, so we create a cached file handle right after we closed
    all cached file handles for that inode with IH_REALLYCLOSE.
    
    Making namei IH_DEC not open an FdHandle_t for the given file is
    non-trivial, at least when dec'ing the linktable. So instead, just
    make namei IH_DEC itself issue the IH_REALLYCLOSE right before the
    actual unlink() call.
    
    With this, we can keep the cached file handle open for special inodes
    until right before they are actually deleted, so we don't issue extra
    unnecessary open()s and close()s.
    
    Change-Id: I35b234ab429bc7cd0f29654cc8f854c82c961071
    Reviewed-on: http://gerrit.openafs.org/10196
    Reviewed-by: D Brashear <[email protected]>
    Tested-by: BuildBot <[email protected]>

 src/vol/namei_ops.c |   11 +++++++++--
 src/vol/purge.c     |    5 ++++-
 2 files changed, 13 insertions(+), 3 deletions(-)

-- 
OpenAFS Master Repository
_______________________________________________
OpenAFS-cvs mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-cvs

Reply via email to