[PATCH RFC] fstests: add configuration option for executing post mkfs commands

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



This patch introduces a new configuration file parameter, POST_MKFS_CMD,
which, when set, will run immediately it after the mkfs command for the
FSTYP btrfs.

	For example:
	POST_MKFS_CMD="btrfstune -m"

Currently, only btrfstune's '-m' option is tested. However, there may be
more btrfstune options, so having this parameter as a config makes sense.
Additionally, there can be other commands besides btrfstune.

The mkfs helper functions in common/rc sends the SCRATCH_DEV as an argument
to the set POST_MKFS_CMD, which may not be compatible with other commands.
However, as of now, since those usecases are still unknown, we can modify
it later. For now, I'm marking this as RFC, I'm open to feedback if any.

Signed-off-by: Anand Jain <anand.jain@xxxxxxxxxx>
---
 common/rc | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/common/rc b/common/rc
index 5c4429ed0425..3e3c84259f38 100644
--- a/common/rc
+++ b/common/rc
@@ -667,6 +667,9 @@ _mkfs_dev()
 	exit 1
     fi
     rm -f $tmp.mkfserr $tmp.mkfsstd
+    if [[ -v POST_MKFS_CMD ]]; then
+	$POST_MKFS_CMD $(echo $* | $AWK_PROG '{print $1}')
+    fi
 }
 
 # remove all files in $SCRATCH_MNT, useful when testing on NFS/AFS/CIFS
@@ -757,6 +760,9 @@ _scratch_mkfs()
 	esac
 
 	_scratch_do_mkfs "$mkfs_cmd" "$mkfs_filter" $*
+	if [[ -v POST_MKFS_CMD ]]; then
+		$POST_MKFS_CMD $SCRATCH_DEV
+	fi
 	return $?
 }
 
@@ -878,7 +884,11 @@ _scratch_pool_mkfs()
 {
     case $FSTYP in
     btrfs)
-        $MKFS_BTRFS_PROG $MKFS_OPTIONS $* $SCRATCH_DEV_POOL > /dev/null
+        $MKFS_BTRFS_PROG $MKFS_OPTIONS $* $SCRATCH_DEV_POOL
+	if [[ -v POST_MKFS_CMD ]]; then
+		$POST_MKFS_CMD $(echo $SCRATCH_DEV_POOL |\
+						$AWK_PROG '{print $1}')
+	fi
         ;;
     *)
         echo "_scratch_pool_mkfs is not implemented for $FSTYP" 1>&2
-- 
2.39.3




[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux