]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
btrfs: fix missing snapshot drew unlock when root is dead during swap activation
authorFilipe Manana <fdmanana@suse.com>
Fri, 29 Nov 2024 13:33:03 +0000 (13:33 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Dec 2024 19:04:13 +0000 (20:04 +0100)
commit650214c925e8a90b6c03b3d37eff01ad06f83169
treef33da5b02d2f4957601edd8dce6fda924e3aea37
parent653b704e7db65e13ca066ff133f4e8bfcfb2499c
btrfs: fix missing snapshot drew unlock when root is dead during swap activation

[ Upstream commit 9c803c474c6c002d8ade68ebe99026cc39c37f85 ]

When activating a swap file we acquire the root's snapshot drew lock and
then check if the root is dead, failing and returning with -EPERM if it's
dead but without unlocking the root's snapshot lock. Fix this by adding
the missing unlock.

Fixes: 60021bd754c6 ("btrfs: prevent subvol with swapfile from being deleted")
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Reviewed-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/btrfs/inode.c