All of lore.kernel.org
 help / color / mirror / Atom feed
From: Amir Goldstein <amir73il@gmail.com>
To: Eryu Guan <guaneryu@gmail.com>
Cc: Miklos Szeredi <miklos@szeredi.hu>,
	Vivek Goyal <vgoyal@redhat.com>,
	linux-unionfs@vger.kernel.org, fstests@vger.kernel.org
Subject: [PATCH 2/3] overlay: add unionmount tests with multi lower layers
Date: Sun, 31 May 2020 14:01:55 +0300	[thread overview]
Message-ID: <20200531110156.6613-3-amir73il@gmail.com> (raw)
In-Reply-To: <20200531110156.6613-1-amir73il@gmail.com>

The tests with multi lower layers rotate the upper layer into a lower
layer on specific operations such as mkdir, rename and link.
That provides test coverage for redirect_dir and index features.

The following variations are covered:
1. All layers all on scratch fs (--ov=10 --samefs)
2. All layers on scratch fs expect for lowermost on test fs (--ov=10)
3. Lowermost layer on test fs, one layer on tmpfs and the rest
   on sratch fs (--ov=10 --maxfs=1)
4. Lowermost layer on test fs, one layer on scratch fs and the rest
   are unique tmpfs instances (--ov=10 --maxfs=10)

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
---
 tests/overlay/103     | 38 ++++++++++++++++++++++++++++++++++++++
 tests/overlay/103.out |  2 ++
 tests/overlay/104     | 39 +++++++++++++++++++++++++++++++++++++++
 tests/overlay/104.out |  2 ++
 tests/overlay/105     | 40 ++++++++++++++++++++++++++++++++++++++++
 tests/overlay/105.out |  2 ++
 tests/overlay/106     | 41 +++++++++++++++++++++++++++++++++++++++++
 tests/overlay/106.out |  2 ++
 tests/overlay/107     | 41 +++++++++++++++++++++++++++++++++++++++++
 tests/overlay/107.out |  2 ++
 tests/overlay/108     | 41 +++++++++++++++++++++++++++++++++++++++++
 tests/overlay/108.out |  2 ++
 tests/overlay/109     | 41 +++++++++++++++++++++++++++++++++++++++++
 tests/overlay/109.out |  2 ++
 tests/overlay/group   |  7 +++++++
 15 files changed, 302 insertions(+)
 create mode 100755 tests/overlay/103
 create mode 100644 tests/overlay/103.out
 create mode 100755 tests/overlay/104
 create mode 100644 tests/overlay/104.out
 create mode 100755 tests/overlay/105
 create mode 100644 tests/overlay/105.out
 create mode 100755 tests/overlay/106
 create mode 100644 tests/overlay/106.out
 create mode 100755 tests/overlay/107
 create mode 100644 tests/overlay/107.out
 create mode 100755 tests/overlay/108
 create mode 100644 tests/overlay/108.out
 create mode 100755 tests/overlay/109
 create mode 100644 tests/overlay/109.out

