mirror of https://gitee.com/openkylin/linux.git
btrfs: make btrfs_writepage_endio_finish_ordered btrfs_inode-centric
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Reviewed-by: Josef Bacik <josef@toxicpanda.com> Signed-off-by: Nikolay Borisov <nborisov@suse.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
53ac7ead24
commit
3347c48f27
|
@ -2773,19 +2773,19 @@ static void finish_ordered_fn(struct btrfs_work *work)
|
|||
void btrfs_writepage_endio_finish_ordered(struct page *page, u64 start,
|
||||
u64 end, int uptodate)
|
||||
{
|
||||
struct inode *inode = page->mapping->host;
|
||||
struct btrfs_fs_info *fs_info = btrfs_sb(inode->i_sb);
|
||||
struct btrfs_inode *inode = BTRFS_I(page->mapping->host);
|
||||
struct btrfs_fs_info *fs_info = inode->root->fs_info;
|
||||
struct btrfs_ordered_extent *ordered_extent = NULL;
|
||||
struct btrfs_workqueue *wq;
|
||||
|
||||
trace_btrfs_writepage_end_io_hook(page, start, end, uptodate);
|
||||
|
||||
ClearPagePrivate2(page);
|
||||
if (!btrfs_dec_test_ordered_pending(BTRFS_I(inode), &ordered_extent,
|
||||
start, end - start + 1, uptodate))
|
||||
if (!btrfs_dec_test_ordered_pending(inode, &ordered_extent, start,
|
||||
end - start + 1, uptodate))
|
||||
return;
|
||||
|
||||
if (btrfs_is_free_space_inode(BTRFS_I(inode)))
|
||||
if (btrfs_is_free_space_inode(inode))
|
||||
wq = fs_info->endio_freespace_worker;
|
||||
else
|
||||
wq = fs_info->endio_write_workers;
|
||||
|
|
Loading…
Reference in New Issue