@@ -334,7 +334,7 @@ _mkfs_log()
{
# create the FS
# mkfs options to append to log size otion can be specified ($*)
- export MKFS_OPTIONS="-l size=2000b -l lazy-count=1 $*"
+ export MKFS_OPTIONS="-l size=64m -l lazy-count=1 $*"
_full "mkfs"
_scratch_mkfs_xfs >>$seqres.full 2>&1
if [ $? -ne 0 ] ; then
@@ -542,17 +542,17 @@ _require_logstate()
esac
}
+# Due to minimum log size increased to 64m, small bugsize without bigger
+# su value causes mount to fail with:
+# "logbuf size must be greater than or equal to log stripe size"
_xfs_log_config()
{
echo "# mkfs-opt mount-opt"
echo "# ------------------------------"
- echo " version=2 logbsize=32k"
echo " version=2,su=4096 logbsize=32k"
echo " version=2,su=32768 logbsize=32k"
echo " version=2,su=32768 logbsize=64k"
- echo " version=2 logbsize=64k"
echo " version=2,su=64k logbsize=64k"
- echo " version=2 logbsize=128k"
echo " version=2,su=128k logbsize=128k"
echo " version=2 logbsize=256k"
echo " version=2,su=256k logbsize=256k"
@@ -82,10 +82,10 @@ _scratch_find_xfs_min_logblocks()
{
local mkfs_cmd="`_scratch_mkfs_xfs_opts`"
- # The smallest log size we can specify is 2M (XFS_MIN_LOG_BYTES) so
+ # The smallest log size we can specify is 64M (XFS_MIN_LOG_BYTES) so
# pass that in and see if mkfs succeeds or tells us what is the
# minimum log size.
- local XFS_MIN_LOG_BYTES=2097152
+ local XFS_MIN_LOG_BYTES=67108864
# Try formatting the filesystem with all the options given and the
# minimum log size. We hope either that this succeeds or that mkfs
@@ -3290,1413 +3290,3 @@ clean log
*** filesystem is checked ok ***
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls SCRATCH_MNT ***
-
-00
-01
-02
-03
-04
-05
-06
-07
-08
-09
-10
-11
-12
-13
-14
-15
-16
-17
-18
-19
-20
-21
-22
-23
-24
-25
-26
-27
-28
-29
-30
-31
-32
-33
-34
-35
-36
-37
-38
-39
-40
-41
-42
-43
-44
-45
-46
-47
-48
-49
-50
-51
-52
-53
-54
-55
-56
-57
-58
-59
-60
-61
-62
-63
-64
-65
-66
-67
-68
-69
-70
-71
-72
-73
-74
-75
-76
-77
-78
-79
-80
-81
-82
-83
-84
-85
-86
-87
-88
-89
-90
-91
-92
-93
-94
-95
-96
-97
-98
-99
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
@@ -294,129 +294,3 @@ clean log
*** filesystem is checked ok ***
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** calling fsstress -p 4 -z -f rmdir=10 -f link=10 -f creat=10 -f mkdir=10 -f rename=30 -f stat=30 -f unlink=30 -f truncate=20 -m8 -n 10000 ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** diff ls before and after ***
-
-Files TMP.ls1 and TMP.ls2 are identical
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** calling fsstress -p 4 -z -f rmdir=10 -f link=10 -f creat=10 -f mkdir=10 -f rename=30 -f stat=30 -f unlink=30 -f truncate=20 -m8 -n 10000 ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** diff ls before and after ***
-
-Files TMP.ls1 and TMP.ls2 are identical
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
-
-*** mkfs ***
-
-
-*** mount ***
-
-
-*** calling fsstress -p 4 -z -f rmdir=10 -f link=10 -f creat=10 -f mkdir=10 -f rename=30 -f stat=30 -f unlink=30 -f truncate=20 -m8 -n 10000 ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** godown ***
-
-
-*** unmount ***
-
-
-*** logprint after going down... ***
-
-dirty log
-
-*** mount with replay ***
-
-
-*** ls -RF SCRATCH_MNT ***
-
-
-*** diff ls before and after ***
-
-Files TMP.ls1 and TMP.ls2 are identical
-
-*** unmount ***
-
-
-*** logprint after mount and replay... ***
-
-clean log
-
-*** filesystem is checked ok ***
-
@@ -104,7 +104,7 @@ _grow_loop $((168024*4096)) 1376452608 4096 1
# Some other blocksize cases...
_grow_loop $((168024*4096)) 1376452608 2048 1
-_grow_loop $((168024*4096)) 1376452608 512 1 16m
+_grow_loop $((168024*4096)) 1376452608 512 1 70m
_grow_loop $((168024*4096)) 688230400 1024 1
# Other corner cases suggested by dgc
@@ -35,12 +35,12 @@ _set_stream_timeout_centisecs 12000
# for small filesystems, so we make sure there's one more AG than filestreams
# to encourage the allocator to skip whichever AG owns the log.
#
-# This test exercises 64x 16MB AGs, 8 filestreams, 100 files per stream, and
+# This test exercises 64x 68MB AGs, 32 filestreams, 100 files per stream, and
# 1MB per file.
-_test_streams 65 16 8 100 1 1 0
-_test_streams 65 16 8 100 1 1 1
-_test_streams 65 16 8 100 1 0 0
-_test_streams 65 16 8 100 1 0 1
+_test_streams 65 68 32 100 1 1 0
+_test_streams 65 68 32 100 1 1 1
+_test_streams 65 68 32 100 1 0 0
+_test_streams 65 68 32 100 1 0 1
status=0
exit
@@ -1,20 +1,20 @@
QA output created by 171
-# testing 65 16 8 100 1 1 0 ....
+# testing 65 68 32 100 1 1 0 ....
# streaming
# sync AGs...
# checking stream AGs...
+ passed, streams are in seperate AGs
-# testing 65 16 8 100 1 1 1 ....
+# testing 65 68 32 100 1 1 1 ....
# streaming
# sync AGs...
# checking stream AGs...
+ passed, streams are in seperate AGs
-# testing 65 16 8 100 1 0 0 ....
+# testing 65 68 32 100 1 0 0 ....
# streaming
# sync AGs...
# checking stream AGs...
+ passed, streams are in seperate AGs
-# testing 65 16 8 100 1 0 1 ....
+# testing 65 68 32 100 1 0 1 ....
# streaming
# sync AGs...
# checking stream AGs...
@@ -43,8 +43,8 @@ _check_filestreams_support || _notrun "filestreams not available"
# for buffered, succeed for direct I/O.
_set_stream_timeout_centisecs 50
-_test_streams 8 16 4 8 3 1 0 fail
-_test_streams 64 16 20 10 1 0 1
+_test_streams 8 68 4 8 12 1 0 fail
+_test_streams 64 68 20 10 4 0 1
status=0
exit
@@ -1,10 +1,10 @@
QA output created by 172
-# testing 8 16 4 8 3 1 0 fail ....
+# testing 8 68 4 8 12 1 0 fail ....
# streaming
# sync AGs...
# checking stream AGs...
+ expected failure, matching AGs
-# testing 64 16 20 10 1 0 1 ....
+# testing 64 68 20 10 4 0 1 ....
# streaming
# sync AGs...
# checking stream AGs...
@@ -32,12 +32,12 @@ _set_stream_timeout_centisecs 12000
# filesystems, so we make sure there's one more AG than filestreams to
# encourage the allocator to skip whichever AG owns the log.
#
-# Exercise 65x 16MB AGs, 32/33 filestreams, 8 files per stream, and 2MB per
+# Exercise 65x 68MB AGs, 32/33 filestreams, 8 files per stream, and 9MB per
# file.
-_test_streams 65 16 34 8 2 1 1 fail
-_test_streams 65 16 32 8 2 0 1
-_test_streams 65 16 34 8 2 0 0 fail
-_test_streams 65 16 32 8 2 1 0
+_test_streams 65 68 34 8 9 1 1 fail
+_test_streams 65 68 32 8 9 0 1
+_test_streams 65 68 34 8 9 0 0 fail
+_test_streams 65 68 32 8 9 1 0
status=0
exit
@@ -1,20 +1,20 @@
QA output created by 173
-# testing 65 16 34 8 2 1 1 fail ....
+# testing 65 68 34 8 9 1 1 fail ....
# streaming
# sync AGs...
# checking stream AGs...
+ expected failure, matching AGs
-# testing 65 16 32 8 2 0 1 ....
+# testing 65 68 32 8 9 0 1 ....
# streaming
# sync AGs...
# checking stream AGs...
+ passed, streams are in seperate AGs
-# testing 65 16 34 8 2 0 0 fail ....
+# testing 65 68 34 8 9 0 0 fail ....
# streaming
# sync AGs...
# checking stream AGs...
+ expected failure, matching AGs
-# testing 65 16 32 8 2 1 0 ....
+# testing 65 68 32 8 9 1 0 ....
# streaming
# sync AGs...
# checking stream AGs...
@@ -69,7 +69,7 @@ mkfs_filter()
# mkfs slightly smaller than that, small log for speed.
echo "=== mkfs.xfs ==="
-mkfs.xfs -f -bsize=4096 -l size=32m -dagsize=76288719b,size=3905982455b \
+mkfs.xfs -f -bsize=4096 -l size=64m -dagsize=76288719b,size=3905982455b \
$tmpfile | mkfs_filter
mount -o loop $tmpfile $tmpdir || _fail "!!! failed to loopback mount"
@@ -56,8 +56,10 @@ _test_loop()
$MKFS_XFS_PROG -d $dparam \
| _filter_mkfs 2>/dev/null
+ # _fail to avoid writing $TEST_DIR
echo "*** mount loop filesystem"
- mount -t xfs -o loop $LOOP_DEV $LOOP_MNT
+ mount -t xfs -o loop $LOOP_DEV $LOOP_MNT ||
+ _fail "failed to mount loopback mount point"
echo "*** preallocate large file"
$XFS_IO_PROG -f -c "resvsp 0 $fsize" $LOOP_MNT/foo | _filter_io
@@ -69,7 +71,7 @@ _test_loop()
_check_xfs_filesystem $LOOP_DEV none none
}
-_test_loop 50g 16m 40G
+_test_loop 50g 68m 40G
echo "*** done"
status=0
exit
@@ -49,7 +49,7 @@ for del in $sizes_to_check; do
>/dev/null 2>&1 || echo "dd failed"
lofile=$(losetup -f)
losetup $lofile "$testfile"
- $MKFS_XFS_PROG -l size=32m -b size=$bs $lofile | _filter_mkfs \
+ $MKFS_XFS_PROG -l size=64m -b size=$bs $lofile | _filter_mkfs \
>/dev/null 2> $tmp.mkfs || echo "mkfs failed!"
. $tmp.mkfs
sync
@@ -47,7 +47,7 @@ _check_filestreams_support || _notrun "filestreams not available"
unset SCRATCH_RTDEV
# use small AGs for frequent stream switching
-_scratch_mkfs_xfs -d agsize=20m,size=2g >> $seqres.full 2>&1 ||
+_scratch_mkfs_xfs -d agsize=68m,size=2g >> $seqres.full 2>&1 ||
_fail "mkfs failed"
_scratch_mount "-o filestreams"
Since this xfsprogs commit: 6e0ed3d19c54 mkfs: stop allowing tiny filesystems XFS requires filesystem log size bigger then 64m(so does AG size). Increase thoese numbers to 64m at least. Signed-off-by: Murphy Zhou <jencce.kernel@gmail.com> --- common/log | 8 +- common/xfs | 4 +- tests/generic/054.out | 1410 ----------------------------------------- tests/generic/055.out | 126 ---- tests/xfs/078 | 2 +- tests/xfs/171 | 10 +- tests/xfs/171.out | 8 +- tests/xfs/172 | 4 +- tests/xfs/172.out | 4 +- tests/xfs/173 | 10 +- tests/xfs/173.out | 8 +- tests/xfs/206 | 2 +- tests/xfs/250 | 6 +- tests/xfs/259 | 2 +- tests/xfs/445 | 2 +- 15 files changed, 36 insertions(+), 1570 deletions(-)