ext4: find old entry again if failed to rename whiteout
If we failed to add new entry on rename whiteout, we cannot reset the old->de entry directly, because the old->de could have moved from under us during make indexed dir. So find the old entry again before reset is needed, otherwise it may corrupt the filesystem as below. /dev/sda: Entry '00000001' in ??? (12) has deleted/unused inode 15. CLEARED. /dev/sda: Unattached inode 75 /dev/sda: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. Fixes: 6b4b8e6b ("ext4: fix bug for rename with RENAME_WHITEOUT") Cc: stable@vger.kernel.org Signed-off-by:zhangyi (F) <yi.zhang@huawei.com> Link: https://lore.kernel.org/r/20210303131703.330415-1-yi.zhang@huawei.com Signed-off-by:
Theodore Ts'o <tytso@mit.edu>
parent
f053cf7a
-
mentioned in commit 1b46d1d9
-
mentioned in commit 5cdacb41
-
mentioned in commit 1523c07d
-
mentioned in commit 5acfb54a
-
mentioned in commit 5f669c91
-
mentioned in commit 474aab44
-
mentioned in commit 258db8e6
-
mentioned in commit c9f62c8b
-
mentioned in commit e49ddab1
-
mentioned in commit a6ac7e49
-
mentioned in commit 8706c972
-
mentioned in commit aee90b02
Please register or sign in to comment