[PATCH][FOCAL] Revert "UBUNTU: SAUCE: ext4: fix directory index node split corruption"

Danilo Krummrich danilokrummrich at dk-develop.de
Tue Sep 7 00:38:22 UTC 2021


This reverts commit d94ce655c62e06461879548962bd3e4000190c97.

Already fixed by commit 93ad4c3f59c6
("ext4: fix potential htree corruption when growing large_dir directories")

BugLink: https://bugs.launchpad.net/bugs/1941798

Signed-off-by: Danilo Krummrich <danilokrummrich at dk-develop.de>
---
 fs/ext4/namei.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/fs/ext4/namei.c b/fs/ext4/namei.c
index 37a8cd90d27f..9905720df924 100644
--- a/fs/ext4/namei.c
+++ b/fs/ext4/namei.c
@@ -2432,15 +2432,13 @@ static int ext4_dx_add_entry(handle_t *handle, struct ext4_filename *fname,
 			goto journal_error;
 		}
 	}
-	if (!restart) {
-		de = do_split(handle, dir, &bh, frame, &fname->hinfo);
-		if (IS_ERR(de)) {
-			err = PTR_ERR(de);
-			goto cleanup;
-		}
-		err = add_dirent_to_buf(handle, fname, dir, inode, de, bh);
+	de = do_split(handle, dir, &bh, frame, &fname->hinfo);
+	if (IS_ERR(de)) {
+		err = PTR_ERR(de);
 		goto cleanup;
 	}
+	err = add_dirent_to_buf(handle, fname, dir, inode, de, bh);
+	goto cleanup;
 
 journal_error:
 	ext4_std_error(dir->i_sb, err); /* this is a no-op if err == 0 */
-- 
2.33.0




More information about the kernel-team mailing list