Linux-BTRFS Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] fstests: common: Allow user to keep $seqres.dmesg for all tests
@ 2019-11-29  4:57 Qu Wenruo
  2019-12-01 16:26 ` Eryu Guan
  0 siblings, 1 reply; 3+ messages in thread
From: Qu Wenruo @ 2019-11-29  4:57 UTC (permalink / raw)
  To: fstests, linux-btrfs

Currently fstests will remove $seqres.dmesg if nothing wrong happened.
It saves some space, but sometimes it may not provide good enough
history for developers to check.
E.g. some unexpected dmesg from fs, but not serious enough to be caught
by current filter.

So instead of deleting the ordinary $seqres.dmesg, provide a new config:
KEEP_DMESG, to allow user to choose whether to keep the dmesg.

The default value for it is 0, which keeps the existing behavior by
deleting ordinary dmesg.

Signed-off-by: Qu Wenruo <wqu@suse.com>
---
 common/config | 4 ++++
 common/rc     | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/common/config b/common/config
index 1b75777f..b409f32c 100644
--- a/common/config
+++ b/common/config
@@ -22,6 +22,9 @@
 # RMT_IRIXTAPE_DEV- the IRIX remote tape device for the xfsdump tests
 # RMT_TAPE_USER -   remote user for tape device
 # SELINUX_MOUNT_OPTIONS - Options to use when SELinux is enabled.
+# KEEP_DMESG -      whether to keep all dmesg for each test case.
+#                   1: keep all dmesg
+#                   0: only keep dmesg with error/warning (default)
 #
 # - These can be added to $HOST_CONFIG_DIR (witch default to ./config)
 #   below or a separate local configuration file can be used (using
@@ -757,6 +760,7 @@ if [ -z "$CONFIG_INCLUDED" ]; then
 	[ -z "$TEST_FS_MOUNT_OPTS" ] && _test_mount_opts
 	[ -z "$MKFS_OPTIONS" ] && _mkfs_opts
 	[ -z "$FSCK_OPTIONS" ] && _fsck_opts
+	[ -z "$KEEP_DMESG" ] && export KEEP_DMESG=0
 else
 	# We get here for the non multi section case, on every test that sources
 	# common/rc after re-sourcing the HOST_OPTIONS config file.
diff --git a/common/rc b/common/rc
index e5535279..a1386f61 100644
--- a/common/rc
+++ b/common/rc
@@ -3634,7 +3634,9 @@ _check_dmesg()
 		_dump_err "_check_dmesg: something found in dmesg (see $seqres.dmesg)"
 		return 1
 	else
-		rm -f $seqres.dmesg
+		if [ "$KEEP_DMESG" != 1 ]; then
+			rm -f $seqres.dmesg
+		fi
 		return 0
 	fi
 }
-- 
2.23.0


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

* Re: [PATCH] fstests: common: Allow user to keep $seqres.dmesg for all tests
  2019-11-29  4:57 [PATCH] fstests: common: Allow user to keep $seqres.dmesg for all tests Qu Wenruo
@ 2019-12-01 16:26 ` Eryu Guan
  0 siblings, 0 replies; 3+ messages in thread
From: Eryu Guan @ 2019-12-01 16:26 UTC (permalink / raw)
  To: Qu Wenruo; +Cc: fstests, linux-btrfs

On Fri, Nov 29, 2019 at 12:57:43PM +0800, Qu Wenruo wrote:
> Currently fstests will remove $seqres.dmesg if nothing wrong happened.
> It saves some space, but sometimes it may not provide good enough
> history for developers to check.
> E.g. some unexpected dmesg from fs, but not serious enough to be caught
> by current filter.
> 
> So instead of deleting the ordinary $seqres.dmesg, provide a new config:
> KEEP_DMESG, to allow user to choose whether to keep the dmesg.
> 
> The default value for it is 0, which keeps the existing behavior by
> deleting ordinary dmesg.
> 
> Signed-off-by: Qu Wenruo <wqu@suse.com>
> ---
>  common/config | 4 ++++
>  common/rc     | 4 +++-
>  2 files changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/common/config b/common/config
> index 1b75777f..b409f32c 100644
> --- a/common/config
> +++ b/common/config
> @@ -22,6 +22,9 @@
>  # RMT_IRIXTAPE_DEV- the IRIX remote tape device for the xfsdump tests
>  # RMT_TAPE_USER -   remote user for tape device
>  # SELINUX_MOUNT_OPTIONS - Options to use when SELinux is enabled.
> +# KEEP_DMESG -      whether to keep all dmesg for each test case.
> +#                   1: keep all dmesg
> +#                   0: only keep dmesg with error/warning (default)
>  #
>  # - These can be added to $HOST_CONFIG_DIR (witch default to ./config)
>  #   below or a separate local configuration file can be used (using
> @@ -757,6 +760,7 @@ if [ -z "$CONFIG_INCLUDED" ]; then
>  	[ -z "$TEST_FS_MOUNT_OPTS" ] && _test_mount_opts
>  	[ -z "$MKFS_OPTIONS" ] && _mkfs_opts
>  	[ -z "$FSCK_OPTIONS" ] && _fsck_opts
> +	[ -z "$KEEP_DMESG" ] && export KEEP_DMESG=0

