]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
mm: drop "wait" parameter from write_one_page()
authorJeff Layton <jlayton@redhat.com>
Wed, 5 Jul 2017 19:26:48 +0000 (15:26 -0400)
committerJeff Layton <jlayton@redhat.com>
Wed, 5 Jul 2017 22:44:22 +0000 (18:44 -0400)
The callers all set it to 1.

Also, make it clear that this function will not set any sort of AS_*
error, and that the caller must do so if necessary.  No existing caller
uses this on normal files, so none of them need it.

Also, add __must_check here since, in general, the callers need to handle
an error here in some fashion.

Link: http://lkml.kernel.org/r/20170525103303.6524-1-jlayton@redhat.com
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Matthew Wilcox <mawilcox@microsoft.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
fs/exofs/dir.c
fs/ext2/dir.c
fs/jfs/jfs_metapage.c
fs/minix/dir.c
fs/sysv/dir.c
fs/ufs/dir.c
include/linux/mm.h
mm/page-writeback.c

index 8eeb694332fe811e820ed342ebbecc25bb678a1f..98233a97b7b87fb43ccb2584f35e38309be978b7 100644 (file)
@@ -72,7 +72,7 @@ static int exofs_commit_chunk(struct page *page, loff_t pos, unsigned len)
        set_page_dirty(page);
 
        if (IS_DIRSYNC(dir))
-               err = write_one_page(page, 1);
+               err = write_one_page(page);
        else
                unlock_page(page);
 
index d9650c9508e4de549788e85210039b36032ec5a0..e2709695b1772bb6684b697dd8965366d7698fe0 100644 (file)
@@ -100,7 +100,7 @@ static int ext2_commit_chunk(struct page *page, loff_t pos, unsigned len)
        }
 
        if (IS_DIRSYNC(dir)) {
-               err = write_one_page(page, 1);
+               err = write_one_page(page);
                if (!err)
                        err = sync_inode_metadata(dir, 1);
        } else {
index 489aaa1403e57c0c0886ba2f127bc16dc0dc2274..744fa3c079e69823ec5ae526ab72ab93a80a4859 100644 (file)
@@ -711,7 +711,7 @@ void force_metapage(struct metapage *mp)
        get_page(page);
        lock_page(page);
        set_page_dirty(page);
-       write_one_page(page, 1);
+       write_one_page(page);
        clear_bit(META_forcewrite, &mp->flag);
        put_page(page);
 }
@@ -756,7 +756,7 @@ void release_metapage(struct metapage * mp)
                set_page_dirty(page);
                if (test_bit(META_sync, &mp->flag)) {
                        clear_bit(META_sync, &mp->flag);
-                       write_one_page(page, 1);
+                       write_one_page(page);
                        lock_page(page); /* write_one_page unlocks the page */
                }
        } else if (mp->lsn)     /* discard_metapage doesn't remove it */
index 7edc9b3957009ee1c3bbbf3193bcb4b54395d499..baa9721f1299c2306e2e614a6dea37cf8bc2ff70 100644 (file)
@@ -57,7 +57,7 @@ static int dir_commit_chunk(struct page *page, loff_t pos, unsigned len)
                mark_inode_dirty(dir);
        }
        if (IS_DIRSYNC(dir))
-               err = write_one_page(page, 1);
+               err = write_one_page(page);
        else
                unlock_page(page);
        return err;
index 5bdae85ceef7d6ae9e7c560cb23e9bb1c09ea098..f5191cb2c947a3abdc4e77d0ee84ade3a15d133c 100644 (file)
@@ -45,7 +45,7 @@ static int dir_commit_chunk(struct page *page, loff_t pos, unsigned len)
                mark_inode_dirty(dir);
        }
        if (IS_DIRSYNC(dir))
-               err = write_one_page(page, 1);
+               err = write_one_page(page);
        else
                unlock_page(page);
        return err;
index de01b8f2aa78b00cdb4360e142b24abc83fdae72..48609f1d95803742656b74933fb6490548144354 100644 (file)
@@ -53,7 +53,7 @@ static int ufs_commit_chunk(struct page *page, loff_t pos, unsigned len)
                mark_inode_dirty(dir);
        }
        if (IS_DIRSYNC(dir))
-               err = write_one_page(page, 1);
+               err = write_one_page(page);
        else
                unlock_page(page);
        return err;
index 7cb17c6b97de38b1e8d55ca6d8c90b8415a9c3fa..ca9c8b27cecb63cfa3d26050f328995d3f66c7da 100644 (file)
@@ -2199,7 +2199,7 @@ extern void filemap_map_pages(struct vm_fault *vmf,
 extern int filemap_page_mkwrite(struct vm_fault *vmf);
 
 /* mm/page-writeback.c */
-int write_one_page(struct page *page, int wait);
+int __must_check write_one_page(struct page *page);
 void task_dirty_inc(struct task_struct *tsk);
 
 /* readahead.c */
index 143c1c25d680c272eefd1e2ee7f58a0043d4f8b1..b901fe52b153020be937f97b4d31498c1768a4a9 100644 (file)
@@ -2366,15 +2366,16 @@ int do_writepages(struct address_space *mapping, struct writeback_control *wbc)
 }
 
 /**
- * write_one_page - write out a single page and optionally wait on I/O
+ * write_one_page - write out a single page and wait on I/O
  * @page: the page to write
- * @wait: if true, wait on writeout
  *
  * The page must be locked by the caller and will be unlocked upon return.
  *
- * write_one_page() returns a negative error code if I/O failed.
+ * write_one_page() returns a negative error code if I/O failed. Note that
+ * the address_space is not marked for error. The caller must do this if
+ * needed.
  */
-int write_one_page(struct page *page, int wait)
+int write_one_page(struct page *page)
 {
        struct address_space *mapping = page->mapping;
        int ret = 0;
@@ -2385,13 +2386,12 @@ int write_one_page(struct page *page, int wait)
 
        BUG_ON(!PageLocked(page));
 
-       if (wait)
-               wait_on_page_writeback(page);
+       wait_on_page_writeback(page);
 
        if (clear_page_dirty_for_io(page)) {
                get_page(page);
                ret = mapping->a_ops->writepage(page, &wbc);
-               if (ret == 0 && wait) {
+               if (ret == 0) {
                        wait_on_page_writeback(page);
                        if (PageError(page))
                                ret = -EIO;