From: Derrick Brashear Date: Wed, 24 Sep 2003 19:33:36 +0000 (+0000) Subject: linux-dentry-revalidate-make-sysname-lists-work-20030924 X-Git-Tag: openafs-devel-1_3_50~52 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=42d23ccf9aafc264a5e9d47bceb979c8e8caa0bf;p=packages%2Fo%2Fopenafs.git linux-dentry-revalidate-make-sysname-lists-work-20030924 pass the unmangled name into afs_lookup in dentry_revalidate if dnlc lookup fails. --- diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c index 3d402fd71..0e0ec36b1 100644 --- a/src/afs/LINUX/osi_vnodeops.c +++ b/src/afs/LINUX/osi_vnodeops.c @@ -926,8 +926,11 @@ afs_linux_dentry_revalidate(struct dentry *dp) goto done; } - /* A DNLC lookup failure cannot be trusted. Try a real lookup */ - code = afs_lookup(parentvcp, name, &lookupvcp, credp); + /* A DNLC lookup failure cannot be trusted. Try a real lookup. + Make sure to try the real name and not the @sys expansion; + afs_lookup will expand @sys itself. */ + + code = afs_lookup(parentvcp, dp->d_name.name, &lookupvcp, credp); /* Verify that the dentry does not point to an old inode */ if (vcp != lookupvcp)