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.h29
1 files changed, 11 insertions, 18 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 3b534e527e09..ede84fa7da5d 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -729,8 +729,8 @@ struct inode {
729 struct timespec i_atime; 729 struct timespec i_atime;
730 struct timespec i_mtime; 730 struct timespec i_mtime;
731 struct timespec i_ctime; 731 struct timespec i_ctime;
732 unsigned int i_blkbits;
733 blkcnt_t i_blocks; 732 blkcnt_t i_blocks;
733 unsigned int i_blkbits;
734 unsigned short i_bytes; 734 unsigned short i_bytes;
735 umode_t i_mode; 735 umode_t i_mode;
736 spinlock_t i_lock; /* i_blocks, i_bytes, maybe i_size */ 736 spinlock_t i_lock; /* i_blocks, i_bytes, maybe i_size */
@@ -751,13 +751,12 @@ struct inode {
751 struct block_device *i_bdev; 751 struct block_device *i_bdev;
752 struct cdev *i_cdev; 752 struct cdev *i_cdev;
753 }; 753 };
754 int i_cindex;
755 754
756 __u32 i_generation; 755 __u32 i_generation;
757 756
758#ifdef CONFIG_DNOTIFY 757#ifdef CONFIG_FSNOTIFY
759 unsigned long i_dnotify_mask; /* Directory notify events */ 758 __u32 i_fsnotify_mask; /* all events this inode cares about */
760 struct dnotify_struct *i_dnotify; /* for directory notifications */ 759 struct hlist_head i_fsnotify_mark_entries; /* fsnotify mark entries */
761#endif 760#endif
762 761
763#ifdef CONFIG_INOTIFY 762#ifdef CONFIG_INOTIFY
@@ -1321,7 +1320,7 @@ struct super_block {
1321 struct rw_semaphore s_umount; 1320 struct rw_semaphore s_umount;
1322 struct mutex s_lock; 1321 struct mutex s_lock;
1323 int s_count; 1322 int s_count;
1324 int s_need_sync_fs; 1323 int s_need_sync;
1325 atomic_t s_active; 1324 atomic_t s_active;
1326#ifdef CONFIG_SECURITY 1325#ifdef CONFIG_SECURITY
1327 void *s_security; 1326 void *s_security;
@@ -1372,11 +1371,6 @@ struct super_block {
1372 * generic_show_options() 1371 * generic_show_options()
1373 */ 1372 */
1374 char *s_options; 1373 char *s_options;
1375
1376 /*
1377 * storage for asynchronous operations
1378 */
1379 struct list_head s_async_list;
1380}; 1374};
1381 1375
1382extern struct timespec current_fs_time(struct super_block *sb); 1376extern struct timespec current_fs_time(struct super_block *sb);
@@ -1800,7 +1794,7 @@ extern struct vfsmount *kern_mount_data(struct file_system_type *, void *data);
1800extern int may_umount_tree(struct vfsmount *); 1794extern int may_umount_tree(struct vfsmount *);
1801extern int may_umount(struct vfsmount *); 1795extern int may_umount(struct vfsmount *);
1802extern long do_mount(char *, char *, char *, unsigned long, void *); 1796extern long do_mount(char *, char *, char *, unsigned long, void *);
1803extern struct vfsmount *collect_mounts(struct vfsmount *, struct dentry *); 1797extern struct vfsmount *collect_mounts(struct path *);
1804extern void drop_collected_mounts(struct vfsmount *); 1798extern void drop_collected_mounts(struct vfsmount *);
1805 1799
1806extern int vfs_statfs(struct dentry *, struct kstatfs *); 1800extern int vfs_statfs(struct dentry *, struct kstatfs *);
@@ -1947,8 +1941,6 @@ extern struct super_block *freeze_bdev(struct block_device *);
1947extern void emergency_thaw_all(void); 1941extern void emergency_thaw_all(void);
1948extern int thaw_bdev(struct block_device *bdev, struct super_block *sb); 1942extern int thaw_bdev(struct block_device *bdev, struct super_block *sb);
1949extern int fsync_bdev(struct block_device *); 1943extern int fsync_bdev(struct block_device *);
1950extern int fsync_super(struct super_block *);
1951extern int fsync_no_super(struct block_device *);
1952#else 1944#else
1953static inline void bd_forget(struct inode *inode) {} 1945static inline void bd_forget(struct inode *inode) {}
1954static inline int sync_blockdev(struct block_device *bdev) { return 0; } 1946static inline int sync_blockdev(struct block_device *bdev) { return 0; }
@@ -1964,6 +1956,7 @@ static inline int thaw_bdev(struct block_device *bdev, struct super_block *sb)
1964 return 0; 1956 return 0;
1965} 1957}
1966#endif 1958#endif
1959extern int sync_filesystem(struct super_block *);
1967extern const struct file_operations def_blk_fops; 1960extern const struct file_operations def_blk_fops;
1968extern const struct file_operations def_chr_fops; 1961extern const struct file_operations def_chr_fops;
1969extern const struct file_operations bad_sock_fops; 1962extern const struct file_operations bad_sock_fops;
@@ -2082,12 +2075,8 @@ extern int filemap_fdatawrite_range(struct address_space *mapping,
2082 2075
2083extern int vfs_fsync(struct file *file, struct dentry *dentry, int datasync); 2076extern int vfs_fsync(struct file *file, struct dentry *dentry, int datasync);
2084extern void sync_supers(void); 2077extern void sync_supers(void);
2085extern void sync_filesystems(int wait);
2086extern void __fsync_super(struct super_block *sb);
2087extern void emergency_sync(void); 2078extern void emergency_sync(void);
2088extern void emergency_remount(void); 2079extern void emergency_remount(void);
2089extern int do_remount_sb(struct super_block *sb, int flags,
2090 void *data, int force);
2091#ifdef CONFIG_BLOCK 2080#ifdef CONFIG_BLOCK
2092extern sector_t bmap(struct inode *, sector_t); 2081extern sector_t bmap(struct inode *, sector_t);
2093#endif 2082#endif
@@ -2205,6 +2194,8 @@ extern int generic_segment_checks(const struct iovec *iov,
2205/* fs/splice.c */ 2194/* fs/splice.c */
2206extern ssize_t generic_file_splice_read(struct file *, loff_t *, 2195extern ssize_t generic_file_splice_read(struct file *, loff_t *,
2207 struct pipe_inode_info *, size_t, unsigned int); 2196 struct pipe_inode_info *, size_t, unsigned int);
2197extern ssize_t default_file_splice_read(struct file *, loff_t *,
2198 struct pipe_inode_info *, size_t, unsigned int);
2208extern ssize_t generic_file_splice_write(struct pipe_inode_info *, 2199extern ssize_t generic_file_splice_write(struct pipe_inode_info *,
2209 struct file *, loff_t *, size_t, unsigned int); 2200 struct file *, loff_t *, size_t, unsigned int);
2210extern ssize_t generic_splice_sendpage(struct pipe_inode_info *pipe, 2201extern ssize_t generic_splice_sendpage(struct pipe_inode_info *pipe,
@@ -2354,6 +2345,8 @@ extern void simple_release_fs(struct vfsmount **mount, int *count);
2354extern ssize_t simple_read_from_buffer(void __user *to, size_t count, 2345extern ssize_t simple_read_from_buffer(void __user *to, size_t count,
2355 loff_t *ppos, const void *from, size_t available); 2346 loff_t *ppos, const void *from, size_t available);
2356 2347
2348extern int simple_fsync(struct file *, struct dentry *, int);
2349
2357#ifdef CONFIG_MIGRATION 2350#ifdef CONFIG_MIGRATION
2358extern int buffer_migrate_page(struct address_space *, 2351extern int buffer_migrate_page(struct address_space *,
2359 struct page *, struct page *); 2352 struct page *, struct page *);