* [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg
@ 2017-04-21 10:10 Xiao Yang
2017-04-21 10:10 ` [PATCH 2/2] btrfs: use $FILEFRAG_PROG instead of filefrag Xiao Yang
2017-04-24 4:47 ` [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg Eryu Guan
0 siblings, 2 replies; 10+ messages in thread
From: Xiao Yang @ 2017-04-21 10:10 UTC (permalink / raw)
To: guaneryu; +Cc: fstests, Xiao Yang
On ext4 filesystem, the kernel carshes at mount time when
s_first_meta_bg's value exceeds the largest possible meta_bg
number. This kernel bug has been fixed in:
3a4b77c ext4: validate s_first_meta_bg at mount time
Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
---
tests/ext4/025 | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
tests/ext4/025.out | 4 ++++
tests/ext4/group | 1 +
3 files changed, 74 insertions(+)
create mode 100755 tests/ext4/025
create mode 100644 tests/ext4/025.out
diff --git a/tests/ext4/025 b/tests/ext4/025
new file mode 100755
index 0000000..085c52f
--- /dev/null
+++ b/tests/ext4/025
@@ -0,0 +1,69 @@
+#! /bin/bash
+# FS QA Test ext4/025
+#
+# Regression test for commit:
+# 3a4b77c ("ext4: validate s_first_meta_bg at mount time").
+#
+#-----------------------------------------------------------------------
+# Copyright (c) 2017 Fujitsu. All Rights Reserved.
+# Author: Xiao Yang <yangx.jy@cn.fujitsu.com>
+#
+# 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
+#-----------------------------------------------------------------------
+
+
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+tmp=/tmp/$$
+status=1 # failure is the default!
+trap "_cleanup; exit \$status" 0 1 2 3 15
+
+_cleanup()
+{
+ rm -f $tmp.*
+}
+
+# get standard environment and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+_supported_fs ext4
+_supported_os Linux
+_require_scratch
+_require_scratch_nocheck
+_require_command "$DEBUGFS_PROG" debugfs
+_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
+
+echo "Create ext4 fs and modify first_meta_bg's value"
+$MKFS_EXT4_PROG -F -b 4096 -O bigalloc,meta_bg,^resize_inode $SCRATCH_DEV 16m >> $seqres.full 2>&1 \
+ || _notrun "Could not create ext4 filesystem"
+
+$DEBUGFS_PROG -w -R "ssv first_meta_bg 842150400" $SCRATCH_DEV >> $seqres.full 2>&1
+
+# check whether debugfs succeeds to set first_meta_bg to 842150400 or not
+$DEBUGFS_PROG -R "show_super_stats" $SCRATCH_DEV 2>&1 | grep -q "First meta block group: 842150400" \
+ || _notrun "Could not set first_meta_bg to 842150400 successfully, skip test."
+
+echo "Try to mount a modified ext4 fs"
+_scratch_mount >> $seqres.full 2>&1 || echo "Fail to mount ext4 fs expectedly"
+
+# success, all done
+status=0
+exit
diff --git a/tests/ext4/025.out b/tests/ext4/025.out
new file mode 100644
index 0000000..f9a76bb
--- /dev/null
+++ b/tests/ext4/025.out
@@ -0,0 +1,4 @@
+QA output created by 025
+Create ext4 fs and modify first_meta_bg's value
+Try to mount a modified ext4 fs
+Fail to mount ext4 fs expectedly
diff --git a/tests/ext4/group b/tests/ext4/group
index cac5aa5..c42a4d5 100644
--- a/tests/ext4/group
+++ b/tests/ext4/group
@@ -27,6 +27,7 @@
022 auto quick attr dangerous
023 auto quick scrub
024 auto quick encrypt dangerous
+025 auto quick dangerous
271 auto rw quick
301 aio auto ioctl rw stress defrag
302 aio auto ioctl rw stress defrag
--
1.8.3.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH 2/2] btrfs: use $FILEFRAG_PROG instead of filefrag
2017-04-21 10:10 [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg Xiao Yang
@ 2017-04-21 10:10 ` Xiao Yang
2017-04-24 4:47 ` [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg Eryu Guan
1 sibling, 0 replies; 10+ messages in thread
From: Xiao Yang @ 2017-04-21 10:10 UTC (permalink / raw)
To: guaneryu; +Cc: fstests, Xiao Yang
$FILEFRAG_PROG has been defined in common/config, so
we could apply it.
Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
---
tests/btrfs/004 | 4 ++--
tests/btrfs/079 | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/tests/btrfs/004 b/tests/btrfs/004
index 3f8330f..1b5b124 100755
--- a/tests/btrfs/004
+++ b/tests/btrfs/004
@@ -53,7 +53,7 @@ _require_scratch
_require_no_large_scratch_dev
_require_btrfs_command inspect-internal logical-resolve
_require_btrfs_command inspect-internal inode-resolve
-_require_command "/usr/sbin/filefrag" filefrag
+_require_command "$FILEFRAG_PROG" filefrag
rm -f $seqres.full
@@ -82,7 +82,7 @@ _filter_extents()
_check_file_extents()
{
- cmd="filefrag -v $1"
+ cmd="$FILEFRAG_PROG -v $1"
echo "# $cmd" >> $seqres.full
out=`$cmd | _filter_extents`
if [ -z "$out" ]; then
diff --git a/tests/btrfs/079 b/tests/btrfs/079
index ed4eb72..560d5ec 100755
--- a/tests/btrfs/079
+++ b/tests/btrfs/079
@@ -60,7 +60,7 @@ _supported_os Linux
_require_scratch
# Since xfs_io's fiemap always use SYNC flag and can't be unset,
# we must use filefrag to call fiemap without SYNC flag.
-_require_command "/usr/sbin/filefrag" filefrag
+_require_command "$FILEFRAG_PROG" filefrag
_require_xfs_io_command "falloc"
filesize=$((10 * 1024 * 1024 * 1024)) #10G size
@@ -95,7 +95,7 @@ _filter_error() {
fiemap_work() {
filename=$1
while true; do
- filefrag $filename 2> $tmp.output 1> /dev/null
+ $FILEFRAG_PROG $filename 2> $tmp.output 1> /dev/null
ret=$?
err=`cat $tmp.output | _filter_error`
if [ $ret -ne 0 -o -n "$err" ]; then
--
1.8.3.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg
2017-04-21 10:10 [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg Xiao Yang
2017-04-21 10:10 ` [PATCH 2/2] btrfs: use $FILEFRAG_PROG instead of filefrag Xiao Yang
@ 2017-04-24 4:47 ` Eryu Guan
2017-04-24 5:52 ` Xiao Yang
2017-04-24 6:34 ` [PATCH v2] " Xiao Yang
1 sibling, 2 replies; 10+ messages in thread
From: Eryu Guan @ 2017-04-24 4:47 UTC (permalink / raw)
To: Xiao Yang; +Cc: fstests
On Fri, Apr 21, 2017 at 06:10:39PM +0800, Xiao Yang wrote:
> On ext4 filesystem, the kernel carshes at mount time when
> s_first_meta_bg's value exceeds the largest possible meta_bg
> number. This kernel bug has been fixed in:
>
> 3a4b77c ext4: validate s_first_meta_bg at mount time
>
> Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
> ---
> tests/ext4/025 | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
> tests/ext4/025.out | 4 ++++
> tests/ext4/group | 1 +
> 3 files changed, 74 insertions(+)
> create mode 100755 tests/ext4/025
> create mode 100644 tests/ext4/025.out
>
> diff --git a/tests/ext4/025 b/tests/ext4/025
> new file mode 100755
> index 0000000..085c52f
> --- /dev/null
> +++ b/tests/ext4/025
> @@ -0,0 +1,69 @@
> +#! /bin/bash
> +# FS QA Test ext4/025
> +#
> +# Regression test for commit:
> +# 3a4b77c ("ext4: validate s_first_meta_bg at mount time").
> +#
> +#-----------------------------------------------------------------------
> +# Copyright (c) 2017 Fujitsu. All Rights Reserved.
> +# Author: Xiao Yang <yangx.jy@cn.fujitsu.com>
> +#
> +# 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
> +#-----------------------------------------------------------------------
> +
> +
> +seq=`basename $0`
> +seqres=$RESULT_DIR/$seq
> +echo "QA output created by $seq"
> +
> +tmp=/tmp/$$
> +status=1 # failure is the default!
> +trap "_cleanup; exit \$status" 0 1 2 3 15
> +
> +_cleanup()
> +{
> + rm -f $tmp.*
> +}
> +
> +# get standard environment and checks
> +. ./common/rc
> +. ./common/filter
> +
> +# remove previous $seqres.full before test
> +rm -f $seqres.full
> +
> +# real QA test starts here
> +_supported_fs ext4
> +_supported_os Linux
> +_require_scratch
> +_require_scratch_nocheck
_require_scratch_nocheck is sufficient, don't need _require_scratch
> +_require_command "$DEBUGFS_PROG" debugfs
> +_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
> +
> +echo "Create ext4 fs and modify first_meta_bg's value"
> +$MKFS_EXT4_PROG -F -b 4096 -O bigalloc,meta_bg,^resize_inode $SCRATCH_DEV 16m >> $seqres.full 2>&1 \
> + || _notrun "Could not create ext4 filesystem"
_scratch_mkfs "-O bigalloc,meta_bg,^resize_inode" >> $seqres.full 2>&1
should be fine, if there're conflicts between MKFS_OPTIONS and these
extra mkfs options _scratch_mkfs will mkfs again only with test-provided
mkfs options.
> +
> +$DEBUGFS_PROG -w -R "ssv first_meta_bg 842150400" $SCRATCH_DEV >> $seqres.full 2>&1
> +
> +# check whether debugfs succeeds to set first_meta_bg to 842150400 or not
> +$DEBUGFS_PROG -R "show_super_stats" $SCRATCH_DEV 2>&1 | grep -q "First meta block group: 842150400" \
> + || _notrun "Could not set first_meta_bg to 842150400 successfully, skip test."
> +
> +echo "Try to mount a modified ext4 fs"
> +_scratch_mount >> $seqres.full 2>&1 || echo "Fail to mount ext4 fs expectedly"
> +
> +# success, all done
> +status=0
> +exit
> diff --git a/tests/ext4/025.out b/tests/ext4/025.out
> new file mode 100644
> index 0000000..f9a76bb
> --- /dev/null
> +++ b/tests/ext4/025.out
> @@ -0,0 +1,4 @@
> +QA output created by 025
> +Create ext4 fs and modify first_meta_bg's value
> +Try to mount a modified ext4 fs
> +Fail to mount ext4 fs expectedly
> diff --git a/tests/ext4/group b/tests/ext4/group
> index cac5aa5..c42a4d5 100644
> --- a/tests/ext4/group
> +++ b/tests/ext4/group
> @@ -27,6 +27,7 @@
> 022 auto quick attr dangerous
> 023 auto quick scrub
> 024 auto quick encrypt dangerous
> +025 auto quick dangerous
Can be in fuzzers group too.
Thanks,
Eryu
> 271 auto rw quick
> 301 aio auto ioctl rw stress defrag
> 302 aio auto ioctl rw stress defrag
> --
> 1.8.3.1
>
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe fstests" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg
2017-04-24 4:47 ` [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg Eryu Guan
@ 2017-04-24 5:52 ` Xiao Yang
2017-04-24 8:43 ` Eryu Guan
2017-04-24 16:40 ` [PATCH 1/2] " Darrick J. Wong
2017-04-24 6:34 ` [PATCH v2] " Xiao Yang
1 sibling, 2 replies; 10+ messages in thread
From: Xiao Yang @ 2017-04-24 5:52 UTC (permalink / raw)
To: Eryu Guan; +Cc: fstests
On 2017/04/24 12:47, Eryu Guan wrote:
> On Fri, Apr 21, 2017 at 06:10:39PM +0800, Xiao Yang wrote:
>> On ext4 filesystem, the kernel carshes at mount time when
>> s_first_meta_bg's value exceeds the largest possible meta_bg
>> number. This kernel bug has been fixed in:
>>
>> 3a4b77c ext4: validate s_first_meta_bg at mount time
>>
>> Signed-off-by: Xiao Yang<yangx.jy@cn.fujitsu.com>
>> ---
>> tests/ext4/025 | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
>> tests/ext4/025.out | 4 ++++
>> tests/ext4/group | 1 +
>> 3 files changed, 74 insertions(+)
>> create mode 100755 tests/ext4/025
>> create mode 100644 tests/ext4/025.out
>>
>> diff --git a/tests/ext4/025 b/tests/ext4/025
>> new file mode 100755
>> index 0000000..085c52f
>> --- /dev/null
>> +++ b/tests/ext4/025
>> @@ -0,0 +1,69 @@
>> +#! /bin/bash
>> +# FS QA Test ext4/025
>> +#
>> +# Regression test for commit:
>> +# 3a4b77c ("ext4: validate s_first_meta_bg at mount time").
>> +#
>> +#-----------------------------------------------------------------------
>> +# Copyright (c) 2017 Fujitsu. All Rights Reserved.
>> +# Author: Xiao Yang<yangx.jy@cn.fujitsu.com>
>> +#
>> +# 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
>> +#-----------------------------------------------------------------------
>> +
>> +
>> +seq=`basename $0`
>> +seqres=$RESULT_DIR/$seq
>> +echo "QA output created by $seq"
>> +
>> +tmp=/tmp/$$
>> +status=1 # failure is the default!
>> +trap "_cleanup; exit \$status" 0 1 2 3 15
>> +
>> +_cleanup()
>> +{
>> + rm -f $tmp.*
>> +}
>> +
>> +# get standard environment and checks
>> +. ./common/rc
>> +. ./common/filter
>> +
>> +# remove previous $seqres.full before test
>> +rm -f $seqres.full
>> +
>> +# real QA test starts here
>> +_supported_fs ext4
>> +_supported_os Linux
>> +_require_scratch
>> +_require_scratch_nocheck
> _require_scratch_nocheck is sufficient, don't need _require_scratch
>
Hi Eryu
Agreed. :-)
>> +_require_command "$DEBUGFS_PROG" debugfs
>> +_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
>> +
>> +echo "Create ext4 fs and modify first_meta_bg's value"
>> +$MKFS_EXT4_PROG -F -b 4096 -O bigalloc,meta_bg,^resize_inode $SCRATCH_DEV 16m>> $seqres.full 2>&1 \
>> + || _notrun "Could not create ext4 filesystem"
> _scratch_mkfs "-O bigalloc,meta_bg,^resize_inode">> $seqres.full 2>&1
>
> should be fine, if there're conflicts between MKFS_OPTIONS and these
> extra mkfs options _scratch_mkfs will mkfs again only with test-provided
> mkfs options.
>
I will use _scratch_mkfs as you said. However, i still specify 4096 as
block size, because debugfs can't set first_meta_bg
to 842150400 on RHEL7 when default block size is 1024. Please see the
following e2fsprogs bug:
commit d36b957b345ee6e4b529be99b8fdc8d3e70ccdc1
Author: Darrick J. Wong <darrick.wong@oracle.com>
Date: Sat Jan 11 13:58:15 2014 -0500
libext2fs: don't always read backup group descriptors on a 1k-block
meta_bg fs
>> +
>> +$DEBUGFS_PROG -w -R "ssv first_meta_bg 842150400" $SCRATCH_DEV>> $seqres.full 2>&1
>> +
>> +# check whether debugfs succeeds to set first_meta_bg to 842150400 or not
>> +$DEBUGFS_PROG -R "show_super_stats" $SCRATCH_DEV 2>&1 | grep -q "First meta block group: 842150400" \
>> + || _notrun "Could not set first_meta_bg to 842150400 successfully, skip test."
>> +
>> +echo "Try to mount a modified ext4 fs"
>> +_scratch_mount>> $seqres.full 2>&1 || echo "Fail to mount ext4 fs expectedly"
>> +
>> +# success, all done
>> +status=0
>> +exit
>> diff --git a/tests/ext4/025.out b/tests/ext4/025.out
>> new file mode 100644
>> index 0000000..f9a76bb
>> --- /dev/null
>> +++ b/tests/ext4/025.out
>> @@ -0,0 +1,4 @@
>> +QA output created by 025
>> +Create ext4 fs and modify first_meta_bg's value
>> +Try to mount a modified ext4 fs
>> +Fail to mount ext4 fs expectedly
>> diff --git a/tests/ext4/group b/tests/ext4/group
>> index cac5aa5..c42a4d5 100644
>> --- a/tests/ext4/group
>> +++ b/tests/ext4/group
>> @@ -27,6 +27,7 @@
>> 022 auto quick attr dangerous
>> 023 auto quick scrub
>> 024 auto quick encrypt dangerous
>> +025 auto quick dangerous
> Can be in fuzzers group too.
>
I will add it. :-)
Thanks,
Xiao Yang.
> Thanks,
> Eryu
>> 271 auto rw quick
>> 301 aio auto ioctl rw stress defrag
>> 302 aio auto ioctl rw stress defrag
>> --
>> 1.8.3.1
>>
>>
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe fstests" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
> --
> To unsubscribe from this list: send the line "unsubscribe fstests" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
> .
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v2] ext4: check mount's handling for very large s_first_meta_bg
2017-04-24 4:47 ` [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg Eryu Guan
2017-04-24 5:52 ` Xiao Yang
@ 2017-04-24 6:34 ` Xiao Yang
1 sibling, 0 replies; 10+ messages in thread
From: Xiao Yang @ 2017-04-24 6:34 UTC (permalink / raw)
To: eguan; +Cc: fstests, Xiao Yang
On ext4 filesystem, the kernel carshes at mount time when
s_first_meta_bg's value exceeds the largest possible meta_bg
number. This kernel bug has been fixed in:
3a4b77c ext4: validate s_first_meta_bg at mount time
Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
---
tests/ext4/025 | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
tests/ext4/025.out | 4 ++++
tests/ext4/group | 1 +
3 files changed, 72 insertions(+)
create mode 100755 tests/ext4/025
create mode 100644 tests/ext4/025.out
diff --git a/tests/ext4/025 b/tests/ext4/025
new file mode 100755
index 0000000..703250c
--- /dev/null
+++ b/tests/ext4/025
@@ -0,0 +1,67 @@
+#! /bin/bash
+# FS QA Test ext4/025
+#
+# Regression test for commit:
+# 3a4b77c ("ext4: validate s_first_meta_bg at mount time").
+#
+#-----------------------------------------------------------------------
+# Copyright (c) 2017 Fujitsu. All Rights Reserved.
+# Author: Xiao Yang <yangx.jy@cn.fujitsu.com>
+#
+# 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
+#-----------------------------------------------------------------------
+
+
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+tmp=/tmp/$$
+status=1 # failure is the default!
+trap "_cleanup; exit \$status" 0 1 2 3 15
+
+_cleanup()
+{
+ rm -f $tmp.*
+}
+
+# get standard environment and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+_supported_fs ext4
+_supported_os Linux
+_require_scratch_nocheck
+_require_command "$DEBUGFS_PROG" debugfs
+_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
+
+echo "Create ext4 fs and modify first_meta_bg's value"
+_scratch_mkfs "-b 4096 -O bigalloc,meta_bg,^resize_inode" >> $seqres.full 2>&1
+
+$DEBUGFS_PROG -w -R "ssv first_meta_bg 842150400" $SCRATCH_DEV >> $seqres.full 2>&1
+
+# check whether debugfs succeeds to set first_meta_bg to 842150400 or not
+$DEBUGFS_PROG -R "show_super_stats" $SCRATCH_DEV 2>&1 | grep -q "First meta block group: 842150400" \
+ || _notrun "Could not set first_meta_bg to 842150400 successfully, skip test."
+
+echo "Try to mount a modified ext4 fs"
+_scratch_mount >> $seqres.full 2>&1 || echo "Fail to mount ext4 fs expectedly"
+
+# success, all done
+status=0
+exit
diff --git a/tests/ext4/025.out b/tests/ext4/025.out
new file mode 100644
index 0000000..f9a76bb
--- /dev/null
+++ b/tests/ext4/025.out
@@ -0,0 +1,4 @@
+QA output created by 025
+Create ext4 fs and modify first_meta_bg's value
+Try to mount a modified ext4 fs
+Fail to mount ext4 fs expectedly
diff --git a/tests/ext4/group b/tests/ext4/group
index cac5aa5..47c71b9 100644
--- a/tests/ext4/group
+++ b/tests/ext4/group
@@ -27,6 +27,7 @@
022 auto quick attr dangerous
023 auto quick scrub
024 auto quick encrypt dangerous
+025 auto quick fuzzers dangerous
271 auto rw quick
301 aio auto ioctl rw stress defrag
302 aio auto ioctl rw stress defrag
--
1.8.3.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg
2017-04-24 5:52 ` Xiao Yang
@ 2017-04-24 8:43 ` Eryu Guan
2017-04-24 9:46 ` Xiao Yang
2017-04-24 9:57 ` [PATCH v3] " Xiao Yang
2017-04-24 16:40 ` [PATCH 1/2] " Darrick J. Wong
1 sibling, 2 replies; 10+ messages in thread
From: Eryu Guan @ 2017-04-24 8:43 UTC (permalink / raw)
To: Xiao Yang; +Cc: fstests
On Mon, Apr 24, 2017 at 01:52:26PM +0800, Xiao Yang wrote:
> > > +_require_command "$DEBUGFS_PROG" debugfs
> > > +_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
> > > +
> > > +echo "Create ext4 fs and modify first_meta_bg's value"
> > > +$MKFS_EXT4_PROG -F -b 4096 -O bigalloc,meta_bg,^resize_inode $SCRATCH_DEV 16m>> $seqres.full 2>&1 \
> > > + || _notrun "Could not create ext4 filesystem"
> > _scratch_mkfs "-O bigalloc,meta_bg,^resize_inode">> $seqres.full 2>&1
> >
> > should be fine, if there're conflicts between MKFS_OPTIONS and these
> > extra mkfs options _scratch_mkfs will mkfs again only with test-provided
> > mkfs options.
> >
> I will use _scratch_mkfs as you said. However, i still specify 4096 as
> block size, because debugfs can't set first_meta_bg
> to 842150400 on RHEL7 when default block size is 1024. Please see the
> following e2fsprogs bug:
>
> commit d36b957b345ee6e4b529be99b8fdc8d3e70ccdc1
> Author: Darrick J. Wong <darrick.wong@oracle.com>
> Date: Sat Jan 11 13:58:15 2014 -0500
>
> libext2fs: don't always read backup group descriptors on a 1k-block
> meta_bg fs
I noticed this too, debugfs failed to open ext4 fs when block size is 1k
when testing on my rhel7 host. But I think what should be done is fixing
e2fsprogs on RHEL7 not workarounding the bug in the test code. The test
is doing nothing wrong, and it 'finds' a bug (test not run).
This leads me to wonder if we should skip this test if debugfs hanppened
to fail to set first_meta_bg? So that test would fail explicitly (mount
succeeds unexpectedly) instead of _notrun and being ignored.
Thanks,
Eryu
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg
2017-04-24 8:43 ` Eryu Guan
@ 2017-04-24 9:46 ` Xiao Yang
2017-04-24 9:57 ` [PATCH v3] " Xiao Yang
1 sibling, 0 replies; 10+ messages in thread
From: Xiao Yang @ 2017-04-24 9:46 UTC (permalink / raw)
To: Eryu Guan; +Cc: fstests
On 2017/04/24 16:43, Eryu Guan wrote:
> On Mon, Apr 24, 2017 at 01:52:26PM +0800, Xiao Yang wrote:
>
>>>> +_require_command "$DEBUGFS_PROG" debugfs
>>>> +_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
>>>> +
>>>> +echo "Create ext4 fs and modify first_meta_bg's value"
>>>> +$MKFS_EXT4_PROG -F -b 4096 -O bigalloc,meta_bg,^resize_inode $SCRATCH_DEV 16m>> $seqres.full 2>&1 \
>>>> + || _notrun "Could not create ext4 filesystem"
>>> _scratch_mkfs "-O bigalloc,meta_bg,^resize_inode">> $seqres.full 2>&1
>>>
>>> should be fine, if there're conflicts between MKFS_OPTIONS and these
>>> extra mkfs options _scratch_mkfs will mkfs again only with test-provided
>>> mkfs options.
>>>
>> I will use _scratch_mkfs as you said. However, i still specify 4096 as
>> block size, because debugfs can't set first_meta_bg
>> to 842150400 on RHEL7 when default block size is 1024. Please see the
>> following e2fsprogs bug:
>>
>> commit d36b957b345ee6e4b529be99b8fdc8d3e70ccdc1
>> Author: Darrick J. Wong<darrick.wong@oracle.com>
>> Date: Sat Jan 11 13:58:15 2014 -0500
>>
>> libext2fs: don't always read backup group descriptors on a 1k-block
>> meta_bg fs
> I noticed this too, debugfs failed to open ext4 fs when block size is 1k
> when testing on my rhel7 host. But I think what should be done is fixing
> e2fsprogs on RHEL7 not workarounding the bug in the test code. The test
> is doing nothing wrong, and it 'finds' a bug (test not run).
>
> This leads me to wonder if we should skip this test if debugfs hanppened
> to fail to set first_meta_bg? So that test would fail explicitly (mount
> succeeds unexpectedly) instead of _notrun and being ignored.
>
Hi Eryu
Agreed, we should indicate various bugs instead of ignoring them, so i
will send v3 patch.
Thanks for your comment. :-)
Thanks,
Xiao Yang
> Thanks,
> Eryu
>
>
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v3] ext4: check mount's handling for very large s_first_meta_bg
2017-04-24 8:43 ` Eryu Guan
2017-04-24 9:46 ` Xiao Yang
@ 2017-04-24 9:57 ` Xiao Yang
1 sibling, 0 replies; 10+ messages in thread
From: Xiao Yang @ 2017-04-24 9:57 UTC (permalink / raw)
To: eguan; +Cc: fstests, Xiao Yang
On ext4 filesystem, the kernel carshes at mount time when
s_first_meta_bg's value exceeds the largest possible meta_bg
number. This kernel bug has been fixed in:
3a4b77c ext4: validate s_first_meta_bg at mount time
Signed-off-by: Xiao Yang <yangx.jy@cn.fujitsu.com>
---
tests/ext4/025 | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
tests/ext4/025.out | 4 ++++
tests/ext4/group | 1 +
3 files changed, 68 insertions(+)
create mode 100755 tests/ext4/025
create mode 100644 tests/ext4/025.out
diff --git a/tests/ext4/025 b/tests/ext4/025
new file mode 100755
index 0000000..d2a9327
--- /dev/null
+++ b/tests/ext4/025
@@ -0,0 +1,63 @@
+#! /bin/bash
+# FS QA Test ext4/025
+#
+# Regression test for commit:
+# 3a4b77c ("ext4: validate s_first_meta_bg at mount time").
+#
+#-----------------------------------------------------------------------
+# Copyright (c) 2017 Fujitsu. All Rights Reserved.
+# Author: Xiao Yang <yangx.jy@cn.fujitsu.com>
+#
+# 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
+#-----------------------------------------------------------------------
+
+
+seq=`basename $0`
+seqres=$RESULT_DIR/$seq
+echo "QA output created by $seq"
+
+tmp=/tmp/$$
+status=1 # failure is the default!
+trap "_cleanup; exit \$status" 0 1 2 3 15
+
+_cleanup()
+{
+ rm -f $tmp.*
+}
+
+# get standard environment and checks
+. ./common/rc
+. ./common/filter
+
+# remove previous $seqres.full before test
+rm -f $seqres.full
+
+# real QA test starts here
+_supported_fs ext4
+_supported_os Linux
+_require_scratch_nocheck
+_require_command "$DEBUGFS_PROG" debugfs
+_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
+
+echo "Create ext4 fs and modify first_meta_bg's value"
+_scratch_mkfs "-O bigalloc,meta_bg,^resize_inode" >> $seqres.full 2>&1
+
+$DEBUGFS_PROG -w -R "ssv first_meta_bg 842150400" $SCRATCH_DEV >> $seqres.full 2>&1
+
+echo "Try to mount a modified ext4 fs"
+_scratch_mount >> $seqres.full 2>&1 || echo "Fail to mount ext4 fs expectedly"
+
+# success, all done
+status=0
+exit
diff --git a/tests/ext4/025.out b/tests/ext4/025.out
new file mode 100644
index 0000000..f9a76bb
--- /dev/null
+++ b/tests/ext4/025.out
@@ -0,0 +1,4 @@
+QA output created by 025
+Create ext4 fs and modify first_meta_bg's value
+Try to mount a modified ext4 fs
+Fail to mount ext4 fs expectedly
diff --git a/tests/ext4/group b/tests/ext4/group
index cac5aa5..47c71b9 100644
--- a/tests/ext4/group
+++ b/tests/ext4/group
@@ -27,6 +27,7 @@
022 auto quick attr dangerous
023 auto quick scrub
024 auto quick encrypt dangerous
+025 auto quick fuzzers dangerous
271 auto rw quick
301 aio auto ioctl rw stress defrag
302 aio auto ioctl rw stress defrag
--
1.8.3.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg
2017-04-24 5:52 ` Xiao Yang
2017-04-24 8:43 ` Eryu Guan
@ 2017-04-24 16:40 ` Darrick J. Wong
2017-04-25 1:22 ` Xiao Yang
1 sibling, 1 reply; 10+ messages in thread
From: Darrick J. Wong @ 2017-04-24 16:40 UTC (permalink / raw)
To: Xiao Yang; +Cc: Eryu Guan, fstests
On Mon, Apr 24, 2017 at 01:52:26PM +0800, Xiao Yang wrote:
> On 2017/04/24 12:47, Eryu Guan wrote:
> >On Fri, Apr 21, 2017 at 06:10:39PM +0800, Xiao Yang wrote:
> >>On ext4 filesystem, the kernel carshes at mount time when
> >>s_first_meta_bg's value exceeds the largest possible meta_bg
> >>number. This kernel bug has been fixed in:
> >>
> >>3a4b77c ext4: validate s_first_meta_bg at mount time
> >>
> >>Signed-off-by: Xiao Yang<yangx.jy@cn.fujitsu.com>
> >>---
> >> tests/ext4/025 | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
> >> tests/ext4/025.out | 4 ++++
> >> tests/ext4/group | 1 +
> >> 3 files changed, 74 insertions(+)
> >> create mode 100755 tests/ext4/025
> >> create mode 100644 tests/ext4/025.out
> >>
> >>diff --git a/tests/ext4/025 b/tests/ext4/025
> >>new file mode 100755
> >>index 0000000..085c52f
> >>--- /dev/null
> >>+++ b/tests/ext4/025
> >>@@ -0,0 +1,69 @@
> >>+#! /bin/bash
> >>+# FS QA Test ext4/025
> >>+#
> >>+# Regression test for commit:
> >>+# 3a4b77c ("ext4: validate s_first_meta_bg at mount time").
> >>+#
> >>+#-----------------------------------------------------------------------
> >>+# Copyright (c) 2017 Fujitsu. All Rights Reserved.
> >>+# Author: Xiao Yang<yangx.jy@cn.fujitsu.com>
> >>+#
> >>+# 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
> >>+#-----------------------------------------------------------------------
> >>+
> >>+
> >>+seq=`basename $0`
> >>+seqres=$RESULT_DIR/$seq
> >>+echo "QA output created by $seq"
> >>+
> >>+tmp=/tmp/$$
> >>+status=1 # failure is the default!
> >>+trap "_cleanup; exit \$status" 0 1 2 3 15
> >>+
> >>+_cleanup()
> >>+{
> >>+ rm -f $tmp.*
> >>+}
> >>+
> >>+# get standard environment and checks
> >>+. ./common/rc
> >>+. ./common/filter
> >>+
> >>+# remove previous $seqres.full before test
> >>+rm -f $seqres.full
> >>+
> >>+# real QA test starts here
> >>+_supported_fs ext4
> >>+_supported_os Linux
> >>+_require_scratch
> >>+_require_scratch_nocheck
> >_require_scratch_nocheck is sufficient, don't need _require_scratch
> >
> Hi Eryu
>
> Agreed. :-)
> >>+_require_command "$DEBUGFS_PROG" debugfs
> >>+_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
> >>+
> >>+echo "Create ext4 fs and modify first_meta_bg's value"
> >>+$MKFS_EXT4_PROG -F -b 4096 -O bigalloc,meta_bg,^resize_inode $SCRATCH_DEV 16m>> $seqres.full 2>&1 \
> >>+ || _notrun "Could not create ext4 filesystem"
> >_scratch_mkfs "-O bigalloc,meta_bg,^resize_inode">> $seqres.full 2>&1
> >
> >should be fine, if there're conflicts between MKFS_OPTIONS and these
> >extra mkfs options _scratch_mkfs will mkfs again only with test-provided
> >mkfs options.
> >
> I will use _scratch_mkfs as you said. However, i still specify 4096 as
> block size, because debugfs can't set first_meta_bg
> to 842150400 on RHEL7 when default block size is 1024. Please see the
> following e2fsprogs bug:
>
> commit d36b957b345ee6e4b529be99b8fdc8d3e70ccdc1
> Author: Darrick J. Wong <darrick.wong@oracle.com>
> Date: Sat Jan 11 13:58:15 2014 -0500
>
> libext2fs: don't always read backup group descriptors on a 1k-block
> meta_bg fs
That's a commit id -- are you saying that upstream e2fsprogs is broken?
Or simply that RHEL7's e2fsprogs needs to have this patch applied?
(Regardless, the test shouldn't work around fixable e2fsprogs bugs, like
Eryu said in one of the other replies to this thread.)
--D
> >>+
> >>+$DEBUGFS_PROG -w -R "ssv first_meta_bg 842150400" $SCRATCH_DEV>> $seqres.full 2>&1
> >>+
> >>+# check whether debugfs succeeds to set first_meta_bg to 842150400 or not
> >>+$DEBUGFS_PROG -R "show_super_stats" $SCRATCH_DEV 2>&1 | grep -q "First meta block group: 842150400" \
> >>+ || _notrun "Could not set first_meta_bg to 842150400 successfully, skip test."
> >>+
> >>+echo "Try to mount a modified ext4 fs"
> >>+_scratch_mount>> $seqres.full 2>&1 || echo "Fail to mount ext4 fs expectedly"
> >>+
> >>+# success, all done
> >>+status=0
> >>+exit
> >>diff --git a/tests/ext4/025.out b/tests/ext4/025.out
> >>new file mode 100644
> >>index 0000000..f9a76bb
> >>--- /dev/null
> >>+++ b/tests/ext4/025.out
> >>@@ -0,0 +1,4 @@
> >>+QA output created by 025
> >>+Create ext4 fs and modify first_meta_bg's value
> >>+Try to mount a modified ext4 fs
> >>+Fail to mount ext4 fs expectedly
> >>diff --git a/tests/ext4/group b/tests/ext4/group
> >>index cac5aa5..c42a4d5 100644
> >>--- a/tests/ext4/group
> >>+++ b/tests/ext4/group
> >>@@ -27,6 +27,7 @@
> >> 022 auto quick attr dangerous
> >> 023 auto quick scrub
> >> 024 auto quick encrypt dangerous
> >>+025 auto quick dangerous
> >Can be in fuzzers group too.
> >
> I will add it. :-)
>
> Thanks,
> Xiao Yang.
> >Thanks,
> >Eryu
> >> 271 auto rw quick
> >> 301 aio auto ioctl rw stress defrag
> >> 302 aio auto ioctl rw stress defrag
> >>--
> >>1.8.3.1
> >>
> >>
> >>
> >>--
> >>To unsubscribe from this list: send the line "unsubscribe fstests" in
> >>the body of a message to majordomo@vger.kernel.org
> >>More majordomo info at http://vger.kernel.org/majordomo-info.html
> >--
> >To unsubscribe from this list: send the line "unsubscribe fstests" in
> >the body of a message to majordomo@vger.kernel.org
> >More majordomo info at http://vger.kernel.org/majordomo-info.html
> >
> >
> >.
> >
>
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe fstests" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg
2017-04-24 16:40 ` [PATCH 1/2] " Darrick J. Wong
@ 2017-04-25 1:22 ` Xiao Yang
0 siblings, 0 replies; 10+ messages in thread
From: Xiao Yang @ 2017-04-25 1:22 UTC (permalink / raw)
To: Darrick J. Wong; +Cc: Eryu Guan, fstests
On 2017/04/25 0:40, Darrick J. Wong wrote:
> On Mon, Apr 24, 2017 at 01:52:26PM +0800, Xiao Yang wrote:
>> On 2017/04/24 12:47, Eryu Guan wrote:
>>> On Fri, Apr 21, 2017 at 06:10:39PM +0800, Xiao Yang wrote:
>>>> On ext4 filesystem, the kernel carshes at mount time when
>>>> s_first_meta_bg's value exceeds the largest possible meta_bg
>>>> number. This kernel bug has been fixed in:
>>>>
>>>> 3a4b77c ext4: validate s_first_meta_bg at mount time
>>>>
>>>> Signed-off-by: Xiao Yang<yangx.jy@cn.fujitsu.com>
>>>> ---
>>>> tests/ext4/025 | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>> tests/ext4/025.out | 4 ++++
>>>> tests/ext4/group | 1 +
>>>> 3 files changed, 74 insertions(+)
>>>> create mode 100755 tests/ext4/025
>>>> create mode 100644 tests/ext4/025.out
>>>>
>>>> diff --git a/tests/ext4/025 b/tests/ext4/025
>>>> new file mode 100755
>>>> index 0000000..085c52f
>>>> --- /dev/null
>>>> +++ b/tests/ext4/025
>>>> @@ -0,0 +1,69 @@
>>>> +#! /bin/bash
>>>> +# FS QA Test ext4/025
>>>> +#
>>>> +# Regression test for commit:
>>>> +# 3a4b77c ("ext4: validate s_first_meta_bg at mount time").
>>>> +#
>>>> +#-----------------------------------------------------------------------
>>>> +# Copyright (c) 2017 Fujitsu. All Rights Reserved.
>>>> +# Author: Xiao Yang<yangx.jy@cn.fujitsu.com>
>>>> +#
>>>> +# 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
>>>> +#-----------------------------------------------------------------------
>>>> +
>>>> +
>>>> +seq=`basename $0`
>>>> +seqres=$RESULT_DIR/$seq
>>>> +echo "QA output created by $seq"
>>>> +
>>>> +tmp=/tmp/$$
>>>> +status=1 # failure is the default!
>>>> +trap "_cleanup; exit \$status" 0 1 2 3 15
>>>> +
>>>> +_cleanup()
>>>> +{
>>>> + rm -f $tmp.*
>>>> +}
>>>> +
>>>> +# get standard environment and checks
>>>> +. ./common/rc
>>>> +. ./common/filter
>>>> +
>>>> +# remove previous $seqres.full before test
>>>> +rm -f $seqres.full
>>>> +
>>>> +# real QA test starts here
>>>> +_supported_fs ext4
>>>> +_supported_os Linux
>>>> +_require_scratch
>>>> +_require_scratch_nocheck
>>> _require_scratch_nocheck is sufficient, don't need _require_scratch
>>>
>> Hi Eryu
>>
>> Agreed. :-)
>>>> +_require_command "$DEBUGFS_PROG" debugfs
>>>> +_require_ext4_mkfs_feature "bigalloc,meta_bg,^resize_inode"
>>>> +
>>>> +echo "Create ext4 fs and modify first_meta_bg's value"
>>>> +$MKFS_EXT4_PROG -F -b 4096 -O bigalloc,meta_bg,^resize_inode $SCRATCH_DEV 16m>> $seqres.full 2>&1 \
>>>> + || _notrun "Could not create ext4 filesystem"
>>> _scratch_mkfs "-O bigalloc,meta_bg,^resize_inode">> $seqres.full 2>&1
>>>
>>> should be fine, if there're conflicts between MKFS_OPTIONS and these
>>> extra mkfs options _scratch_mkfs will mkfs again only with test-provided
>>> mkfs options.
>>>
>> I will use _scratch_mkfs as you said. However, i still specify 4096 as
>> block size, because debugfs can't set first_meta_bg
>> to 842150400 on RHEL7 when default block size is 1024. Please see the
>> following e2fsprogs bug:
>>
>> commit d36b957b345ee6e4b529be99b8fdc8d3e70ccdc1
>> Author: Darrick J. Wong<darrick.wong@oracle.com>
>> Date: Sat Jan 11 13:58:15 2014 -0500
>>
>> libext2fs: don't always read backup group descriptors on a 1k-block
>> meta_bg fs
> That's a commit id -- are you saying that upstream e2fsprogs is broken?
> Or simply that RHEL7's e2fsprogs needs to have this patch applied?
>
> (Regardless, the test shouldn't work around fixable e2fsprogs bugs, like
> Eryu said in one of the other replies to this thread.)
>
> --D
Hi Darrick
I just point that RHEL7's e2fsprogs needs to have this patch applied.
Thanks for your comment. :-)
Thanks,
Xiao Yang
>>>> +
>>>> +$DEBUGFS_PROG -w -R "ssv first_meta_bg 842150400" $SCRATCH_DEV>> $seqres.full 2>&1
>>>> +
>>>> +# check whether debugfs succeeds to set first_meta_bg to 842150400 or not
>>>> +$DEBUGFS_PROG -R "show_super_stats" $SCRATCH_DEV 2>&1 | grep -q "First meta block group: 842150400" \
>>>> + || _notrun "Could not set first_meta_bg to 842150400 successfully, skip test."
>>>> +
>>>> +echo "Try to mount a modified ext4 fs"
>>>> +_scratch_mount>> $seqres.full 2>&1 || echo "Fail to mount ext4 fs expectedly"
>>>> +
>>>> +# success, all done
>>>> +status=0
>>>> +exit
>>>> diff --git a/tests/ext4/025.out b/tests/ext4/025.out
>>>> new file mode 100644
>>>> index 0000000..f9a76bb
>>>> --- /dev/null
>>>> +++ b/tests/ext4/025.out
>>>> @@ -0,0 +1,4 @@
>>>> +QA output created by 025
>>>> +Create ext4 fs and modify first_meta_bg's value
>>>> +Try to mount a modified ext4 fs
>>>> +Fail to mount ext4 fs expectedly
>>>> diff --git a/tests/ext4/group b/tests/ext4/group
>>>> index cac5aa5..c42a4d5 100644
>>>> --- a/tests/ext4/group
>>>> +++ b/tests/ext4/group
>>>> @@ -27,6 +27,7 @@
>>>> 022 auto quick attr dangerous
>>>> 023 auto quick scrub
>>>> 024 auto quick encrypt dangerous
>>>> +025 auto quick dangerous
>>> Can be in fuzzers group too.
>>>
>> I will add it. :-)
>>
>> Thanks,
>> Xiao Yang.
>>> Thanks,
>>> Eryu
>>>> 271 auto rw quick
>>>> 301 aio auto ioctl rw stress defrag
>>>> 302 aio auto ioctl rw stress defrag
>>>> --
>>>> 1.8.3.1
>>>>
>>>>
>>>>
>>>> --
>>>> To unsubscribe from this list: send the line "unsubscribe fstests" in
>>>> the body of a message to majordomo@vger.kernel.org
>>>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe fstests" in
>>> the body of a message to majordomo@vger.kernel.org
>>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>>
>>>
>>> .
>>>
>>
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe fstests" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
> .
>
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2017-04-25 1:22 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-21 10:10 [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg Xiao Yang
2017-04-21 10:10 ` [PATCH 2/2] btrfs: use $FILEFRAG_PROG instead of filefrag Xiao Yang
2017-04-24 4:47 ` [PATCH 1/2] ext4: check mount's handling for very large s_first_meta_bg Eryu Guan
2017-04-24 5:52 ` Xiao Yang
2017-04-24 8:43 ` Eryu Guan
2017-04-24 9:46 ` Xiao Yang
2017-04-24 9:57 ` [PATCH v3] " Xiao Yang
2017-04-24 16:40 ` [PATCH 1/2] " Darrick J. Wong
2017-04-25 1:22 ` Xiao Yang
2017-04-24 6:34 ` [PATCH v2] " Xiao Yang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox