The significant difference in the cert test wrapper actually appears to
be that it creates a directory in which to run the test, vs. running it
at the root of the mount point. I'm able to reproduce the failure
outside of cert after a fresh reboot with the following script. The fs
.aio-max-nr sysctl was a red herring.

mkdir -p /tmp/mnt
# My script does a mkfs.ext4 -F, but omitting that here in case someone blindly 
cut & pastes
mkfs.ext4 /dev/sda1
mount /dev/sda1 /tmp/mnt
# Running directly under /tmp/mnt doesn't trigger the issue, we need
# this subdirectory for some reason
mkdir -p /tmp/mnt/tmp/disk_stress_ng_f70f0f26-b332-4c48-9e07-67c529770e3d
stress-ng --aggressive --verify --timeout 240 --temp-path 
/tmp/mnt/tmp/disk_stress_ng_f70f0f26-b332-4c48-9e07-67c529770e3d --chdir 0 
--hdd-opts dsync --readahead-bytes 16M -k

@Colin: I updated the description to note that we have seen this on 2
different HiSilicon servers that use different HiSilicon SoCs. We've
also tested on a Cavium Sabre (ThunderX2-based) board, and were unable
to reproduce it there.

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1780137

Title:
  [Regression] EXT4-fs error (device sda1):
  ext4_validate_inode_bitmap:99: comm stress-ng: Corrupt inode bitmap

Status in linux package in Ubuntu:
  Triaged
Status in linux source package in Bionic:
  Triaged

Bug description:
  We're seeing a very reproducible regression in the bionic kernel
  triggered by the stress-ng chdir test performed by the Ubuntu
  certification suite. We see this on both the HiSilicon D05 arm64
  server and the HiSilicon D06 arm64 server. We have been unable to
  reproduce on other servers so far.

  [Test Case]
  $ sudo apt-add-repository -y ppa:hardware-certification/public
  $ sudo apt install -y canonical-certification-server
  $ sudo mkfs.ext4 /dev/sda1 (Obviously, this should not be your root disk!!)
  $ sudo /usr/lib/plainbox-provider-checkbox/bin/disk_stress_ng sda --base-time 
240 --really-run

  This test runs a series of stress-ng tests against /dev/sda, and fails
  on the "chdir" test. To speed up reproduction, reduce the test list to
  just "chdir" in the disk_stress_ng script. Attempts to reproduce this
  directly with stress-ng have failed - presumably because of other
  environment setup that this script performs (e.g. setting aio-max-nr
  to 524288).

  Our reproduction test is to use a non-root disk because it can lead to
  corruption, and mkfs.ext4'ing the partition just before running the
  test, to get to a pristine fs state.

  I bisected this down to the following commit:

  commit 555bc9b1421f10d94a1192c7eea4a59faca3e711
  Author: Theodore Ts'o <ty...@mit.edu>
  Date:   Mon Feb 19 14:16:47 2018 -0500

      ext4: don't update checksum of new initialized bitmaps

      BugLink: http://bugs.launchpad.net/bugs/1773233

      commit 044e6e3d74a3d7103a0c8a9305dfd94d64000660 upstream.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1780137/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to