1 #ifndef _LINUX_FS_STRUCT_H
2 #define _LINUX_FS_STRUCT_H
4 #include <linux/path.h>
5 #include <linux/spinlock.h>
6 #include <linux/seqlock.h>
14 struct path root
, pwd
;
17 extern struct kmem_cache
*fs_cachep
;
19 extern void exit_fs(struct task_struct
*);
20 extern void set_fs_root(struct fs_struct
*, const struct path
*);
21 extern void set_fs_pwd(struct fs_struct
*, const struct path
*);
22 extern struct fs_struct
*copy_fs_struct(struct fs_struct
*);
23 extern void free_fs_struct(struct fs_struct
*);
24 extern int unshare_fs_struct(void);
26 static inline void get_fs_root(struct fs_struct
*fs
, struct path
*root
)
31 spin_unlock(&fs
->lock
);
34 static inline void get_fs_pwd(struct fs_struct
*fs
, struct path
*pwd
)
39 spin_unlock(&fs
->lock
);
42 static inline void get_fs_root_and_pwd(struct fs_struct
*fs
, struct path
*root
,
50 spin_unlock(&fs
->lock
);
53 extern bool current_chrooted(void);
55 #endif /* _LINUX_FS_STRUCT_H */