kernel 4.15.0-44 cannot mount ext4 fs with meta_bg enabled

Bug #1813727 reported by J.P.Klippel on 2019-01-29
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Stefan Bader

Bug Description

Starting with kernel 4.15.0-44 ext4 filesystem with meta_bg feature enabled can no longer be mounted.

Steps to reproduce:

- create two empty file and setup loopback devices on these files
dd if=/dev/zero of=/loop1 bs=1M count=50
losetup /dev/loop1 /loop1
dd if=/dev/zero of=/loop2 bs=1M count=50
losetup /dev/loop2 /loop2

- create a ext4 fs with meta_bg enabled on loop1:

mkfs.ext4 -O ^resize_inode,+meta_bg /dev/loop1

- create a ext4 fs without any options on loop2:

mkfs.ext4 /dev/loop2

- try to mount the filesystems

mkdir /mnt/loop1
mkdir /mnt/loop2
mount /dev/loop1 /mnt/loop1
mount /dev/loop1 /mnt/loop2

Expected behaviour:
All mounts succeed without error.

Actual behaviour:

root@xubu-18-04:~# mount /dev/loop1 /mnt/loop1
mount: /mnt/loop1: mount(2) system call failed: Structure needs cleaning.

See also a similar bug in fedora and debian:

with a suspected patch by Theodore Ts'o to fix the issue: (Not tested);bug=903838;filename=ext4-fix-false-negatives-and-false-positives-in-ext4.patch;msg=26

Additional info:

root@xubu-18-04:~# lsb_release -rd
Description: Ubuntu 18.04.1 LTS
Release: 18.04

root@xubu-18-04:~# apt-cache policy linux-image-generic
  Version table:
 *** 500
        500 bionic-updates/main amd64 Packages
        500 bionic-security/main amd64 Packages
        100 /var/lib/dpkg/status 500
        500 bionic/main amd64 Packages
ProblemType: Bug
ApportVersion: 2.20.9-0ubuntu7.5
Architecture: amd64
 /dev/snd/controlC0: vagrant 1242 F.... pulseaudio
CurrentDesktop: XFCE
DistroRelease: Ubuntu 18.04
InstallationDate: Installed on 2019-01-29 (0 days ago)
InstallationMedia: Xubuntu 18.04 LTS "Bionic Beaver" - Release amd64 (20180426)
 lo no wireless extensions.

 enp0s3 no wireless extensions.
 Bus 001 Device 002: ID 80ee:0021 VirtualBox USB Tablet
 Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
MachineType: innotek GmbH VirtualBox
Package: linux (not installed)
ProcFB: 0 svgadrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.15.0-44-generic root=UUID=a335a238-56df-4705-90d6-6e644fcaf8f9 ro quiet splash
ProcVersionSignature: Ubuntu 4.15.0-44.47-generic 4.15.18
 linux-restricted-modules-4.15.0-44-generic N/A
 linux-backports-modules-4.15.0-44-generic N/A
 linux-firmware 1.173.3

StagingDrivers: vboxvideo
Tags: bionic staging
Uname: Linux 4.15.0-44-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo
_MarkForUpload: True 12/01/2006
dmi.bios.vendor: innotek GmbH
dmi.bios.version: VirtualBox VirtualBox
dmi.board.vendor: Oracle Corporation
dmi.board.version: 1.2
dmi.chassis.type: 1
dmi.chassis.vendor: Oracle Corporation
dmi.modalias: dmi:bvninnotekGmbH:bvrVirtualBox:bd12/01/2006:svninnotekGmbH:pnVirtualBox:pvr1.2:rvnOracleCorporation:rnVirtualBox:rvr1.2:cvnOracleCorporation:ct1:cvr: Virtual Machine VirtualBox
dmi.product.version: 1.2
dmi.sys.vendor: innotek GmbH

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 1813727

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: bionic

apport information

tags: added: apport-collected staging
description: updated

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

apport information

J.P.Klippel (jklippel) on 2019-01-29
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Stefan Bader (smb) on 2019-01-29
Changed in linux (Ubuntu Bionic):
assignee: nobody → Stefan Bader (smb)
importance: Undecided → High
status: New → Fix Committed
Brad Figg (brad-figg) wrote :

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-bionic' to 'verification-done-bionic'. If the problem still exists, change the tag 'verification-needed-bionic' to 'verification-failed-bionic'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-bionic
Stefan Bader (smb) wrote :

ubuntu@lam-bionic6401:~$ uname -a
Linux lam-bionic6401 4.15.0-45-generic #48-Ubuntu SMP Tue Jan 29 16:28:13 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
ubuntu@lam-bionic6401:~$ sudo dumpe2fs -h /dev/loop5|grep meta_bg
dumpe2fs 1.44.1 (24-Mar-2018)
Filesystem features: has_journal ext_attr dir_index filetype needs_recovery meta_bg extent 64bit flex_bg sparse_super large_file huge_file dir_nlink extra_isize metadata_csum
ubuntu@lam-bionic6401:~$ sudo dumpe2fs -h /dev/loop6|grep meta_bg
dumpe2fs 1.44.1 (24-Mar-2018)
ubuntu@lam-bionic6401:~$ df -h|grep 'loop[56]'
/dev/loop5 45M 13K 41M 1% /mnt/loop5
/dev/loop6 45M 1.1M 40M 3% /mnt/loop6

tags: added: verification-done-bionic
removed: verification-needed-bionic
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 4.15.0-45.48

linux (4.15.0-45.48) bionic; urgency=medium

  * linux: 4.15.0-45.48 -proposed tracker (LP: #1813779)

  * External monitors does not work anymore 4.15.0-44 (LP: #1813663)
    - SAUCE: Revert "drm/i915/dp: Send DPCD ON for MST before phy_up"

  * kernel 4.15.0-44 cannot mount ext4 fs with meta_bg enabled (LP: #1813727)
    - ext4: fix false negatives *and* false positives in ext4_check_descriptors()

 -- Stefan Bader <email address hidden> Tue, 29 Jan 2019 16:39:15 +0100

Changed in linux (Ubuntu Bionic):
status: Fix Committed → Fix Released
status: Fix Committed → Fix Released
Stefan Bader (smb) on 2019-01-31
Changed in linux (Ubuntu):
status: Confirmed → Invalid
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers