]> git.baikalelectronics.ru Git - kernel.git/commit
btrfs: add assertion for empty list of transactions at late stage of umount
authorFilipe Manana <fdmanana@suse.com>
Mon, 14 Dec 2020 10:10:48 +0000 (10:10 +0000)
committerDavid Sterba <dsterba@suse.com>
Fri, 18 Dec 2020 14:00:06 +0000 (15:00 +0100)
commit94f4b72b80637e71099b4010434a4364923a2423
treee3e5ba46c24517c559b495bb29a43c123f7a2358
parent2afd0360217a4c14980ce15c6ddf3f6a720e2263
btrfs: add assertion for empty list of transactions at late stage of umount

Add an assertion to close_ctree(), after destroying all the work queues,
to verify we do not have any transaction still open or committing at that
at that point. If we have any, it means something is seriously wrong and
that can cause memory leaks and use-after-free problems. This is motivated
by the previous patches that fixed bugs where we ended up leaking an open
transaction after unmounting the filesystem.

Tested-by: Fabian Vogt <fvogt@suse.com>
Reviewed-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
fs/btrfs/disk-io.c