1 #ifndef _LINUX_FS_STRUCT_H 2 #define _LINUX_FS_STRUCT_H 3 4 struct dentry; 5 struct vfsmount; 6 7 struct fs_struct { 8 atomic_t count; 9 rwlock_t lock; 10 int umask; 11 struct dentry * root, * pwd, * altroot; 12 struct vfsmount * rootmnt, * pwdmnt, * altrootmnt; 13 }; 14 15 #define INIT_FS { \ 16 .count = ATOMIC_INIT(1), \ 17 .lock = RW_LOCK_UNLOCKED, \ 18 .umask = 0022, \ 19 } 20 21 extern struct kmem_cache *fs_cachep; 22 23 extern void exit_fs(struct task_struct *); 24 extern void set_fs_altroot(void); 25 extern void set_fs_root(struct fs_struct *, struct vfsmount *, struct dentry *); 26 extern void set_fs_pwd(struct fs_struct *, struct vfsmount *, struct dentry *); 27 extern struct fs_struct *copy_fs_struct(struct fs_struct *); 28 extern void put_fs_struct(struct fs_struct *); 29 30 #endif /* _LINUX_FS_STRUCT_H */ 31