I changed this to a "yes"/"no" config, to match USE_KMEMLEAK, and
updated README as well.

Thanks,
Eryu

>  else
>  	# We get here for the non multi section case, on every test that sources
>  	# common/rc after re-sourcing the HOST_OPTIONS config file.
> diff --git a/common/rc b/common/rc
> index e5535279..a1386f61 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -3634,7 +3634,9 @@ _check_dmesg()
>  		_dump_err "_check_dmesg: something found in dmesg (see $seqres.dmesg)"
>  		return 1
>  	else
> -		rm -f $seqres.dmesg
> +		if [ "$KEEP_DMESG" != 1 ]; then
> +			rm -f $seqres.dmesg
> +		fi
>  		return 0
>  	fi
>  }
> -- 
> 2.23.0
> 

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

* [PATCH] fstests: common: Allow user to keep $seqres.dmesg for all tests
  2019-12-11  2:22 [PATCH] fstests: btrfs/157 btrfs/158: Prevent stripe offset to pollute golden output Qu Wenruo
@ 2019-12-11  2:22 ` Qu Wenruo
  0 siblings, 0 replies; 3+ messages in thread
From: Qu Wenruo @ 2019-12-11  2:22 UTC (permalink / raw)
  To: linux-btrfs

Currently fstests will remove $seqres.dmesg if nothing wrong happened.
It saves some space, but sometimes it may not provide good enough
history for developers to check.
E.g. some unexpected dmesg from fs, but not serious enough to be caught
by current filter.

So instead of deleting the ordinary $seqres.dmesg, provide a new config:
KEEP_DMESG, to allow user to choose whether to keep the dmesg.

The default value for it is 0, which keeps the existing behavior by
deleting ordinary dmesg.

Signed-off-by: Qu Wenruo <wqu@suse.com>
---
 common/config | 4 ++++
 common/rc     | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/common/config b/common/config
index 1b75777f..b409f32c 100644
--- a/common/config
+++ b/common/config
@@ -22,6 +22,9 @@
 # RMT_IRIXTAPE_DEV- the IRIX remote tape device for the xfsdump tests
 # RMT_TAPE_USER -   remote user for tape device
 # SELINUX_MOUNT_OPTIONS - Options to use when SELinux is enabled.
+# KEEP_DMESG -      whether to keep all dmesg for each test case.
+#                   1: keep all dmesg
+#                   0: only keep dmesg with error/warning (default)
 #
 # - These can be added to $HOST_CONFIG_DIR (witch default to ./config)
 #   below or a separate local configuration file can be used (using
@@ -757,6 +760,7 @@ if [ -z "$CONFIG_INCLUDED" ]; then
 	[ -z "$TEST_FS_MOUNT_OPTS" ] && _test_mount_opts
 	[ -z "$MKFS_OPTIONS" ] && _mkfs_opts
 	[ -z "$FSCK_OPTIONS" ] && _fsck_opts
+	[ -z "$KEEP_DMESG" ] && export KEEP_DMESG=0
 else
 	# We get here for the non multi section case, on every test that sources
 	# common/rc after re-sourcing the HOST_OPTIONS config file.
diff --git a/common/rc b/common/rc
index e5535279..a1386f61 100644
--- a/common/rc
+++ b/common/rc
@@ -3634,7 +3634,9 @@ _check_dmesg()
 		_dump_err "_check_dmesg: something found in dmesg (see $seqres.dmesg)"
 		return 1
 	else
-		rm -f $seqres.dmesg
+		if [ "$KEEP_DMESG" != 1 ]; then
+			rm -f $seqres.dmesg
+		fi
 		return 0
 	fi
 }
-- 
2.23.0


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

end of thread, back to index

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-29  4:57 [PATCH] fstests: common: Allow user to keep $seqres.dmesg for all tests Qu Wenruo
2019-12-01 16:26 ` Eryu Guan
2019-12-11  2:22 [PATCH] fstests: btrfs/157 btrfs/158: Prevent stripe offset to pollute golden output Qu Wenruo
2019-12-11  2:22 ` [PATCH] fstests: common: Allow user to keep $seqres.dmesg for all tests Qu Wenruo

Linux-BTRFS Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-btrfs/0 linux-btrfs/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-btrfs linux-btrfs/ https://lore.kernel.org/linux-btrfs \
		linux-btrfs@vger.kernel.org
	public-inbox-index linux-btrfs

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-btrfs


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git