All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] btrfs-progs: fsck-test: Add test image for btrfsck qgroup rescan detection
@ 2016-10-07  7:22 Qu Wenruo
  2016-10-07  7:23 ` [PATCH 2/2] btrfs-progs: fsck-test: Add image for quota verify stack overflow Qu Wenruo
  0 siblings, 1 reply; 4+ messages in thread
From: Qu Wenruo @ 2016-10-07  7:22 UTC (permalink / raw)
  To: linux-btrfs; +Cc: dsterba

Fixed by commit 7c646c538e74 btrfs-progs: qgroup: Fix regression leads
to corrupted qgroup status.

Add minimal test image for that fix.

Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
---
 .../qgroup_rescan_halfway.raw.xz                   | Bin 0 -> 79004 bytes
 tests/fsck-tests/022-qgroup-rescan-halfway/test.sh |  21 +++++++++++++++++++++
 2 files changed, 21 insertions(+)
 create mode 100644 tests/fsck-tests/022-qgroup-rescan-halfway/qgroup_rescan_halfway.raw.xz
 create mode 100755 tests/fsck-tests/022-qgroup-rescan-halfway/test.sh

diff --git a/tests/fsck-tests/022-qgroup-rescan-halfway/qgroup_rescan_halfway.raw.xz b/tests/fsck-tests/022-qgroup-rescan-halfway/qgroup_rescan_halfway.raw.xz
new file mode 100644
index 0000000000000000000000000000000000000000..09a2c716e79586961ae1ed264049c6c361ff173f
GIT binary patch
literal 79004
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
UcCp$xEL;IL$p85RC|$k(0f+of`~Uy|

literal 0
HcmV?d00001

diff --git a/tests/fsck-tests/022-qgroup-rescan-halfway/test.sh b/tests/fsck-tests/022-qgroup-rescan-halfway/test.sh
new file mode 100755
index 0000000..eaeb1fc
--- /dev/null
+++ b/tests/fsck-tests/022-qgroup-rescan-halfway/test.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+# check whether btrfsck can detect running qgroup rescan
+
+source $TOP/tests/common
+
+check_prereq btrfs
+
+for img in $(find . \( -iname '*.img' -o	\
+			-iname '*.img.xz' -o 	\
+			-iname '*.raw' -o 	\
+			-iname '*.raw.xz' \) | sort)
+do
+	image=$(extract_image $img)
+	run_check_stdout $TOP/btrfs check "$image" 2>&1 |\
+		grep -q "Counts for qgroup id"
+	if [ $? -eq 0 ]; then
+		rm -f "$image"
+		_fail "Btrfsck doesn't detect rescan correctly"
+	fi
+	rm -f "$image"
+done
-- 
2.10.0




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

* [PATCH 2/2] btrfs-progs: fsck-test: Add image for quota verify stack overflow
  2016-10-07  7:22 [PATCH 1/2] btrfs-progs: fsck-test: Add test image for btrfsck qgroup rescan detection Qu Wenruo
@ 2016-10-07  7:23 ` Qu Wenruo
  2016-10-13 14:29   ` David Sterba
  0 siblings, 1 reply; 4+ messages in thread
From: Qu Wenruo @ 2016-10-07  7:23 UTC (permalink / raw)
  To: linux-btrfs; +Cc: dsterba

For image with tree reloc tree, if its height is over level 2, the root
node's backref will point to itself.
It's valid for kernel, but quota verify code can't handle it and cause a
infinite call, overflowing the stack.

Add minimal image to reproduce the bug, as regression test.

Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
---
 .../quota_balance_loop_backref.raw.xz                | Bin 0 -> 71116 bytes
 tests/fsck-tests/023-qgroup-stack-overflow/test.sh   |  19 +++++++++++++++++++
 2 files changed, 19 insertions(+)
 create mode 100644 tests/fsck-tests/023-qgroup-stack-overflow/quota_balance_loop_backref.raw.xz
 create mode 100644 tests/fsck-tests/023-qgroup-stack-overflow/test.sh

