aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/fs.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/fs.h')
-rw-r--r--include/linux/fs.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 6d6226732c93..1b5f502a4b8f 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -104,6 +104,10 @@ extern int dir_notify_enable;
104#define MS_MOVE 8192 104#define MS_MOVE 8192
105#define MS_REC 16384 105#define MS_REC 16384
106#define MS_VERBOSE 32768 106#define MS_VERBOSE 32768
107#define MS_UNBINDABLE (1<<17) /* change to unbindable */
108#define MS_PRIVATE (1<<18) /* change to private */
109#define MS_SLAVE (1<<19) /* change to slave */
110#define MS_SHARED (1<<20) /* change to shared */
107#define MS_POSIXACL (1<<16) /* VFS does not apply the umask */ 111#define MS_POSIXACL (1<<16) /* VFS does not apply the umask */
108#define MS_ACTIVE (1<<30) 112#define MS_ACTIVE (1<<30)
109#define MS_NOUSER (1<<31) 113#define MS_NOUSER (1<<31)
@@ -264,6 +268,7 @@ typedef void (dio_iodone_t)(struct kiocb *iocb, loff_t offset,
264#define ATTR_ATTR_FLAG 1024 268#define ATTR_ATTR_FLAG 1024
265#define ATTR_KILL_SUID 2048 269#define ATTR_KILL_SUID 2048
266#define ATTR_KILL_SGID 4096 270#define ATTR_KILL_SGID 4096
271#define ATTR_FILE 8192
267 272
268/* 273/*
269 * This is the Inode Attributes structure, used for notify_change(). It 274 * This is the Inode Attributes structure, used for notify_change(). It
@@ -283,6 +288,13 @@ struct iattr {
283 struct timespec ia_atime; 288 struct timespec ia_atime;
284 struct timespec ia_mtime; 289 struct timespec ia_mtime;
285 struct timespec ia_ctime; 290 struct timespec ia_ctime;
291
292 /*
293 * Not an attribute, but an auxilary info for filesystems wanting to
294 * implement an ftruncate() like method. NOTE: filesystem should
295 * check for (ia_valid & ATTR_FILE), and not for (ia_file != NULL).
296 */
297 struct file *ia_file;
286}; 298};
287 299
288/* 300/*
@@ -1088,6 +1100,8 @@ int sync_inode(struct inode *inode, struct writeback_control *wbc);
1088 * @get_name: find the name for a given inode in a given directory 1100 * @get_name: find the name for a given inode in a given directory
1089 * @get_parent: find the parent of a given directory 1101 * @get_parent: find the parent of a given directory
1090 * @get_dentry: find a dentry for the inode given a file handle sub-fragment 1102 * @get_dentry: find a dentry for the inode given a file handle sub-fragment
1103 * @find_exported_dentry:
1104 * set by the exporting module to a standard helper function.
1091 * 1105 *
1092 * Description: 1106 * Description:
1093 * The export_operations structure provides a means for nfsd to communicate 1107 * The export_operations structure provides a means for nfsd to communicate
@@ -1239,7 +1253,12 @@ extern int unregister_filesystem(struct file_system_type *);
1239extern struct vfsmount *kern_mount(struct file_system_type *); 1253extern struct vfsmount *kern_mount(struct file_system_type *);
1240extern int may_umount_tree(struct vfsmount *); 1254extern int may_umount_tree(struct vfsmount *);
1241extern int may_umount(struct vfsmount *); 1255extern int may_umount(struct vfsmount *);
1256extern void umount_tree(struct vfsmount *, int, struct list_head *);
1257extern void release_mounts(struct list_head *);
1242extern long do_mount(char *, char *, char *, unsigned long, void *); 1258extern long do_mount(char *, char *, char *, unsigned long, void *);
1259extern struct vfsmount *copy_tree(struct vfsmount *, struct dentry *, int);
1260extern void mnt_set_mountpoint(struct vfsmount *, struct dentry *,
1261 struct vfsmount *);
1243 1262
1244extern int vfs_statfs(struct super_block *, struct kstatfs *); 1263extern int vfs_statfs(struct super_block *, struct kstatfs *);
1245 1264
@@ -1288,7 +1307,7 @@ static inline int break_lease(struct inode *inode, unsigned int mode)
1288 1307
1289/* fs/open.c */ 1308/* fs/open.c */
1290 1309
1291extern int do_truncate(struct dentry *, loff_t start); 1310extern int do_truncate(struct dentry *, loff_t start, struct file *filp);
1292extern long do_sys_open(const char __user *filename, int flags, int mode); 1311extern long do_sys_open(const char __user *filename, int flags, int mode);
1293extern struct file *filp_open(const char *, int, int); 1312extern struct file *filp_open(const char *, int, int);
1294extern struct file * dentry_open(struct dentry *, struct vfsmount *, int); 1313extern struct file * dentry_open(struct dentry *, struct vfsmount *, int);