[1/4] dump: _cleanup_dump should only check the scratch fs if the test required it
diff mbox series

Message ID 156089202883.345809.17656192140244878661.stgit@magnolia
State New
Headers show
Series
  • fstests: various fixes
Related show

Commit Message

Darrick J. Wong June 18, 2019, 9:07 p.m. UTC
From: Darrick J. Wong <darrick.wong@oracle.com>

_cleanup_dump always tries to check the scratch fs, even if the caller
didn't actually _require_scratch.  If a previous test wrote garbage to
the scratch device then the dump test will fail here when repair
stumbles over the garbage.

This was observed by running xfs/016 and xfs/036 in succession.  xfs/016
writes 0xc6 to the scratch device and tries to format a small log.  If
the log is too small the format fails and the test will _notrun.  The
subsequent xfs/036 will _notrun and then _cleanup_dump if no tape device
is set, at which point we try to check the scratch device and logprint
aborts due to the abnormal log size (0xc6c6c6c6).

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
---
 common/dump |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Allison Collins June 21, 2019, 4:25 p.m. UTC | #1
On 6/18/19 2:07 PM, Darrick J. Wong wrote:
> From: Darrick J. Wong <darrick.wong@oracle.com>
> 
> _cleanup_dump always tries to check the scratch fs, even if the caller
> didn't actually _require_scratch.  If a previous test wrote garbage to
> the scratch device then the dump test will fail here when repair
> stumbles over the garbage.
> 
> This was observed by running xfs/016 and xfs/036 in succession.  xfs/016
> writes 0xc6 to the scratch device and tries to format a small log.  If
> the log is too small the format fails and the test will _notrun.  The
> subsequent xfs/036 will _notrun and then _cleanup_dump if no tape device
> is set, at which point we try to check the scratch device and logprint
> aborts due to the abnormal log size (0xc6c6c6c6).
> 
> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>

Looks ok to me.
Reviewed-by: Allison Collins <allison.henderson@oracle.com>

> ---
>   common/dump |    2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> 
> diff --git a/common/dump b/common/dump
> index 7c4c9cd8..2b8e0893 100644
> --- a/common/dump
> +++ b/common/dump
> @@ -250,7 +250,7 @@ _cleanup_dump()
>   	mv $dir.$seq $dir
>       done
>   
> -    if [ $status -ne $NOTRUNSTS ]; then
> +    if [ -f ${RESULT_DIR}/require_scratch ] && [ $status -ne $NOTRUNSTS ]; then
>   	# Sleep added to stop _check_scratch_fs from complaining that the
>   	# scratch_dev is still busy
>   	sleep 10
>

Patch
diff mbox series

diff --git a/common/dump b/common/dump
index 7c4c9cd8..2b8e0893 100644
--- a/common/dump
+++ b/common/dump
@@ -250,7 +250,7 @@  _cleanup_dump()
 	mv $dir.$seq $dir
     done
 
-    if [ $status -ne $NOTRUNSTS ]; then
+    if [ -f ${RESULT_DIR}/require_scratch ] && [ $status -ne $NOTRUNSTS ]; then
 	# Sleep added to stop _check_scratch_fs from complaining that the
 	# scratch_dev is still busy
 	sleep 10