On Mon, Mar 14, 2022 at 04:02:07PM +0530, Ojaswin Mujoo wrote: > Add support to test the mb_optimize_scan mount option. > Since its value is not reflected in the "options" file in proc, > use "mb_structs_summary" to verify its value. > > Signed-off-by: Ojaswin Mujoo <ojaswin@xxxxxxxxxxxxx> mb_optimize_scan option was added in v5.13 by commit 196e402adf2e ("ext4: improve cr 0 / cr 1 group scanning"), and ext4/053 will run on v5.12 kernel (and newer kernels), so test will fail when testing v5.12 kernel. > --- > tests/ext4/053 | 21 ++++++++++++--------- > 1 file changed, 12 insertions(+), 9 deletions(-) > > diff --git a/tests/ext4/053 b/tests/ext4/053 > index e1e79592..bd92002f 100755 > --- a/tests/ext4/053 > +++ b/tests/ext4/053 > @@ -100,6 +100,7 @@ test_mnt() { > ( > ret=0 > IFS=',' > + proc_path="/proc/fs/ext4/$(_short_dev $SCRATCH_DEV)" > for option in $OPTS; do > if echo $IGNORED | grep -w $option; then > continue > @@ -114,11 +115,16 @@ test_mnt() { > fi > option=${option#^} > > - if echo $CHECK_MINFO | grep -w $option; then > + if [[ $option =~ ^mb_optimize_scan=.*$ ]]; then > + # mb_optimize_scan needs special handling > + expected=${option#*=} > + ret=$(cat $proc_path/mb_structs_summary | grep "optimize_scan" \ > + | awk '{ print $2 }') > + elif echo $CHECK_MINFO | grep -w $option; then > findmnt -n -o OPTIONS $SCRATCH_DEV | grep $option > ret=$? > else > - grep $option /proc/fs/ext4/$(_short_dev $SCRATCH_DEV)/options > + grep $option $proc_path/options > ret=$? > fi > > @@ -526,13 +532,10 @@ for fstype in ext2 ext3 ext4; do > > mnt prefetch_block_bitmaps removed > mnt no_prefetch_block_bitmaps > - # We don't currently have a way to know that the option has been > - # applied, so comment it out for now. This should be fixed in the > - # future. As the comment said, we need a way to know if mb_optimize_scan option is supported by current kernel. Thanks, Eryu > - #mnt mb_optimize_scan=0 > - #mnt mb_optimize_scan=1 > - #not_mnt mb_optimize_scan=9 > - #not_mnt mb_optimize_scan= > + mnt mb_optimize_scan=0 > + mnt mb_optimize_scan=1 > + not_mnt mb_optimize_scan=9 > + not_mnt mb_optimize_scan= > mnt nombcache > mnt no_mbcache nombcache > mnt check=none removed > -- > 2.27.0