diff options
Diffstat (limited to 'include/linux/mnt_namespace.h')
| -rw-r--r-- | include/linux/mnt_namespace.h | 23 |
1 files changed, 4 insertions, 19 deletions
diff --git a/include/linux/mnt_namespace.h b/include/linux/mnt_namespace.h index 3a059298cc19..d74785c2393a 100644 --- a/include/linux/mnt_namespace.h +++ b/include/linux/mnt_namespace.h | |||
| @@ -2,10 +2,9 @@ | |||
| 2 | #define _NAMESPACE_H_ | 2 | #define _NAMESPACE_H_ |
| 3 | #ifdef __KERNEL__ | 3 | #ifdef __KERNEL__ |
| 4 | 4 | ||
| 5 | #include <linux/mount.h> | 5 | #include <linux/path.h> |
| 6 | #include <linux/sched.h> | ||
| 7 | #include <linux/nsproxy.h> | ||
| 8 | #include <linux/seq_file.h> | 6 | #include <linux/seq_file.h> |
| 7 | #include <linux/wait.h> | ||
| 9 | 8 | ||
| 10 | struct mnt_namespace { | 9 | struct mnt_namespace { |
| 11 | atomic_t count; | 10 | atomic_t count; |
| @@ -24,24 +23,10 @@ struct proc_mounts { | |||
| 24 | 23 | ||
| 25 | struct fs_struct; | 24 | struct fs_struct; |
| 26 | 25 | ||
| 26 | extern struct mnt_namespace *create_mnt_ns(struct vfsmount *mnt); | ||
| 27 | extern struct mnt_namespace *copy_mnt_ns(unsigned long, struct mnt_namespace *, | 27 | extern struct mnt_namespace *copy_mnt_ns(unsigned long, struct mnt_namespace *, |
| 28 | struct fs_struct *); | 28 | struct fs_struct *); |
| 29 | extern void __put_mnt_ns(struct mnt_namespace *ns); | 29 | extern void put_mnt_ns(struct mnt_namespace *ns); |
| 30 | |||
| 31 | static inline void put_mnt_ns(struct mnt_namespace *ns) | ||
| 32 | { | ||
| 33 | if (atomic_dec_and_lock(&ns->count, &vfsmount_lock)) | ||
| 34 | /* releases vfsmount_lock */ | ||
| 35 | __put_mnt_ns(ns); | ||
| 36 | } | ||
| 37 | |||
| 38 | static inline void exit_mnt_ns(struct task_struct *p) | ||
| 39 | { | ||
| 40 | struct mnt_namespace *ns = p->nsproxy->mnt_ns; | ||
| 41 | if (ns) | ||
| 42 | put_mnt_ns(ns); | ||
| 43 | } | ||
| 44 | |||
| 45 | static inline void get_mnt_ns(struct mnt_namespace *ns) | 30 | static inline void get_mnt_ns(struct mnt_namespace *ns) |
| 46 | { | 31 | { |
| 47 | atomic_inc(&ns->count); | 32 | atomic_inc(&ns->count); |
