On Thu, Oct 09, 2025 at 04:50:43PM +0800, Chao Yu wrote: > Introduce _require_inject_f2fs_command() to check whether inject.f2fs > supports specific metaarea and member parameters. > > Meanwhile, let's check inject.f2fs requirement inside > _require_inject_f2fs_command() for cleanup. > > Cc: Jaegeuk Kim <[email protected]> > Signed-off-by: Chao Yu <[email protected]> > ---
Thanks, this version is good to me, Reviewed-by: Zorro Lang <[email protected]> > common/f2fs | 27 +++++++++++++++++++++++++++ > tests/f2fs/009 | 2 +- > tests/f2fs/012 | 2 +- > tests/f2fs/019 | 2 +- > tests/f2fs/020 | 2 +- > tests/f2fs/022 | 2 +- > 6 files changed, 32 insertions(+), 5 deletions(-) > > diff --git a/common/f2fs b/common/f2fs > index 4d0d688b..82d3102e 100644 > --- a/common/f2fs > +++ b/common/f2fs > @@ -69,3 +69,30 @@ _check_f2fs_filesystem() > > return 0 > } > + > +# check that inject.f2fs supports to inject specific field in specific meta > area > +_require_inject_f2fs_command() > +{ > + _require_command "$F2FS_INJECT_PROG" inject.f2fs > + > + if [ $# -ne 2 ]; then > + echo "Usage: _require_inject_f2fs_command metaarea member" 1>&2 > + _exit 1 > + fi > + metaarea=$1 > + member=$2 > + > + case $metaarea in > + sb|cp|nat|sit) > + val=0 > + ;; > + ssa|node|dent) > + ;; > + *) > + _notrun "unsupport metaarea: $metaarea" > + ;; > + esac > + > + $F2FS_INJECT_PROG "--$metaarea" "$val" "-h" | grep "$member:" > > /dev/null || \ > + _notrun "--$metaarea --mb $member support is missing" > +} > diff --git a/tests/f2fs/009 b/tests/f2fs/009 > index 7333d484..4c179f2d 100755 > --- a/tests/f2fs/009 > +++ b/tests/f2fs/009 > @@ -12,7 +12,7 @@ > _begin_fstest auto quick > > _require_scratch > -_require_command "$F2FS_INJECT_PROG" inject.f2fs > +_require_inject_f2fs_command node i_links > _require_command "$(type -P socket)" socket > > _fixed_by_git_commit f2fs-tools 958cd6e \ > diff --git a/tests/f2fs/012 b/tests/f2fs/012 > index 7438d9ce..53d54bf6 100755 > --- a/tests/f2fs/012 > +++ b/tests/f2fs/012 > @@ -20,7 +20,7 @@ _fixed_by_kernel_commit 91b587ba79e1 \ > export LC_ALL=C.UTF-8 > _require_scratch_nocheck > _require_command "$F2FS_IO_PROG" f2fs_io > -_require_command "$F2FS_INJECT_PROG" inject.f2fs > +_require_inject_f2fs_command dent d_hash > > #check whether f2fs supports "lookup_mode=x" mount option > mntopt="" > diff --git a/tests/f2fs/019 b/tests/f2fs/019 > index 2307bd96..a6e6e38c 100755 > --- a/tests/f2fs/019 > +++ b/tests/f2fs/019 > @@ -18,7 +18,7 @@ _fixed_by_kernel_commit 77de19b6867f \ > "f2fs: fix to avoid out-of-boundary access in dnode page" > > _require_scratch_nocheck > -_require_command "$F2FS_INJECT_PROG" inject.f2fs > +_require_inject_f2fs_command node addr > > # remove all mkfs options to avoid layout change of on-disk inode > export MKFS_OPTIONS="" > diff --git a/tests/f2fs/020 b/tests/f2fs/020 > index 38bc6582..a6933134 100755 > --- a/tests/f2fs/020 > +++ b/tests/f2fs/020 > @@ -20,7 +20,7 @@ _fixed_by_kernel_commit 061cf3a84bde \ > "f2fs: fix to do sanity check on ino and xnid" > > _require_scratch_nocheck > -_require_command "$F2FS_INJECT_PROG" inject.f2fs > +_require_inject_f2fs_command node i_xattr_nid > _require_attrs user > > # remove all mkfs options to avoid layout change of on-disk inode > diff --git a/tests/f2fs/022 b/tests/f2fs/022 > index ed3b4f2b..48a8386b 100755 > --- a/tests/f2fs/022 > +++ b/tests/f2fs/022 > @@ -19,7 +19,7 @@ _fixed_by_kernel_commit xxxxxxxxxxxx \ > "f2fs: fix to do sanity check on node footer for non inode dnode" > > _require_scratch_nocheck > -_require_command "$F2FS_INJECT_PROG" inject.f2fs > +_require_inject_f2fs_command node i_nid > > # remove all mkfs options to avoid layout change of on-disk inode > export MKFS_OPTIONS="" > -- > 2.40.1 > _______________________________________________ Linux-f2fs-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
