[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#856808: error during mount: first meta block group too large



Package: linux-image-4.9.0-2-amd64
Version: 4.9.13-1
Severity: important
Tags: patch upstream

Hi!

After rebooting one of my systems with 4.9.x I got hit by the following
error:

[  309.934171] EXT4-fs (dm-5): mounting ext3 file system using the ext4 subsystem
[  309.934748] EXT4-fs (dm-5): first meta block group too large: 1 (group descriptor block count 1)

Unfortunately for me this is my /var filesystem.

This is https://bugzilla.kernel.org/show_bug.cgi?id=194567 and got fixed
by https://patchwork.ozlabs.org/patch/728066/

Rebuilding the kernel with the patch applied allows my system to mount
and boot again. Please add the fix to the next release, should be fix
not be included in a stable release until then.

Grüße,
Sven.

-- System Information:
Debian Release: 9.0
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'unstable'), (500, 'testing'), (200, 'experimental'), (1, 'experimental-debug')
Architecture: i386 (x86_64)
Foreign Architectures: amd64

Kernel: Linux 4.8.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages linux-image-4.9.0-2-amd64:amd64 depends on:
ii  initramfs-tools [linux-initramfs-tool]  0.127
ii  kmod                                    24-1
ii  linux-base                              4.5

Versions of packages linux-image-4.9.0-2-amd64:amd64 recommends:
ii  firmware-linux-free  3.4
ii  irqbalance           1.1.0-2.2

Versions of packages linux-image-4.9.0-2-amd64:amd64 suggests:
pn  debian-kernel-handbook  <none>
ii  grub-pc                 2.02~beta3-5
pn  linux-doc-4.9           <none>

-- debconf-show failed
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index dde14a7ac6d7..a673558fe5f8 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -3860,7 +3860,7 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
 	db_count = (sbi->s_groups_count + EXT4_DESC_PER_BLOCK(sb) - 1) /
 		   EXT4_DESC_PER_BLOCK(sb);
 	if (ext4_has_feature_meta_bg(sb)) {
-		if (le32_to_cpu(es->s_first_meta_bg) >= db_count) {
+		if (le32_to_cpu(es->s_first_meta_bg) > db_count) {
 			ext4_msg(sb, KERN_WARNING,
 				 "first meta block group too large: %u "
 				 "(group descriptor block count %u)",
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index dde14a7ac6d7..a673558fe5f8 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -3860,7 +3860,7 @@ static int ext4_fill_super(struct super_block *sb, void *data, int silent)
 	db_count = (sbi->s_groups_count + EXT4_DESC_PER_BLOCK(sb) - 1) /
 		   EXT4_DESC_PER_BLOCK(sb);
 	if (ext4_has_feature_meta_bg(sb)) {
-		if (le32_to_cpu(es->s_first_meta_bg) >= db_count) {
+		if (le32_to_cpu(es->s_first_meta_bg) > db_count) {
 			ext4_msg(sb, KERN_WARNING,
 				 "first meta block group too large: %u "
 				 "(group descriptor block count %u)",

Reply to: