diff mbox

xfstests integration

Message ID CAH2r5mv_z=_P0R=uMfrSuwLoUU+OHyf8bmHnuwRuLsN0a8XF-A@mail.gmail.com (mailing list archive)
State New, archived
Headers show

Commit Message

Steve French Aug. 5, 2013, 4:53 p.m. UTC
I couldn't find much - but I did see this small patch which I had put
together quickly so they could run against cifs


On Mon, Aug 5, 2013 at 9:59 AM, David Disseldorp <ddiss@suse.de> wrote:
> Hi Steve,
>
> At SambaXP this year you mentioned that you had done some preliminary
> work towards using the xfstests suite alongside cifs.ko. Do you happen
> to still have the git repo lying around somewhere?
>
> Cheers, David

Comments

David Disseldorp Aug. 5, 2013, 4:56 p.m. UTC | #1
On Mon, 5 Aug 2013 11:53:17 -0500
Steve French <smfrench@gmail.com> wrote:

> I couldn't find much - but I did see this small patch which I had put
> together quickly so they could run against cifs

Thanks Steve, looks like it should be helpful.
--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Christoph Hellwig Aug. 6, 2013, 6:13 a.m. UTC | #2
On Mon, Aug 05, 2013 at 11:53:17AM -0500, Steve French wrote:
> I couldn't find much - but I did see this small patch which I had put
> together quickly so they could run against cifs

Can you please send it to the xfs list for inclusion?  Thanks!

--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Steve French Aug. 12, 2013, 4:15 a.m. UTC | #3
I pulled the latest xfstests - and it looks my earlier patch needs
additional minor changes before submission due to changes in xfstest.

On Tue, Aug 6, 2013 at 1:13 AM, Christoph Hellwig <hch@infradead.org> wrote:
> On Mon, Aug 05, 2013 at 11:53:17AM -0500, Steve French wrote:
>> I couldn't find much - but I did see this small patch which I had put
>> together quickly so they could run against cifs
>
> Can you please send it to the xfs list for inclusion?  Thanks!
>
diff mbox

Patch

diff --git a/common b/common
index 0723224..b2334f8 100644
--- a/common
+++ b/common
@@ -126,6 +126,7 @@  check options
     -xfs                test XFS (default)
     -udf                test UDF
     -nfs                test NFS
+    -cifs               test CIFS
     -l			line mode diff
     -xdiff		graphical mode diff
     -udiff		show unified diff (default)
@@ -158,6 +159,11 @@  testlist options
 	    xpand=false
 	    ;;

+	-cifs)	# -cifs ... set FSTYP to cifs
+	    FSTYP=cifs
+	    xpand=false
+	    ;;
+
 	-g)	# -g group ... pick from group file
 	    group=true
 	    xpand=false
@@ -311,4 +317,6 @@  case "$FSTYP" in
 	 ;;
     nfs)
 	 ;;
+    cifs)
+	 ;;
 esac
diff --git a/common.config b/common.config
index 7bed1c5..1e37840 100644
--- a/common.config
+++ b/common.config
@@ -188,6 +188,7 @@  case "$HOSTOS" in
         export BTRFS_UTIL_PROG="`set_prog_path btrfs`"
         export XFS_FSR_PROG="`set_prog_path xfs_fsr`"
         export MKFS_NFS_PROG="false"
+	export MKFS_CIFS_PROG="false"
         ;;
 esac

@@ -221,7 +222,7 @@  fi

 echo $TEST_DEV | grep -q ":" > /dev/null 2>&1
 if [ ! -b "$TEST_DEV" -a "$?" != "0" ]; then
-    echo "common.config: Error: \$TEST_DEV ($TEST_DEV) is not a block
device or a NFS filesystem"
+    echo "common.config: Error: \$TEST_DEV ($TEST_DEV) is not a block
device or an NFS or CIFS filesystem"
     exit 1
 fi

@@ -243,7 +244,7 @@  fi

 echo $SCRATCH_DEV | grep -q ":" > /dev/null 2>&1
 if [ ! -z "$SCRATCH_DEV" -a ! -b "$SCRATCH_DEV" -a "$?" != "0" ]; then
-    echo "common.config: Error: \$SCRATCH_DEV ($SCRATCH_DEV) is not a
block device or a NFS filesystem"
+    echo "common.config: Error: \$SCRATCH_DEV ($SCRATCH_DEV) is not a
block device or an NFS or CIFS filesystem"
     exit 1
 fi

