diff options
Diffstat (limited to 'include/linux/writeback.h')
| -rw-r--r-- | include/linux/writeback.h | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/include/linux/writeback.h b/include/linux/writeback.h index 3224820c8514..d347632f1861 100644 --- a/include/linux/writeback.h +++ b/include/linux/writeback.h | |||
| @@ -14,17 +14,6 @@ extern struct list_head inode_in_use; | |||
| 14 | extern struct list_head inode_unused; | 14 | extern struct list_head inode_unused; |
| 15 | 15 | ||
| 16 | /* | 16 | /* |
| 17 | * Yes, writeback.h requires sched.h | ||
| 18 | * No, sched.h is not included from here. | ||
| 19 | */ | ||
| 20 | static inline int task_is_pdflush(struct task_struct *task) | ||
| 21 | { | ||
| 22 | return task->flags & PF_FLUSHER; | ||
| 23 | } | ||
| 24 | |||
| 25 | #define current_is_pdflush() task_is_pdflush(current) | ||
| 26 | |||
| 27 | /* | ||
| 28 | * fs/fs-writeback.c | 17 | * fs/fs-writeback.c |
| 29 | */ | 18 | */ |
| 30 | enum writeback_sync_modes { | 19 | enum writeback_sync_modes { |
| @@ -40,6 +29,8 @@ enum writeback_sync_modes { | |||
| 40 | struct writeback_control { | 29 | struct writeback_control { |
| 41 | struct backing_dev_info *bdi; /* If !NULL, only write back this | 30 | struct backing_dev_info *bdi; /* If !NULL, only write back this |
| 42 | queue */ | 31 | queue */ |
| 32 | struct super_block *sb; /* if !NULL, only write inodes from | ||
| 33 | this super_block */ | ||
| 43 | enum writeback_sync_modes sync_mode; | 34 | enum writeback_sync_modes sync_mode; |
| 44 | unsigned long *older_than_this; /* If !NULL, only write back inodes | 35 | unsigned long *older_than_this; /* If !NULL, only write back inodes |
| 45 | older than this */ | 36 | older than this */ |
| @@ -76,9 +67,13 @@ struct writeback_control { | |||
| 76 | /* | 67 | /* |
| 77 | * fs/fs-writeback.c | 68 | * fs/fs-writeback.c |
| 78 | */ | 69 | */ |
| 79 | void writeback_inodes(struct writeback_control *wbc); | 70 | struct bdi_writeback; |
| 80 | int inode_wait(void *); | 71 | int inode_wait(void *); |
| 81 | void sync_inodes_sb(struct super_block *, int wait); | 72 | long writeback_inodes_sb(struct super_block *); |
| 73 | long sync_inodes_sb(struct super_block *); | ||
| 74 | void writeback_inodes_wbc(struct writeback_control *wbc); | ||
| 75 | long wb_do_writeback(struct bdi_writeback *wb, int force_wait); | ||
| 76 | void wakeup_flusher_threads(long nr_pages); | ||
| 82 | 77 | ||
| 83 | /* writeback.h requires fs.h; it, too, is not included from here. */ | 78 | /* writeback.h requires fs.h; it, too, is not included from here. */ |
| 84 | static inline void wait_on_inode(struct inode *inode) | 79 | static inline void wait_on_inode(struct inode *inode) |
| @@ -98,7 +93,6 @@ static inline void inode_sync_wait(struct inode *inode) | |||
| 98 | /* | 93 | /* |
| 99 | * mm/page-writeback.c | 94 | * mm/page-writeback.c |
| 100 | */ | 95 | */ |
| 101 | int wakeup_pdflush(long nr_pages); | ||
| 102 | void laptop_io_completion(void); | 96 | void laptop_io_completion(void); |
| 103 | void laptop_sync_completion(void); | 97 | void laptop_sync_completion(void); |
| 104 | void throttle_vm_writeout(gfp_t gfp_mask); | 98 | void throttle_vm_writeout(gfp_t gfp_mask); |
| @@ -150,17 +144,12 @@ balance_dirty_pages_ratelimited(struct address_space *mapping) | |||
| 150 | typedef int (*writepage_t)(struct page *page, struct writeback_control *wbc, | 144 | typedef int (*writepage_t)(struct page *page, struct writeback_control *wbc, |
| 151 | void *data); | 145 | void *data); |
| 152 | 146 | ||
| 153 | int pdflush_operation(void (*fn)(unsigned long), unsigned long arg0); | ||
| 154 | int generic_writepages(struct address_space *mapping, | 147 | int generic_writepages(struct address_space *mapping, |
| 155 | struct writeback_control *wbc); | 148 | struct writeback_control *wbc); |
| 156 | int write_cache_pages(struct address_space *mapping, | 149 | int write_cache_pages(struct address_space *mapping, |
| 157 | struct writeback_control *wbc, writepage_t writepage, | 150 | struct writeback_control *wbc, writepage_t writepage, |
| 158 | void *data); | 151 | void *data); |
| 159 | int do_writepages(struct address_space *mapping, struct writeback_control *wbc); | 152 | int do_writepages(struct address_space *mapping, struct writeback_control *wbc); |
| 160 | int sync_page_range(struct inode *inode, struct address_space *mapping, | ||
| 161 | loff_t pos, loff_t count); | ||
| 162 | int sync_page_range_nolock(struct inode *inode, struct address_space *mapping, | ||
| 163 | loff_t pos, loff_t count); | ||
| 164 | void set_page_dirty_balance(struct page *page, int page_mkwrite); | 153 | void set_page_dirty_balance(struct page *page, int page_mkwrite); |
| 165 | void writeback_set_ratelimit(void); | 154 | void writeback_set_ratelimit(void); |
| 166 | 155 | ||
