ext4: don't allow overlapping system zones
authorJan Kara <jack@suse.cz>
Tue, 28 Jul 2020 13:04:33 +0000 (15:04 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 26 Aug 2020 09:49:08 +0000 (11:49 +0200)
commit20070b188bf4df681f86707c8b631cf744118f1e
tree7812e902b77949a0dadf152bd957b25c01d9b734
parent480a5124cd0e0c7aa794056401f66ce1dbb4269b
ext4: don't allow overlapping system zones

[ Upstream commit bf9a379d0980e7413d94cb18dac73db2bfc5f470 ]

Currently, add_system_zone() just silently merges two added system zones
that overlap. However the overlap should not happen and it generally
suggests that some unrelated metadata overlap which indicates the fs is
corrupted. We should have caught such problems earlier (e.g. in
ext4_check_descriptors()) but add this check as another line of defense.
In later patch we also use this for stricter checking of journal inode
extent tree.

Reviewed-by: Lukas Czerner <lczerner@redhat.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20200728130437.7804-3-jack@suse.cz
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/ext4/block_validity.c