From: Christoph Hellwig Date: Thu, 12 Jul 2018 05:25:58 +0000 (-0700) Subject: xfs: do not set the page uptodate in xfs_writepage_map X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=91cdfd1761659f338e673aca72af3d0d50b88847;p=openwrt%2Fstaging%2Fblogic.git xfs: do not set the page uptodate in xfs_writepage_map We already track the page uptodate status based on the buffer uptodate status, which is updated whenever reading or zeroing blocks. This code has been there since commit a ptool commit in 2002, which claims to: "merge" the 2.4 fsx fix for block size < page size to 2.5. This needed major changes to actually fit. and isn't present in other writepage implementations. Signed-off-by: Christoph Hellwig Reviewed-by: Brian Foster Reviewed-by: Darrick J. Wong Signed-off-by: Darrick J. Wong --- diff --git a/fs/xfs/xfs_aops.c b/fs/xfs/xfs_aops.c index 5c549e983d69..df80a383ccd8 100644 --- a/fs/xfs/xfs_aops.c +++ b/fs/xfs/xfs_aops.c @@ -849,7 +849,6 @@ xfs_writepage_map( uint64_t offset; int error = 0; int count = 0; - int uptodate = 1; unsigned int new_type; bh = head = page_buffers(page); @@ -857,8 +856,6 @@ xfs_writepage_map( do { if (offset >= end_offset) break; - if (!buffer_uptodate(bh)) - uptodate = 0; /* * set_page_dirty dirties all buffers in a page, independent @@ -922,9 +919,6 @@ xfs_writepage_map( } while (offset += len, ((bh = bh->b_this_page) != head)); - if (uptodate && bh == head) - SetPageUptodate(page); - ASSERT(wpc->ioend || list_empty(&submit_list)); out: