summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@fys.uio.no>2003-08-19 21:35:45 -0700
committerLinus Torvalds <torvalds@home.osdl.org>2003-08-19 21:35:45 -0700
commite14720a157f5d8745006f44520dfa3b8ac498328 (patch)
treef3bd7af59711cd9e61030f4139a2b07398f63147 /include/linux
parent633604277ee5552df59a5e61b836717ed0d52e23 (diff)
[PATCH] Support dentry revalidation under open(".")
link_path_walk() currently treats the special filenames ".", ".." and "/" differently in that it does not call down to the filesystem in order to revalidate the cached dentry, but just assumes that it is fine. For most filesystems this is OK, but it the case of the stateless NFS, this means that it circumvents path staleness detection, and the attribute+data cache revalidation code on such common commands as opendir("."). This change provides a way to do such revalidation for NFS without impacting other filesystems. Note: the failure to revalidate the path here does not result in a call to d_invalidate() unlike (all?) other calls to d_revalidate(). It only results in an ESTALE error being returned to the caller.
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/fs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 8df205c7ba14..a9e02e3dcdd8 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -89,6 +89,7 @@ extern int leases_enable, dir_notify_enable, lease_break_time;
/* public flags for file_system_type */
#define FS_REQUIRES_DEV 1
+#define FS_REVAL_DOT 16384 /* Check the paths ".", ".." for staleness */
#define FS_ODD_RENAME 32768 /* Temporary stuff; will go away as soon
* as nfs_rename() will be cleaned up
*/