[Pull Request] [kinetic/linux] Regression in ext4 during online resize

Tim Gardner tim.gardner at canonical.com
Wed Mar 22 17:07:08 UTC 2023


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

Issue

resize2fs utility is used to resize the filesystem and is idempotent in 
nature. But in the 5.15 kernel, successive execution of resize2fs is 
returning error.

Reproduction step (on AWS):

     Create an AWS instance with AMI ami-056a67ea1b8ffa0fc (Linux 
5.15.0-1022-aws) in us-west-2 region and attach an EBS volume.
     Format and mount the disk - sudo mkfs.ext4 /dev/xvdb, sudo mkdir -p 
/mnt/ssd0, sudo mount /dev/xvdb /mnt/ssd0
     Increase the size of EBS volume.
     Run sudo resize2fs /dev/xvdb multiple times.

The first execution returns -

$ sudo resize2fs /dev/xvdb
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/xvdb is mounted on /mnt/ssd0; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 3
The filesystem on /dev/xvdb is now 5242880 (4k) blocks long.

The following execution returns -

$ sudo resize2fs /dev/xvdb
resize2fs 1.45.5 (07-Jan-2020)
The filesystem is already 5242880 (4k) blocks long. Nothing to do!

When you run the same step on the latest image ami-0a1d6d351894df6cc 
(Linux 5.15.0-1026-aws).

The first execution returns -

$ sudo resize2fs /dev/xvdb
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/xvdb is mounted on /mnt/ssd0; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 3
The filesystem on /dev/xvdb is now 5242880 (4k) blocks long.

The following execution returns

$ sudo resize2fs /dev/xvdb
resize2fs 1.45.5 (07-Jan-2020)
resize2fs: Superblock checksum does not match superblock while trying to 
open /dev/xvdb
Couldn't find valid filesystem superblock.


This issue has been noted to affect 5.19 kernels as well. A patch set 
from 5.15.y has been used as a guide for which cherry
picks to commit.

------------------------------------------------------------------------

The following changes since commit 78d54428f16c98b741b3190f1c3f6b0ef0430b3e:

   UBUNTU: Ubuntu-5.19.0-39.40 (2023-03-21 09:35:41 -0700)

are available in the Git repository at:

   git://git.launchpad.net/~timg-tpi/ubuntu/+source/linux/+git/kinetic 
lp2003816

for you to fetch changes up to 4b2b6db116cb58b1f0b03db33063e74a72771c49:

   ext4: fix corrupt backup group descriptors after online resize 
(2023-03-22 10:32:43 -0600)

----------------------------------------------------------------
Baokun Li (3):
       ext4: fix bad checksum after online resize
       ext4: fix corruption when online resizing a 1K bigalloc fs
       ext4: fix corrupt backup group descriptors after online resize

  fs/ext4/resize.c | 32 ++++++++++++++++++++------------
  1 file changed, 20 insertions(+), 12 deletions(-)
-- 
-----------
Tim Gardner
Canonical, Inc



More information about the kernel-team mailing list