summaryrefslogtreecommitdiffstats
path: root/include/linux/dcache.h
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2018-10-17 10:33:44 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2018-10-29 12:23:34 +0100
commit4e601546388e2e2968eed3b96b1ff19c4e421c31 (patch)
tree133f70d8bbec9ab0e28e69aab970ca6e746f8f86 /include/linux/dcache.h
parentfb40e3c1cb2d5182edcd9dabfcd24e30bdf4ee25 (diff)
downloadbarebox-4e601546388e2e2968eed3b96b1ff19c4e421c31.tar.gz
barebox-4e601546388e2e2968eed3b96b1ff19c4e421c31.tar.xz
fs: implement d_revalidate
d_revalidate is useful when filesystems change under the hood of the fs layer. This can happen with network filesystems or with devfs. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'include/linux/dcache.h')
-rw-r--r--include/linux/dcache.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/dcache.h b/include/linux/dcache.h
index 16244129bf..1581ddc701 100644
--- a/include/linux/dcache.h
+++ b/include/linux/dcache.h
@@ -82,6 +82,7 @@ struct dentry {
};
struct dentry_operations {
+ int (*d_revalidate)(struct dentry *, unsigned int);
};
struct dentry * d_make_root(struct inode *);
@@ -93,6 +94,8 @@ void d_delete(struct dentry *);
struct dentry *dget(struct dentry *);
void dput(struct dentry *);
+#define DCACHE_OP_REVALIDATE 0x00000004
+
#define DCACHE_ENTRY_TYPE 0x00700000
#define DCACHE_MISS_TYPE 0x00000000 /* Negative dentry (maybe fallthru to nowhere) */
#define DCACHE_WHITEOUT_TYPE 0x00100000 /* Whiteout dentry (stop pathwalk) */