diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/dcache.h | 11 | ||||
-rw-r--r-- | include/linux/namei.h | 3 |
2 files changed, 11 insertions, 3 deletions
diff --git a/include/linux/dcache.h b/include/linux/dcache.h index ee6c26d142c3..1a87760d6532 100644 --- a/include/linux/dcache.h +++ b/include/linux/dcache.h | |||
@@ -168,6 +168,7 @@ struct dentry_operations { | |||
168 | void (*d_iput)(struct dentry *, struct inode *); | 168 | void (*d_iput)(struct dentry *, struct inode *); |
169 | char *(*d_dname)(struct dentry *, char *, int); | 169 | char *(*d_dname)(struct dentry *, char *, int); |
170 | struct vfsmount *(*d_automount)(struct path *); | 170 | struct vfsmount *(*d_automount)(struct path *); |
171 | int (*d_manage)(struct dentry *, bool); | ||
171 | } ____cacheline_aligned; | 172 | } ____cacheline_aligned; |
172 | 173 | ||
173 | /* | 174 | /* |
@@ -214,8 +215,9 @@ struct dentry_operations { | |||
214 | 215 | ||
215 | #define DCACHE_MOUNTED 0x10000 /* is a mountpoint */ | 216 | #define DCACHE_MOUNTED 0x10000 /* is a mountpoint */ |
216 | #define DCACHE_NEED_AUTOMOUNT 0x20000 /* handle automount on this dir */ | 217 | #define DCACHE_NEED_AUTOMOUNT 0x20000 /* handle automount on this dir */ |
218 | #define DCACHE_MANAGE_TRANSIT 0x40000 /* manage transit from this dirent */ | ||
217 | #define DCACHE_MANAGED_DENTRY \ | 219 | #define DCACHE_MANAGED_DENTRY \ |
218 | (DCACHE_MOUNTED|DCACHE_NEED_AUTOMOUNT) | 220 | (DCACHE_MOUNTED|DCACHE_NEED_AUTOMOUNT|DCACHE_MANAGE_TRANSIT) |
219 | 221 | ||
220 | extern seqlock_t rename_lock; | 222 | extern seqlock_t rename_lock; |
221 | 223 | ||
@@ -404,7 +406,12 @@ static inline void dont_mount(struct dentry *dentry) | |||
404 | 406 | ||
405 | extern void dput(struct dentry *); | 407 | extern void dput(struct dentry *); |
406 | 408 | ||
407 | static inline int d_mountpoint(struct dentry *dentry) | 409 | static inline bool d_managed(struct dentry *dentry) |
410 | { | ||
411 | return dentry->d_flags & DCACHE_MANAGED_DENTRY; | ||
412 | } | ||
413 | |||
414 | static inline bool d_mountpoint(struct dentry *dentry) | ||
408 | { | 415 | { |
409 | return dentry->d_flags & DCACHE_MOUNTED; | 416 | return dentry->d_flags & DCACHE_MOUNTED; |
410 | } | 417 | } |
diff --git a/include/linux/namei.h b/include/linux/namei.h index 18d06add0a40..8ef2c789c2a8 100644 --- a/include/linux/namei.h +++ b/include/linux/namei.h | |||
@@ -79,7 +79,8 @@ extern struct file *lookup_instantiate_filp(struct nameidata *nd, struct dentry | |||
79 | 79 | ||
80 | extern struct dentry *lookup_one_len(const char *, struct dentry *, int); | 80 | extern struct dentry *lookup_one_len(const char *, struct dentry *, int); |
81 | 81 | ||
82 | extern int follow_down(struct path *); | 82 | extern int follow_down_one(struct path *); |
83 | extern int follow_down(struct path *, bool); | ||
83 | extern int follow_up(struct path *); | 84 | extern int follow_up(struct path *); |
84 | 85 | ||
85 | extern struct dentry *lock_rename(struct dentry *, struct dentry *); | 86 | extern struct dentry *lock_rename(struct dentry *, struct dentry *); |