]> git.baikalelectronics.ru Git - kernel.git/commit
ext4: Fix possible corruption when moving a directory
authorJan Kara <jack@suse.cz>
Thu, 26 Jan 2023 11:22:21 +0000 (12:22 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 Mar 2023 07:50:21 +0000 (08:50 +0100)
commitff6b3af767a14a802bf51a1e97a27d0f0db43872
treed088ab94bc86ee4d97cdb238c48b1ed41776e838
parent1c30279f8306912b3045e389d2e0708b705242eb
ext4: Fix possible corruption when moving a directory

[ Upstream commit 9561e8b4f5bba08f2f05307910aa819fda55001c ]

When we are renaming a directory to a different directory, we need to
update '..' entry in the moved directory. However nothing prevents moved
directory from being modified and even converted from the inline format
to the normal format. When such race happens the rename code gets
confused and we crash. Fix the problem by locking the moved directory.

CC: stable@vger.kernel.org
Fixes: 4f33f5947495 ("ext4: let ext4_rename handle inline dir")
Signed-off-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20230126112221.11866-1-jack@suse.cz
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/ext4/namei.c