OpenAFS Master Repository branch, openafs-stable-1_8_x, updated. openafs-stable-1_8_0pre3-9-gae70407

Gerrit Code Review
Wed, 3 Jan 2018 00:41:14 -0500

The following commit has been merged in the openafs-stable-1_8_x branch:
commit ae70407fafa3faa94706979c727f53a625939061
Author: Mark Vitale <>
Date:   Thu Nov 30 13:45:27 2017 -0500

    Revert "LINUX: do not use d_invalidate to evict dentries"
    Linux recently changed the semantics of d_invalidate() to:
    - return void
    - invalidate even a current working directory
    OpenAFS commit c3bbf0b4444db88192eea4580ac9e9ca3de0d286 switched libafs
    to use d_prune_aliases() instead.
    However, since that commit, several things have happened:
    - RHEL 7.4 changed the semantics of d_invalidate() such that it
      invalidates the cwd, but did NOT change the return type to void.
      This broke our autoconf test for detecting the new semantics.
    - Further research reveals that d_prune_aliases() was not the best
      choice for replacing d_invalidate().  This is because for directories,
      d_prune_aliases() doesn't invalidate dentries when they are referenced
      by its children, and it doesn't walk the tree trying to invalidate
      child dentries.  So it can leave dentries dangling, if the only
      references to thos dentries are via children.
    In preparation for future commits, revert
    c3bbf0b4444db88192eea4580ac9e9ca3de0d286 .
    Reviewed-by: Andrew Deason <>
    Reviewed-by: Benjamin Kaduk <>
    Tested-by: BuildBot <>
    (cherry picked from commit 367693bd7da2de593e3329f6acc4a4d07621fb97)
    Change-Id: I3dfa9127adf8424fe675e237194d6ade5a7fc4f1
    Tested-by: BuildBot <>
    Reviewed-by: Benjamin Kaduk <>

 src/afs/LINUX/osi_vcache.c |    8 --------
 1 files changed, 0 insertions(+), 8 deletions(-)

OpenAFS Master Repository