overlay: add unionmount tests with nested overlay
authorAmir Goldstein <amir73il@gmail.com>
Sun, 31 May 2020 11:01:56 +0000 (14:01 +0300)
committerEryu Guan <guaneryu@gmail.com>
Sun, 26 Jul 2020 13:33:37 +0000 (21:33 +0800)
These tests use an overlay mount as lower layer for a nested overlay.
That provides test coverage for a lower layer with null uuid and
lower layer with real inode numbers that use the high xino bits.

Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
17 files changed:
tests/overlay/110 [new file with mode: 0755]
tests/overlay/110.out [new file with mode: 0644]
tests/overlay/111 [new file with mode: 0755]
tests/overlay/111.out [new file with mode: 0644]
tests/overlay/112 [new file with mode: 0755]
tests/overlay/112.out [new file with mode: 0644]
tests/overlay/113 [new file with mode: 0755]
tests/overlay/113.out [new file with mode: 0644]
tests/overlay/114 [new file with mode: 0755]
tests/overlay/114.out [new file with mode: 0644]
tests/overlay/115 [new file with mode: 0755]
tests/overlay/115.out [new file with mode: 0644]
tests/overlay/116 [new file with mode: 0755]
tests/overlay/116.out [new file with mode: 0644]
tests/overlay/117 [new file with mode: 0755]
tests/overlay/117.out [new file with mode: 0644]
tests/overlay/group

diff --git a/tests/overlay/110 b/tests/overlay/110
new file mode 100755 (executable)
index 0000000..8d34f23
--- /dev/null
@@ -0,0 +1,39 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 110
+#
+# Run unionmount testsuite on a nested overlay filesystem
+# with single lower overlay layer, whose layers are
+# on same 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_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ovov --samefs --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/110.out b/tests/overlay/110.out
new file mode 100644 (file)
index 0000000..4284b8b
--- /dev/null
@@ -0,0 +1,2 @@
+QA output created by 110
+Silence is golden
diff --git a/tests/overlay/111 b/tests/overlay/111
new file mode 100755 (executable)
index 0000000..b99f94d
--- /dev/null
@@ -0,0 +1,40 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 111
+#
+# Run unionmount testsuite on a nested overlay filesystem
+# with single lower overlay layer, whose layers are
+# on same fs
+# with xino enabled (xino overflow not expected)
+#
+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 --ovov --samefs --xino --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/111.out b/tests/overlay/111.out
new file mode 100644 (file)
index 0000000..fedcd59
--- /dev/null
@@ -0,0 +1,2 @@
+QA output created by 111
+Silence is golden
diff --git a/tests/overlay/112 b/tests/overlay/112
new file mode 100755 (executable)
index 0000000..5e8f980
--- /dev/null
@@ -0,0 +1,40 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 112
+#
+# Run unionmount testsuite on a nested overlay filesystem
+# with single lower overlay layer, whose layers are
+# not on same 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 --ovov --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/112.out b/tests/overlay/112.out
new file mode 100644 (file)
index 0000000..0f75273
--- /dev/null
@@ -0,0 +1,2 @@
+QA output created by 112
+Silence is golden
diff --git a/tests/overlay/113 b/tests/overlay/113
new file mode 100755 (executable)
index 0000000..b865f36
--- /dev/null
@@ -0,0 +1,41 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 113
+#
+# Run unionmount testsuite on a nested overlay filesystem
+# with single lower overlay layer, whose layers are
+# not on same fs
+# with xino enabled (expected xino overflows)
+#
+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 --ovov --xino --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/113.out b/tests/overlay/113.out
new file mode 100644 (file)
index 0000000..5cdea7d
--- /dev/null
@@ -0,0 +1,2 @@
+QA output created by 113
+Silence is golden
diff --git a/tests/overlay/114 b/tests/overlay/114
new file mode 100755 (executable)
index 0000000..fc783f5
--- /dev/null
@@ -0,0 +1,39 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 114
+#
+# Run unionmount testsuite on a nested overlay filesystem
+# with multi lower layers, lowermost is an overlay layer,
+# whose layers are on same 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_scratch
+_require_unionmount_testsuite
+
+_unionmount_testsuite_run --ovov=10 --samefs --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/114.out b/tests/overlay/114.out
new file mode 100644 (file)
index 0000000..a2aa4a2
--- /dev/null
@@ -0,0 +1,2 @@
+QA output created by 114
+Silence is golden
diff --git a/tests/overlay/115 b/tests/overlay/115
new file mode 100755 (executable)
index 0000000..b82128d
--- /dev/null
@@ -0,0 +1,40 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 115
+#
+# Run unionmount testsuite on a nested overlay filesystem
+# with multi lower layers, lowermost is an overlay layer,
+# whose layers are on same fs
+# with xino enabled (xino overflow not expected)
+#
+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 --ovov=10 --samefs --xino --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/115.out b/tests/overlay/115.out
new file mode 100644 (file)
index 0000000..d9dd136
--- /dev/null
@@ -0,0 +1,2 @@
+QA output created by 115
+Silence is golden
diff --git a/tests/overlay/116 b/tests/overlay/116
new file mode 100755 (executable)
index 0000000..1575bec
--- /dev/null
@@ -0,0 +1,40 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 116
+#
+# Run unionmount testsuite on a nested overlay filesystem
+# with multi lower layers, lowermost is an overlay layer,
+# whose layers are not on same 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 --ovov=10 --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/116.out b/tests/overlay/116.out
new file mode 100644 (file)
index 0000000..a2013bc
--- /dev/null
@@ -0,0 +1,2 @@
+QA output created by 116
+Silence is golden
diff --git a/tests/overlay/117 b/tests/overlay/117
new file mode 100755 (executable)
index 0000000..819edc9
--- /dev/null
@@ -0,0 +1,41 @@
+#! /bin/bash
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2020 CTERA Networks. All Rights Reserved.
+#
+# FS QA Test 117
+#
+# Run unionmount testsuite on a nested overlay filesystem
+# with multi lower layers, lowermost is an overlay layer,
+# whose layers are not on same fs
+# with xino enabled (expected xino overflows)
+#
+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 --ovov=10 --xino --verify
+
+# success, all done
+echo "Silence is golden"
+status=0
+exit
diff --git a/tests/overlay/117.out b/tests/overlay/117.out
new file mode 100644 (file)
index 0000000..986c515
--- /dev/null
@@ -0,0 +1,2 @@
+QA output created by 117
+Silence is golden
index 079ff0a..047ea04 100644 (file)
 107 auto union rotate nonsamefs xino
 108 auto union rotate nonsamefs
 109 auto union rotate nonsamefs xino
+110 auto quick union nested samefs
+111 auto quick union nested samefs xino
+112 auto quick union nested nonsamefs
+113 auto quick union nested nonsamefs xino
+114 auto union rotate nested samefs
+115 auto union rotate nested samefs xino
+116 auto union rotate nested nonsamefs
+117 auto union rotate nested nonsamefs xino