btrfs: support subpage in try_release_extent_buffer()
authorQu Wenruo <wqu@suse.com>
Tue, 26 Jan 2021 08:33:56 +0000 (16:33 +0800)
committerDavid Sterba <dsterba@suse.com>
Mon, 8 Feb 2021 21:59:02 +0000 (22:59 +0100)
commitd1e86e3fc34f24b090d86949ad7f3db7a4c1861f
treea8522f8150feff5233f72a993995ac7599bf53ee
parent92d83e94365706fa3250b0e43bdab5995ac03046
btrfs: support subpage in try_release_extent_buffer()

Unlike the original try_release_extent_buffer(),
try_release_subpage_extent_buffer() will iterate through all the ebs in
the page, and try to release each.

We can release the full page only after there's no private attached,
which means all ebs of that page have been released as well.

Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Qu Wenruo <wqu@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/extent_io.c