diff --git a/tests/overlay/103 b/tests/overlay/103
new file mode 100755
index 00000000..fb7fce0c
--- /dev/null
+++ b/tests/overlay/103
@@ -0,0 +1,38 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 103
+#
+# Run unionmount testsuite to verify correctness
+# with multi lower layers on same fs as upper
+#
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1	# failure is the default!
+trap "_unionmount_testsuite_cleanup; exit \$status" 0 1 2 3 15
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+
+_supported_fs overlay
+_supported_os Linux
+_require_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ov=10 --samefs --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/103.out b/tests/overlay/103.out
new file mode 100644
index 00000000..78212a3d
--- /dev/null
+++ b/tests/overlay/103.out
@@ -0,0 +1,2 @@
+QA output created by 103
+Silence is golden
diff --git a/tests/overlay/104 b/tests/overlay/104
new file mode 100755
index 00000000..f867f345
--- /dev/null
+++ b/tests/overlay/104
@@ -0,0 +1,39 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 104
+#
+# Run unionmount testsuite to verify correctness
+# with multi lower layers, lowermost on unique fs
+#
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1	# failure is the default!
+trap "_unionmount_testsuite_cleanup; exit \$status" 0 1 2 3 15
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+
+_supported_fs overlay
+_supported_os Linux
+_require_test
+_require_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ov=10 --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/104.out b/tests/overlay/104.out
new file mode 100644
index 00000000..3f3bd2e8
--- /dev/null
+++ b/tests/overlay/104.out
@@ -0,0 +1,2 @@
+QA output created by 104
+Silence is golden
diff --git a/tests/overlay/105 b/tests/overlay/105
new file mode 100755
index 00000000..f964c58e
--- /dev/null
+++ b/tests/overlay/105
@@ -0,0 +1,40 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 105
+#
+# Run unionmount testsuite to verify correctness
+# with multi lower layers, lowermost on unique fs,
+# with xino enabled
+#
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1	# failure is the default!
+trap "_unionmount_testsuite_cleanup; exit \$status" 0 1 2 3 15
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+
+_supported_fs overlay
+_supported_os Linux
+_require_test
+_require_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ov=10 --xino --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/105.out b/tests/overlay/105.out
new file mode 100644
index 00000000..edaafd46
--- /dev/null
+++ b/tests/overlay/105.out
@@ -0,0 +1,2 @@
+QA output created by 105
+Silence is golden
diff --git a/tests/overlay/106 b/tests/overlay/106
new file mode 100755
index 00000000..52d6c7d0
--- /dev/null
+++ b/tests/overlay/106
@@ -0,0 +1,41 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 106
+#
+# Run unionmount testsuite to verify correctness
+# with multi lower layers, some layers on unique fs,
+# one layer is on tmpfs.
+#
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1	# failure is the default!
+trap "_unionmount_testsuite_cleanup; exit \$status" 0 1 2 3 15
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+
+_supported_fs overlay
+_supported_os Linux
+_require_tmpfs
+_require_test
+_require_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ov=10 --maxfs=1 --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/106.out b/tests/overlay/106.out
new file mode 100644
index 00000000..85af05d8
--- /dev/null
+++ b/tests/overlay/106.out
@@ -0,0 +1,2 @@
+QA output created by 106
+Silence is golden
diff --git a/tests/overlay/107 b/tests/overlay/107
new file mode 100755
index 00000000..abcde30c
--- /dev/null
+++ b/tests/overlay/107
@@ -0,0 +1,41 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 107
+#
+# Run unionmount testsuite to verify correctness
+# with multi lower layers, some layers on unique fs,
+# one layer is on tmpfs with xino enabled.
+#
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1	# failure is the default!
+trap "_unionmount_testsuite_cleanup; exit \$status" 0 1 2 3 15
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+
+_supported_fs overlay
+_supported_os Linux
+_require_tmpfs
+_require_test
+_require_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ov=10 --maxfs=1 --xino --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/107.out b/tests/overlay/107.out
new file mode 100644
index 00000000..862bdfbd
--- /dev/null
+++ b/tests/overlay/107.out
@@ -0,0 +1,2 @@
+QA output created by 107
+Silence is golden
diff --git a/tests/overlay/108 b/tests/overlay/108
new file mode 100755
index 00000000..d4e9b570
--- /dev/null
+++ b/tests/overlay/108
@@ -0,0 +1,41 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 108
+#
+# Run unionmount testsuite to verify correctness
+# with multi lower layers, all layers on unique fs,
+# some layers are on tmpfs.
+#
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1	# failure is the default!
+trap "_unionmount_testsuite_cleanup; exit \$status" 0 1 2 3 15
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+
+_supported_fs overlay
+_supported_os Linux
+_require_tmpfs
+_require_test
+_require_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ov=10 --maxfs=10 --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/108.out b/tests/overlay/108.out
new file mode 100644
index 00000000..326ffa96
--- /dev/null
+++ b/tests/overlay/108.out
@@ -0,0 +1,2 @@
+QA output created by 108
+Silence is golden
diff --git a/tests/overlay/109 b/tests/overlay/109
new file mode 100755
index 00000000..71072982
--- /dev/null
+++ b/tests/overlay/109
@@ -0,0 +1,41 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 109
+#
+# Run unionmount testsuite to verify correctness
+# with multi lower layers, all layers on unique fs,
+# some layers are on tmpfs with xino enabled.
+#
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1	# failure is the default!
+trap "_unionmount_testsuite_cleanup; exit \$status" 0 1 2 3 15
+
+# get standard environment, filters and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+
+_supported_fs overlay
+_supported_os Linux
+_require_tmpfs
+_require_test
+_require_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ov=10 --maxfs=10 --xino --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/109.out b/tests/overlay/109.out
new file mode 100644
index 00000000..8356befa
--- /dev/null
+++ b/tests/overlay/109.out
@@ -0,0 +1,2 @@
+QA output created by 109
+Silence is golden
diff --git a/tests/overlay/group b/tests/overlay/group
index 267161f4..079ff0af 100644
--- a/tests/overlay/group
+++ b/tests/overlay/group
@@ -80,3 +80,10 @@
 100 auto quick union samefs
 101 auto quick union nonsamefs
 102 auto quick union nonsamefs xino
+103 auto union rotate samefs
+104 auto union rotate nonsamefs
+105 auto union rotate nonsamefs xino
+106 auto union rotate nonsamefs
+107 auto union rotate nonsamefs xino
+108 auto union rotate nonsamefs
+109 auto union rotate nonsamefs xino
-- 
2.17.1


  parent reply	other threads:[~2020-05-31 11:02 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-31 11:01 [PATCH 0/3] Running unionmount testsuite from xfstests Amir Goldstein
2020-05-31 11:01 ` [PATCH 1/3] overlay: run unionmount testsuite test cases Amir Goldstein
2020-05-31 11:01 ` Amir Goldstein [this message]
2020-05-31 11:01 ` [PATCH 3/3] overlay: add unionmount tests with nested overlay Amir Goldstein
2020-06-01 17:52 ` [PATCH 0/3] Running unionmount testsuite from xfstests Vivek Goyal
2020-06-01 19:18   ` Amir Goldstein
2020-07-19 18:11 ` Eryu Guan
2020-07-19 18:36   ` Amir Goldstein
2020-07-26 15:16     ` Eryu Guan
2020-07-26 16:21       ` 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=20200531110156.6613-3-amir73il@gmail.com \
    --to=amir73il@gmail.com \
    --cc=fstests@vger.kernel.org \
    --cc=guaneryu@gmail.com \
    --cc=linux-unionfs@vger.kernel.org \
    --cc=miklos@szeredi.hu \
    --cc=vgoyal@redhat.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.