diff --git a/tests/fsck-tests/023-qgroup-stack-overflow/quota_balance_loop_backref.raw.xz b/tests/fsck-tests/023-qgroup-stack-overflow/quota_balance_loop_backref.raw.xz
new file mode 100644
index 0000000000000000000000000000000000000000..48a89ad8fed72766a6cb7720025f60ed0e88ea7a
GIT binary patch
literal 71116
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
Lu>HAE+gkqv$P}|k

literal 0
HcmV?d00001

diff --git a/tests/fsck-tests/023-qgroup-stack-overflow/test.sh b/tests/fsck-tests/023-qgroup-stack-overflow/test.sh
new file mode 100644
index 0000000..f49518e
--- /dev/null
+++ b/tests/fsck-tests/023-qgroup-stack-overflow/test.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+# check whether btrfsck quota verify will cause stack overflow.
+# this is caused by lack of handle for tree reloc tree.
+# fixed by patch:
+# btrfs-progs: Fix stack overflow for checking qgroup on tree reloc tree
+
+source $TOP/tests/common
+
+check_prereq btrfs
+
+for img in $(find . \( -iname '*.img' -o	\
+			-iname '*.img.xz' -o 	\
+			-iname '*.raw' -o 	\
+			-iname '*.raw.xz' \) | sort)
+do
+	image=$(extract_image $img)
+	run_check $TOP/btrfs check "$image"
+	rm -f "$image"
+done
-- 
2.10.0




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

* Re: [PATCH 2/2] btrfs-progs: fsck-test: Add image for quota verify stack overflow
  2016-10-07  7:23 ` [PATCH 2/2] btrfs-progs: fsck-test: Add image for quota verify stack overflow Qu Wenruo
@ 2016-10-13 14:29   ` David Sterba
  2016-10-14  1:33     ` Qu Wenruo
  0 siblings, 1 reply; 4+ messages in thread
From: David Sterba @ 2016-10-13 14:29 UTC (permalink / raw)
  To: Qu Wenruo; +Cc: linux-btrfs, dsterba

On Fri, Oct 07, 2016 at 03:23:00PM +0800, Qu Wenruo wrote:
> +for img in $(find . \( -iname '*.img' -o	\
> +			-iname '*.img.xz' -o 	\
> +			-iname '*.raw' -o 	\
> +			-iname '*.raw.xz' \) | sort)
> +do
> +	image=$(extract_image $img)
> +	run_check $TOP/btrfs check "$image"
> +	rm -f "$image"
> +done

There's a helper that enumerates images and calls 'check_image' on each,
so you should redefine 'check_image' if you don't want to do the default
actions (check, repair and check). Fixed in devel.

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

* Re: [PATCH 2/2] btrfs-progs: fsck-test: Add image for quota verify stack overflow
  2016-10-13 14:29   ` David Sterba
@ 2016-10-14  1:33     ` Qu Wenruo
  0 siblings, 0 replies; 4+ messages in thread
From: Qu Wenruo @ 2016-10-14  1:33 UTC (permalink / raw)
  To: dsterba, linux-btrfs



At 10/13/2016 10:29 PM, David Sterba wrote:
> On Fri, Oct 07, 2016 at 03:23:00PM +0800, Qu Wenruo wrote:
>> +for img in $(find . \( -iname '*.img' -o	\
>> +			-iname '*.img.xz' -o 	\
>> +			-iname '*.raw' -o 	\
>> +			-iname '*.raw.xz' \) | sort)
>> +do
>> +	image=$(extract_image $img)
>> +	run_check $TOP/btrfs check "$image"
>> +	rm -f "$image"
>> +done
>
> There's a helper that enumerates images and calls 'check_image' on each,
> so you should redefine 'check_image' if you don't want to do the default
> actions (check, repair and check). Fixed in devel.
>
>
Oh, thanks for this hint! I checked the commit in devel branch, and 
found that we could just override check_image() function.

Brilliant idea!

Thanks,
Qu



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

end of thread, other threads:[~2016-10-14  1:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-07  7:22 [PATCH 1/2] btrfs-progs: fsck-test: Add test image for btrfsck qgroup rescan detection Qu Wenruo
2016-10-07  7:23 ` [PATCH 2/2] btrfs-progs: fsck-test: Add image for quota verify stack overflow Qu Wenruo
2016-10-13 14:29   ` David Sterba
2016-10-14  1:33     ` Qu Wenruo

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.