diff --git a/common.rc b/common.rc
index 602513a..7ae2f7a 100644
--- a/common.rc
+++ b/common.rc
@@ -85,6 +85,10 @@  _mount_opts()
     nfs)
 	export MOUNT_OPTIONS=$NFS_MOUNT_OPTIONS
 	;;
+    cifs)
+	export MOUNT_OPTIONS=$CIFS_MOUNT_OPTIONS
+	;;
+
     ext2|ext3|ext4|ext4dev)
 	# acls & xattrs aren't turned on by default on ext$FOO
 	export MOUNT_OPTIONS="-o acl,user_xattr $EXT_MOUNT_OPTIONS"
@@ -116,6 +120,9 @@  _mkfs_opts()
     nfs)
 	export MKFS_OPTIONS=$NFS_MKFS_OPTIONS
 	;;
+    cifs)
+	export MKFS_OPTIONS=$CIFS_MKFS_OPTIONS
+	;;
     reiserfs)
 	export MKFS_OPTIONS="$REISERFS_MKFS_OPTIONS -q"
 	;;
@@ -327,6 +334,9 @@  _scratch_mkfs()
     nfs*)
 	# do nothing for nfs
 	;;
+    cifs)
+	# do nothing for cifs
+	;;
     udf)
         $MKFS_UDF_PROG $MKFS_OPTIONS $* $SCRATCH_DEV > /dev/null
 	;;
@@ -736,6 +746,13 @@  _require_scratch()
 		     _notrun "this test requires a valid \$SCRATCH_DEV"
 		 fi
 		 ;;
+	cifs)
+		 echo $SCRATCH_DEV | grep -q ":" > /dev/null 2>&1
+		 if [ -z "$SCRATCH_DEV" -o "$?" != "0" ]
+		 then
+		     _notrun "this test requires a valid \$SCRATCH_DEV"
+		 fi
+		 ;;
 	*)
 		 if [ -z "$SCRATCH_DEV" -o "`_is_block_dev $SCRATCH_DEV`" = "" ]
 		 then
@@ -1394,6 +1411,9 @@  _check_test_fs()
     nfs)
 	# no way to check consistency for nfs
 	;;
+    cifs)
+	# no way to check consistency for cifs
+	;;
     udf)
 	# do nothing for now
 	;;
@@ -1426,6 +1446,9 @@  _check_scratch_fs()
     nfs*)
 	# Don't know how to check an NFS filesystem, yet.
 	;;
+    cifs)
+	# Don't know how to check an CIFS filesystem, yet.
+	;;
     btrfs)
 	_check_btrfs_filesystem $SCRATCH_DEV
 	;;
@@ -1517,6 +1540,32 @@  _setup_nfs_scratchdir()
     testdir=$SCRATCH_MNT
 }

+_setup_cifs_scratchdir()
+{
+    [ "$FSTYP" != "cifs" ] \
+	&& _fail "setup_cifs_testdir: \$FSTYP is not cifs"
+    [ -z "$SCRATCH_DEV" ] \
+	&& _notrun "this test requires a valid host fs for \$SCRATCH_DEV"
+    [ -z "$SCRATCH_MNT" ] \
+	&& _notrun "this test requires a valid \$SCRATCH_MNT"
+
+    # mounted?
+    if _mount | grep -q $SCRATCH_DEV
+    then
+        # if it's mounted, make sure its on $SCRATCH_MNT
+        if ! _mount | grep $SCRATCH_DEV | grep -q $SCRATCH_MNT
+        then
+            _fail "\$SCRATCH_DEV is mounted but not on \$SCRATCH_MNT
- aborting"
+        fi
+    	$UMOUNT_PROG $SCRATCH_DEV
+    fi
+
+    _scratch_mkfs
+    _scratch_mount
+
+    testdir=$SCRATCH_MNT
+}
+
 #
 # Warning for UDF and NFS:
 # this function calls _setup_udf_scratchdir and _setup_udf_scratchdir
@@ -1535,6 +1584,9 @@  _setup_testdir()
     nfs*)
 	_setup_nfs_scratchdir
 	;;
+    cifs)
+	_setup_cifs_scratchdir
+	;;
     *)
 	testdir=$TEST_DIR
 	;;
@@ -1552,6 +1604,10 @@  _cleanup_testdir()
 	# umount testdir as it is $SCRATCH_MNT which could be used by xfs next
 	[ -n "$testdir" ] && $UMOUNT_PROG $testdir
 	;;
+    cifs)
+	# umount testdir as it is $SCRATCH_MNT which could be used by xfs next
+	[ -n "$testdir" ] && $UMOUNT_PROG $testdir
+	;;
     *)
 	# do nothing, testdir is $TEST_DIR
 	: