nilfs2: use pagevec_lookup_range_tag()
authorJan Kara <jack@suse.cz>
Thu, 16 Nov 2017 01:35:02 +0000 (17:35 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 16 Nov 2017 02:21:04 +0000 (18:21 -0800)
We want only pages from given range in nilfs_lookup_dirty_data_buffers().
Use pagevec_lookup_range_tag() instead of pagevec_lookup_tag() and
remove unnecessary code.

Link: http://lkml.kernel.org/r/20171009151359.31984-10-jack@suse.cz
Signed-off-by: Jan Kara <jack@suse.cz>
Reviewed-by: Daniel Jordan <daniel.m.jordan@oracle.com>
Acked-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Cc: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/nilfs2/segment.c

index 70ded52dc1dd02a963eae386b34c7fc849b3fa1c..68e5769cef3b039038b12b6a422ab2ab7a2e3764 100644 (file)
@@ -711,18 +711,14 @@ static size_t nilfs_lookup_dirty_data_buffers(struct inode *inode,
        pagevec_init(&pvec, 0);
  repeat:
        if (unlikely(index > last) ||
        pagevec_init(&pvec, 0);
  repeat:
        if (unlikely(index > last) ||
-           !pagevec_lookup_tag(&pvec, mapping, &index, PAGECACHE_TAG_DIRTY,
-                               min_t(pgoff_t, last - index,
-                                     PAGEVEC_SIZE - 1) + 1))
+           !pagevec_lookup_range_tag(&pvec, mapping, &index, last,
+                               PAGECACHE_TAG_DIRTY, PAGEVEC_SIZE))
                return ndirties;
 
        for (i = 0; i < pagevec_count(&pvec); i++) {
                struct buffer_head *bh, *head;
                struct page *page = pvec.pages[i];
 
                return ndirties;
 
        for (i = 0; i < pagevec_count(&pvec); i++) {
                struct buffer_head *bh, *head;
                struct page *page = pvec.pages[i];
 
-               if (unlikely(page->index > last))
-                       break;
-
                lock_page(page);
                if (!page_has_buffers(page))
                        create_empty_buffers(page, i_blocksize(inode), 0);
                lock_page(page);
                if (!page_has_buffers(page))
                        create_empty_buffers(page, i_blocksize(inode), 0);