diff options
author | Matthew Wilcox <matthew.r.wilcox@intel.com> | 2016-03-06 23:27:26 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2016-06-30 23:30:52 -0400 |
commit | f4e6d844bdc142322905d137a9e44e07eee43c5c (patch) | |
tree | 3feaa4a6dd2e88ddaa8867d645f9ed2346e7b38b /Documentation/filesystems/Locking | |
parent | d4c91a8f7e5514a1e9cd37b453fda0dedfa8045d (diff) |
Remove last traces of ->sync_page
Commit 7eaceaccab5f removed ->sync_page, but a few mentions of it still
existed in documentation and comments,
Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'Documentation/filesystems/Locking')
-rw-r--r-- | Documentation/filesystems/Locking | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/Documentation/filesystems/Locking b/Documentation/filesystems/Locking index 75eea7ce3d7c..08086dc160d3 100644 --- a/Documentation/filesystems/Locking +++ b/Documentation/filesystems/Locking | |||
@@ -179,7 +179,6 @@ unlocks and drops the reference. | |||
179 | prototypes: | 179 | prototypes: |
180 | int (*writepage)(struct page *page, struct writeback_control *wbc); | 180 | int (*writepage)(struct page *page, struct writeback_control *wbc); |
181 | int (*readpage)(struct file *, struct page *); | 181 | int (*readpage)(struct file *, struct page *); |
182 | int (*sync_page)(struct page *); | ||
183 | int (*writepages)(struct address_space *, struct writeback_control *); | 182 | int (*writepages)(struct address_space *, struct writeback_control *); |
184 | int (*set_page_dirty)(struct page *page); | 183 | int (*set_page_dirty)(struct page *page); |
185 | int (*readpages)(struct file *filp, struct address_space *mapping, | 184 | int (*readpages)(struct file *filp, struct address_space *mapping, |
@@ -208,7 +207,6 @@ locking rules: | |||
208 | PageLocked(page) i_mutex | 207 | PageLocked(page) i_mutex |
209 | writepage: yes, unlocks (see below) | 208 | writepage: yes, unlocks (see below) |
210 | readpage: yes, unlocks | 209 | readpage: yes, unlocks |
211 | sync_page: maybe | ||
212 | writepages: | 210 | writepages: |
213 | set_page_dirty no | 211 | set_page_dirty no |
214 | readpages: | 212 | readpages: |
@@ -226,8 +224,8 @@ error_remove_page: yes | |||
226 | swap_activate: no | 224 | swap_activate: no |
227 | swap_deactivate: no | 225 | swap_deactivate: no |
228 | 226 | ||
229 | ->write_begin(), ->write_end(), ->sync_page() and ->readpage() | 227 | ->write_begin(), ->write_end() and ->readpage() may be called from |
230 | may be called from the request handler (/dev/loop). | 228 | the request handler (/dev/loop). |
231 | 229 | ||
232 | ->readpage() unlocks the page, either synchronously or via I/O | 230 | ->readpage() unlocks the page, either synchronously or via I/O |
233 | completion. | 231 | completion. |
@@ -283,11 +281,6 @@ will leave the page itself marked clean but it will be tagged as dirty in the | |||
283 | radix tree. This incoherency can lead to all sorts of hard-to-debug problems | 281 | radix tree. This incoherency can lead to all sorts of hard-to-debug problems |
284 | in the filesystem like having dirty inodes at umount and losing written data. | 282 | in the filesystem like having dirty inodes at umount and losing written data. |
285 | 283 | ||
286 | ->sync_page() locking rules are not well-defined - usually it is called | ||
287 | with lock on page, but that is not guaranteed. Considering the currently | ||
288 | existing instances of this method ->sync_page() itself doesn't look | ||
289 | well-defined... | ||
290 | |||
291 | ->writepages() is used for periodic writeback and for syscall-initiated | 284 | ->writepages() is used for periodic writeback and for syscall-initiated |
292 | sync operations. The address_space should start I/O against at least | 285 | sync operations. The address_space should start I/O against at least |
293 | *nr_to_write pages. *nr_to_write must be decremented for each page which is | 286 | *nr_to_write pages. *nr_to_write must be decremented for each page which is |