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.h17
1 files changed, 13 insertions, 4 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 9c2ac5c0ef5c..49d8eb7a71be 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -886,6 +886,12 @@ static inline int file_check_writeable(struct file *filp)
886#define FL_SLEEP 128 /* A blocking lock */ 886#define FL_SLEEP 128 /* A blocking lock */
887 887
888/* 888/*
889 * Special return value from posix_lock_file() and vfs_lock_file() for
890 * asynchronous locking.
891 */
892#define FILE_LOCK_DEFERRED 1
893
894/*
889 * The POSIX file lock owner is determined by 895 * The POSIX file lock owner is determined by
890 * the "struct files_struct" in the thread group 896 * the "struct files_struct" in the thread group
891 * (or NULL for no owner - BSD locks). 897 * (or NULL for no owner - BSD locks).
@@ -1025,6 +1031,7 @@ extern int send_sigurg(struct fown_struct *fown);
1025extern struct list_head super_blocks; 1031extern struct list_head super_blocks;
1026extern spinlock_t sb_lock; 1032extern spinlock_t sb_lock;
1027 1033
1034#define sb_entry(list) list_entry((list), struct super_block, s_list)
1028#define S_BIAS (1<<30) 1035#define S_BIAS (1<<30)
1029struct super_block { 1036struct super_block {
1030 struct list_head s_list; /* Keep this first */ 1037 struct list_head s_list; /* Keep this first */
@@ -1058,6 +1065,9 @@ struct super_block {
1058 struct list_head s_more_io; /* parked for more writeback */ 1065 struct list_head s_more_io; /* parked for more writeback */
1059 struct hlist_head s_anon; /* anonymous dentries for (nfs) exporting */ 1066 struct hlist_head s_anon; /* anonymous dentries for (nfs) exporting */
1060 struct list_head s_files; 1067 struct list_head s_files;
1068 /* s_dentry_lru and s_nr_dentry_unused are protected by dcache_lock */
1069 struct list_head s_dentry_lru; /* unused dentry lru */
1070 int s_nr_dentry_unused; /* # of dentry on lru */
1061 1071
1062 struct block_device *s_bdev; 1072 struct block_device *s_bdev;
1063 struct mtd_info *s_mtd; 1073 struct mtd_info *s_mtd;
@@ -1773,8 +1783,9 @@ static inline void allow_write_access(struct file *file)
1773 atomic_inc(&file->f_path.dentry->d_inode->i_writecount); 1783 atomic_inc(&file->f_path.dentry->d_inode->i_writecount);
1774} 1784}
1775extern int do_pipe(int *); 1785extern int do_pipe(int *);
1776extern struct file *create_read_pipe(struct file *f); 1786extern int do_pipe_flags(int *, int);
1777extern struct file *create_write_pipe(void); 1787extern struct file *create_read_pipe(struct file *f, int flags);
1788extern struct file *create_write_pipe(int flags);
1778extern void free_write_pipe(struct file *); 1789extern void free_write_pipe(struct file *);
1779 1790
1780extern struct file *do_filp_open(int dfd, const char *pathname, 1791extern struct file *do_filp_open(int dfd, const char *pathname,
@@ -2006,8 +2017,6 @@ extern void simple_release_fs(struct vfsmount **mount, int *count);
2006 2017
2007extern ssize_t simple_read_from_buffer(void __user *to, size_t count, 2018extern ssize_t simple_read_from_buffer(void __user *to, size_t count,
2008 loff_t *ppos, const void *from, size_t available); 2019 loff_t *ppos, const void *from, size_t available);
2009extern ssize_t memory_read_from_buffer(void *to, size_t count, loff_t *ppos,
2010 const void *from, size_t available);
2011 2020
2012#ifdef CONFIG_MIGRATION 2021#ifdef CONFIG_MIGRATION
2013extern int buffer_migrate_page(struct address_space *, 2022extern int buffer_migrate_page(struct address_space *,