]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
btrfs: add missing RCU unlock in error path in try_release_subpage_extent_buffer()
authorBart Van Assche <bvanassche@acm.org>
Wed, 25 Feb 2026 19:59:58 +0000 (11:59 -0800)
committerDavid Sterba <dsterba@suse.com>
Tue, 3 Mar 2026 16:03:51 +0000 (17:03 +0100)
commitb2840e33127ce0eea880504b7f133e780f567a9b
tree20666fc8a32500b580a2c196ea2ad5e954b015c7
parent5131fa077f9bb386a1b901bf5b247041f0ec8f80
btrfs: add missing RCU unlock in error path in try_release_subpage_extent_buffer()

Call rcu_read_lock() before exiting the loop in
try_release_subpage_extent_buffer() because there is a rcu_read_unlock()
call past the loop.

This has been detected by the Clang thread-safety analyzer.

Fixes: ad580dfa388f ("btrfs: fix subpage deadlock in try_release_subpage_extent_buffer()")
CC: stable@vger.kernel.org # 6.18+
Reviewed-by: Qu Wenruo <wqu@suse.com>
Reviewed-by: Boris Burkov <boris@bur.io>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/extent_io.c