From: Zorro Lang <zlang@kernel.org>
To: fstests@vger.kernel.org
Subject: [PATCH 1/2] common: source base fs specific common file
Date: Wed, 25 May 2022 15:34:26 +0800 [thread overview]
Message-ID: <20220525073427.3355242-2-zlang@kernel.org> (raw)
In-Reply-To: <20220525073427.3355242-1-zlang@kernel.org>
When tests overlayfs, sometimes we need the underlying fs specific
helpers, e.g. common/rc has:
_filesystem_timestamp_range $OVL_BASE_TEST_DEV $OVL_BASE_FSTYP
So when we source common/overlay, better to source OVL_BASE_FSTYP
too.
Signed-off-by: Zorro Lang <zlang@kernel.org>
---
common/config | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++
common/overlay | 4 ++++
common/rc | 49 +----------------------------------------
3 files changed, 64 insertions(+), 48 deletions(-)
diff --git a/common/config b/common/config
index c6428f90..558f148b 100644
--- a/common/config
+++ b/common/config
@@ -481,6 +481,65 @@ _fsck_opts()
esac
}
+# check necessary running dependences then source sepcific fs helpers
+_source_specific_fs()
+{
+ local fs=$1
+
+ if [ -z "$fs" ];then
+ fs=$FSTYP
+ fi
+
+ case "$fs" in
+ xfs)
+ [ "$XFS_LOGPRINT_PROG" = "" ] && _fatal "xfs_logprint not found"
+ [ "$XFS_REPAIR_PROG" = "" ] && _fatal "xfs_repair not found"
+ [ "$XFS_DB_PROG" = "" ] && _fatal "xfs_db not found"
+ [ "$MKFS_XFS_PROG" = "" ] && _fatal "mkfs_xfs not found"
+ [ "$XFS_INFO_PROG" = "" ] && _fatal "xfs_info not found"
+
+ . ./common/xfs
+ ;;
+ udf)
+ [ "$MKFS_UDF_PROG" = "" ] && _fatal "mkfs_udf/mkudffs not found"
+ ;;
+ btrfs)
+ [ "$MKFS_BTRFS_PROG" = "" ] && _fatal "mkfs.btrfs not found"
+
+ . ./common/btrfs
+ ;;
+ ext4)
+ [ "$MKFS_EXT4_PROG" = "" ] && _fatal "mkfs.ext4 not found"
+ ;;
+ f2fs)
+ [ "$MKFS_F2FS_PROG" = "" ] && _fatal "mkfs.f2fs not found"
+ ;;
+ nfs)
+ . ./common/nfs
+ ;;
+ cifs)
+ ;;
+ 9p)
+ ;;
+ ceph)
+ . ./common/ceph
+ ;;
+ glusterfs)
+ ;;
+ overlay)
+ . ./common/overlay
+ ;;
+ reiser4)
+ [ "$MKFS_REISER4_PROG" = "" ] && _fatal "mkfs.reiser4 not found"
+ ;;
+ pvfs2)
+ ;;
+ ubifs)
+ [ "$UBIUPDATEVOL_PROG" = "" ] && _fatal "ubiupdatevol not found"
+ ;;
+ esac
+}
+
known_hosts()
{
[ "$HOST_CONFIG_DIR" ] || HOST_CONFIG_DIR=`pwd`/configs
diff --git a/common/overlay b/common/overlay
index c4e7ee58..e35419d0 100644
--- a/common/overlay
+++ b/common/overlay
@@ -12,6 +12,10 @@ export OVL_XATTR_NLINK="trusted.overlay.nlink"
export OVL_XATTR_UPPER="trusted.overlay.upper"
export OVL_XATTR_METACOPY="trusted.overlay.metacopy"
+if [ -n "$OVL_BASE_FSTYP" ];then
+ _source_specific_fs $OVL_BASE_FSTYP
+fi
+
# helper function to do the actual overlayfs mount operation
_overlay_mount_dirs()
{
diff --git a/common/rc b/common/rc
index 70a15f9c..2f31ca46 100644
--- a/common/rc
+++ b/common/rc
@@ -96,54 +96,7 @@ _log_err()
umask 022
# check for correct setup and source the $FSTYP specific functions now
-case "$FSTYP" in
- xfs)
- [ "$XFS_LOGPRINT_PROG" = "" ] && _fatal "xfs_logprint not found"
- [ "$XFS_REPAIR_PROG" = "" ] && _fatal "xfs_repair not found"
- [ "$XFS_DB_PROG" = "" ] && _fatal "xfs_db not found"
- [ "$MKFS_XFS_PROG" = "" ] && _fatal "mkfs_xfs not found"
- [ "$XFS_INFO_PROG" = "" ] && _fatal "xfs_info not found"
-
- . ./common/xfs
- ;;
- udf)
- [ "$MKFS_UDF_PROG" = "" ] && _fatal "mkfs_udf/mkudffs not found"
- ;;
- btrfs)
- [ "$MKFS_BTRFS_PROG" = "" ] && _fatal "mkfs.btrfs not found"
-
- . ./common/btrfs
- ;;
- ext4)
- [ "$MKFS_EXT4_PROG" = "" ] && _fatal "mkfs.ext4 not found"
- ;;
- f2fs)
- [ "$MKFS_F2FS_PROG" = "" ] && _fatal "mkfs.f2fs not found"
- ;;
- nfs)
- . ./common/nfs
- ;;
- cifs)
- ;;
- 9p)
- ;;
- ceph)
- . ./common/ceph
- ;;
- glusterfs)
- ;;
- overlay)
- . ./common/overlay
- ;;
- reiser4)
- [ "$MKFS_REISER4_PROG" = "" ] && _fatal "mkfs.reiser4 not found"
- ;;
- pvfs2)
- ;;
- ubifs)
- [ "$UBIUPDATEVOL_PROG" = "" ] && _fatal "ubiupdatevol not found"
- ;;
-esac
+_source_specific_fs $FSTYP
if [ ! -z "$REPORT_LIST" ]; then
. ./common/report
--
2.31.1
next prev parent reply other threads:[~2022-05-25 7:34 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-25 7:34 [PATCH 0/2] source fs specific common file properly Zorro Lang
2022-05-25 7:34 ` Zorro Lang [this message]
2022-05-26 6:39 ` [PATCH 1/2] common: source base fs specific common file Amir Goldstein
2022-05-25 7:34 ` [PATCH 2/2] tests: remove redundant common/$FSTYP importing Zorro Lang
2022-05-26 0:13 ` Dave Chinner
2022-05-26 1:14 ` Zorro Lang
2022-05-26 1:23 ` [PATCH v2 " Zorro Lang
2022-05-26 2:28 ` Dave Chinner
2022-05-26 6:51 ` Amir Goldstein
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220525073427.3355242-2-zlang@kernel.org \
--to=zlang@kernel.org \
--cc=fstests@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox