]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: remove wait_ordered_range in btrfs_evict_inode
authorLiu Bo <bo.liu@linux.alibaba.com>
Tue, 11 Sep 2018 22:06:22 +0000 (06:06 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 15 Oct 2018 15:23:31 +0000 (17:23 +0200)
commitf4647bc7abcd853bda9e76610c2e453c2d78ef8b
treeeaf4b9b6dbe4d2400fe5dd8329ae9d3f2d88ea30
parent834e3a82b846aa8afb12852131c0a203abfa862e
Btrfs: remove wait_ordered_range in btrfs_evict_inode

When we delete an inode,

btrfs_evict_inode() {
    truncate_inode_pages_final()
        truncate_inode_pages_range()
            lock_page()
            truncate_cleanup_page()
                 btrfs_invalidatepage()
                      wait_on_page_writeback
                           btrfs_lookup_ordered_range()
                 cancel_dirty_page()
           unlock_page()
     ...
     btrfs_wait_ordered_range()
     ...

As VFS has called ->invalidatepage() to get all ordered extents done (if
there are any) and truncated all page cache pages (no dirty pages to
writeback after this step), wait_ordered_range() is just a noop.

Signed-off-by: Liu Bo <bo.liu@linux.alibaba.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/inode.c