Commit
d075b0549d62e4a81b7543b9c2f5dac242074909 introduced
parent_vcache_dv() to get the data version from fakestat mount points.
.mkdir (essentially .create for directories) should use this when
updating ->d_time.
In sillyrename, __dp is a negative dentry that should be forced to
revalidate since the new name in dentry now exists.
Change-Id: I5b112ce0437bfb061479024fee745b46821e599c
Reviewed-on: https://gerrit.openafs.org/12141
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
tvc->uncred = credp;
tvc->f.states |= CUnlinked;
afs_linux_set_nfsfs_renamed(dentry);
+
+ __dp->d_time = 0; /* force to revalidate */
+ d_move(dentry, __dp);
} else {
osi_FreeSmallSpace(__name);
}
AFS_GUNLOCK();
- if (!code) {
- __dp->d_time = hgetlo(VTOAFS(dir)->f.m.DataVersion);
- d_move(dentry, __dp);
- }
dput(__dp);
return code;
#if !defined(STRUCT_SUPER_BLOCK_HAS_S_D_OP)
dp->d_op = &afs_dentry_operations;
#endif
- dp->d_time = hgetlo(VTOAFS(dip)->f.m.DataVersion);
+ dp->d_time = parent_vcache_dv(dip, credp, 1);
d_instantiate(dp, ip);
}
afs_DestroyAttr(vattr);