public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] xfstests: add simple splice test
@ 2011-01-10 23:32 Dave Chinner
  2011-01-11 17:38 ` Christoph Hellwig
  0 siblings, 1 reply; 3+ messages in thread
From: Dave Chinner @ 2011-01-10 23:32 UTC (permalink / raw)
  To: xfs

From: Dave Chinner <dchinner@redhat.com>

We don't have any coverage of the splice functionality provided by
the kernel in xfstests. Add a simple test that uses the sendfile
operation built into xfs_io to copy a file ensure we at least
execute the code path in xfstests.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
---
 249     |   62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 249.out |    2 ++
 group   |    1 +
 3 files changed, 65 insertions(+), 0 deletions(-)
 create mode 100644 249
 create mode 100644 249.out

diff --git a/249 b/249
new file mode 100644
index 0000000..6fc972e
--- /dev/null
+++ b/249
@@ -0,0 +1,62 @@
+#! /bin/bash
+# FS QA Test No. 249
+#
+# simple splice(2) test.
+#
+#-----------------------------------------------------------------------
+# Copyright (c) 2011 Red Hat, Inc.  All Rights Reserved.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it would be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write the Free Software Foundation,
+# Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+#-----------------------------------------------------------------------
+#
+# creator
+owner=dchinner@redhat.com
+
+seq=`basename $0`
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=tmp/$$
+status=1  # failure is the default!
+trap "_cleanup; exit \$status" 0 1 2 3 15
+
+_cleanup()
+{
+	cd /
+	rm -f $tmp.*
+	rm -f $SRC $DST
+	_cleanup_testdir
+}
+
+# get standard environment, filters and checks
+. ./common.rc
+. ./common.filter
+
+# real QA test starts here
+_supported_fs generic
+_supported_os Linux
+_setup_testdir
+
+echo "Feel the serenity."
+
+SRC=$TEST_DIR/$seq.src
+DST=$TEST_DIR/$seq.dst
+
+$XFS_IO_PROG -f -c "pwrite -S 0xa5a55a5a 0 32768k" -c fsync $SRC > /dev/null 2>&1
+$XFS_IO_PROG -f -c "sendfile -i $SRC 0 32768k" -c fsync $DST > /dev/null 2>&1
+
+diff $SRC $DST
+
+status=$?
+exit
diff --git a/249.out b/249.out
new file mode 100644
index 0000000..592696f
--- /dev/null
+++ b/249.out
@@ -0,0 +1,2 @@
+QA output created by 249
+Feel the serenity.
diff --git a/group b/group
index a40c98f..b94f543 100644
--- a/group
+++ b/group
@@ -362,3 +362,4 @@ deprecated
 246 auto quick rw
 247 auto quick rw
 248 auto quick rw 
+249 auto quick rw 
-- 
1.7.2.3

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] xfstests: add simple splice test
  2011-01-10 23:32 [PATCH] xfstests: add simple splice test Dave Chinner
@ 2011-01-11 17:38 ` Christoph Hellwig
  2011-01-11 20:50   ` Dave Chinner
  0 siblings, 1 reply; 3+ messages in thread
From: Christoph Hellwig @ 2011-01-11 17:38 UTC (permalink / raw)
  To: Dave Chinner; +Cc: xfs

> +echo "Feel the serenity."
> +
> +SRC=$TEST_DIR/$seq.src
> +DST=$TEST_DIR/$seq.dst
> +
> +$XFS_IO_PROG -f -c "pwrite -S 0xa5a55a5a 0 32768k" -c fsync $SRC > /dev/null 2>&1
> +$XFS_IO_PROG -f -c "sendfile -i $SRC 0 32768k" -c fsync $DST > /dev/null 2>&1
> +
> +diff $SRC $DST

I think this should removfe the two files to make sure the test is
reproducible and doesn't overwrite an existing file during the second
run.  Also I'd recomment not to redirect the output to /dev/null but use
our normal xfs_io filters and make the output part of the golden output.

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] xfstests: add simple splice test
  2011-01-11 17:38 ` Christoph Hellwig
@ 2011-01-11 20:50   ` Dave Chinner
  0 siblings, 0 replies; 3+ messages in thread
From: Dave Chinner @ 2011-01-11 20:50 UTC (permalink / raw)
  To: Christoph Hellwig; +Cc: xfs

On Tue, Jan 11, 2011 at 12:38:45PM -0500, Christoph Hellwig wrote:
> > +echo "Feel the serenity."
> > +
> > +SRC=$TEST_DIR/$seq.src
> > +DST=$TEST_DIR/$seq.dst
> > +
> > +$XFS_IO_PROG -f -c "pwrite -S 0xa5a55a5a 0 32768k" -c fsync $SRC > /dev/null 2>&1
> > +$XFS_IO_PROG -f -c "sendfile -i $SRC 0 32768k" -c fsync $DST > /dev/null 2>&1
> > +
> > +diff $SRC $DST
> 
> I think this should removfe the two files to make sure the test is
> reproducible and doesn't overwrite an existing file during the second
> run.

It removes them in the cleanup function.

> Also I'd recomment not to redirect the output to /dev/null but use
> our normal xfs_io filters and make the output part of the golden output.

Ok.

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-01-11 20:48 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-01-10 23:32 [PATCH] xfstests: add simple splice test Dave Chinner
2011-01-11 17:38 ` Christoph Hellwig
2011-01-11 20:50   ` Dave Chinner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox