summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--e2fsck/pass2.c2
-rw-r--r--tests/f_uninit_inode_past_unused/expect.13
-rw-r--r--tests/f_uninit_restart_fsck/expect.14
-rw-r--r--tests/f_unused_itable/expect.14
4 files changed, 2 insertions, 11 deletions
diff --git a/e2fsck/pass2.c b/e2fsck/pass2.c
index cb80d333..3b473af0 100644
--- a/e2fsck/pass2.c
+++ b/e2fsck/pass2.c
@@ -1539,6 +1539,7 @@ skip_checksum:
&cd->pctx)){
ext2fs_bg_flags_clear(fs, group,
EXT2_BG_INODE_UNINIT);
+ ext2fs_group_desc_csum_set(fs, group);
ext2fs_mark_super_dirty(fs);
ctx->flags |= E2F_FLAG_RESTART_LATER;
} else {
@@ -1550,6 +1551,7 @@ skip_checksum:
pctx.num = dirent->inode;
if (fix_problem(ctx, PR_2_INOREF_IN_UNUSED, &cd->pctx)){
ext2fs_bg_itable_unused_set(fs, group, 0);
+ ext2fs_group_desc_csum_set(fs, group);
ext2fs_mark_super_dirty(fs);
ctx->flags |= E2F_FLAG_RESTART_LATER;
} else {
diff --git a/tests/f_uninit_inode_past_unused/expect.1 b/tests/f_uninit_inode_past_unused/expect.1
index 1cf5c85c..de1ac23c 100644
--- a/tests/f_uninit_inode_past_unused/expect.1
+++ b/tests/f_uninit_inode_past_unused/expect.1
@@ -4,9 +4,6 @@ Entry 'foo' in / (2) references inode 14 found in group 0's unused inodes area.
Fix? yes
Restarting e2fsck from the beginning...
-One or more block group descriptor checksums are invalid. Fix? yes
-
-Group descriptor 0 checksum is 0x4c72, should be 0xde74. FIXED.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
diff --git a/tests/f_uninit_restart_fsck/expect.1 b/tests/f_uninit_restart_fsck/expect.1
index d396beb3..64a2d062 100644
--- a/tests/f_uninit_restart_fsck/expect.1
+++ b/tests/f_uninit_restart_fsck/expect.1
@@ -13,10 +13,6 @@ Entry 'bar2' in /d2 (3761) has an incorrect filetype (was 1, should be 0).
Fix? yes
Restarting e2fsck from the beginning...
-One or more block group descriptor checksums are invalid. Fix? yes
-
-Group descriptor 0 checksum is 0xb92b, should be 0x2b5f. FIXED.
-Group descriptor 1 checksum is 0x2f53, should be 0x8d2f. FIXED.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Entry 'foo2' in /d1 (1881) has deleted/unused inode 500. Clear? yes
diff --git a/tests/f_unused_itable/expect.1 b/tests/f_unused_itable/expect.1
index a4da987e..ffda3c48 100644
--- a/tests/f_unused_itable/expect.1
+++ b/tests/f_unused_itable/expect.1
@@ -7,10 +7,6 @@ Entry '1' in / (2) references inode 12 found in group 0's unused inodes area.
Fix? yes
Restarting e2fsck from the beginning...
-One or more block group descriptor checksums are invalid. Fix? yes
-
-Group descriptor 0 checksum is 0x289d, should be 0x788a. FIXED.
-Group descriptor 1 checksum is 0xfaab, should be 0x3a9a. FIXED.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity