]> git.ipfire.org Git - thirdparty/kernel/stable.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)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 19 Mar 2026 15:15:28 +0000 (16:15 +0100)
commit35b0c8768e848e1b7e32052db36b5fa59b6a33a1
treee54669f002759b30332e20c2943319deadf1525e
parent41fb97353ff58fa4f31904c343fc8e3df2f7517d
btrfs: add missing RCU unlock in error path in try_release_subpage_extent_buffer()

commit b2840e33127ce0eea880504b7f133e780f567a9b upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/btrfs/extent_io.c