Linux-XFS Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] xfs/{050,299}: clear quota warnings in between checks
@ 2020-07-30 18:34 Darrick J. Wong
  2020-08-03 13:19 ` Bill O'Donnell
  0 siblings, 1 reply; 2+ messages in thread
From: Darrick J. Wong @ 2020-07-30 18:34 UTC (permalink / raw)
  To: Eryu Guan, xfs, fstests

From: Darrick J. Wong <darrick.wong@oracle.com>

Both of these quota tests contain the output of the xfs_quota repquota
command in the golden output.  Unfortunately, the output was recorded
before quota soft warnings were implemented, which means they'll regress
the output when we make quota warning work.  Fix this by resetting the
warning count to zero before generating output.

While we're at it, use $XFS_QUOTA_PROG instead of xfs_quota.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
---
note that these changes are necessary because we fixed a longstanding
warning counter bug for 5.9...
---
 tests/xfs/050 |   23 ++++++++++++++++-------
 tests/xfs/299 |   23 ++++++++++++++++-------
 2 files changed, 32 insertions(+), 14 deletions(-)

diff --git a/tests/xfs/050 b/tests/xfs/050
index 788ed7f1..c765f00b 100755
--- a/tests/xfs/050
+++ b/tests/xfs/050
@@ -61,6 +61,7 @@ _filter_report()
 			$val = $ENV{'NUM_SPACE_FILES'};
 		}
 		s/(^\[ROOT\] \S+ \S+ \S+ \S+ \[--------\] )(\S+)/$1@{[$2 - $val]}/g' |
+	sed -e 's/ 65535 \[--------\]/ 00 \[--------\]/g' |
 	perl -npe '
 		s|^(.*?) (\d+) (\d+) (\d+)|$1 @{[$2 * 1024 /'$bsize']} @{[$3 * 1024 /'$bsize']} @{[$4 * 1024 /'$bsize']}|'
 }
@@ -128,9 +129,11 @@ _exercise()
 
 	echo "Using type=$type id=$id" >>$seqres.full
 
+	$XFS_QUOTA_PROG -x -c "warn -$type 65535 -d" $SCRATCH_DEV
+
 	echo
 	echo "*** report no quota settings" | tee -a $seqres.full
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -139,11 +142,11 @@ _exercise()
 	_file_as_id $SCRATCH_MNT/initme $id $type 1024 0
 	echo "ls -l $SCRATCH_MNT" >>$seqres.full
 	ls -l $SCRATCH_MNT >>$seqres.full
-	xfs_quota -D $tmp.projects -P $temp.projid -x \
+	$XFS_QUOTA_PROG -D $tmp.projects -P $temp.projid -x \
 		-c "limit -$type bsoft=${bsoft} bhard=${bhard} $id" \
 		-c "limit -$type isoft=$isoft ihard=$ihard $id" \
 		$SCRATCH_DEV
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -154,7 +157,8 @@ _exercise()
 	_file_as_id $SCRATCH_MNT/softie3 $id $type 1024 0
 	_file_as_id $SCRATCH_MNT/softie4 $id $type 1024 0
 	_qmount
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -x -c "warn -i -$type 0 $id" $SCRATCH_DEV
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -162,7 +166,9 @@ _exercise()
 	echo "*** push past the soft block limit" | tee -a $seqres.full
 	_file_as_id $SCRATCH_MNT/softie $id $type $bsize 300
 	_qmount
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -x -c "warn -i -$type 0 $id" \
+		-c "warn -b -$type 0 $id" $SCRATCH_DEV
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -174,7 +180,9 @@ _exercise()
 		_file_as_id $SCRATCH_MNT/hard$i $id $type 1024 0
 	done
 	_qmount
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -x  -c "warn -b -$type 0 $id" \
+		-c "warn -i -$type 0 $id" $SCRATCH_DEV
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -185,7 +193,8 @@ _exercise()
 	echo "ls -l $SCRATCH_MNT" >>$seqres.full
 	ls -l $SCRATCH_MNT >>$seqres.full
 	_qmount
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -x -c "warn -b -$type 0 $id" $SCRATCH_DEV
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_and_check_blks | LC_COLLATE=POSIX sort -ru
 
diff --git a/tests/xfs/299 b/tests/xfs/299
index adcf0e41..574a93b9 100755
--- a/tests/xfs/299
+++ b/tests/xfs/299
@@ -54,6 +54,7 @@ _filter_report()
 			$val = $ENV{'NUM_SPACE_FILES'};
 		}
 		s/(^\[ROOT\] \S+ \S+ \S+ \S+ \[--------\] )(\S+)/$1@{[$2 - $val]}/g' |
+	sed -e 's/ 65535 \[--------\]/ 00 \[--------\]/g' |
 	perl -npe '
 		s|^(.*?) (\d+) (\d+) (\d+)|$1 @{[$2 * 1024 /'$bsize']} @{[$3 * 1024 /'$bsize']} @{[$4 * 1024 /'$bsize']}|'
 }
@@ -114,9 +115,11 @@ _exercise()
 
 	echo "Using type=$type id=$id" >>$seqres.full
 
+	$XFS_QUOTA_PROG -x -c "warn -$type 65535 -d" $SCRATCH_DEV
+
 	echo
 	echo "*** report no quota settings" | tee -a $seqres.full
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -125,11 +128,11 @@ _exercise()
 	_file_as_id $SCRATCH_MNT/initme $id $type 1024 0
 	echo "ls -l $SCRATCH_MNT" >>$seqres.full
 	ls -l $SCRATCH_MNT >>$seqres.full
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "limit -$type bsoft=${bsoft} bhard=${bhard} $id" \
 		-c "limit -$type isoft=$isoft ihard=$ihard $id" \
 		$SCRATCH_DEV
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -140,7 +143,8 @@ _exercise()
 	_file_as_id $SCRATCH_MNT/softie3 $id $type 1024 0
 	_file_as_id $SCRATCH_MNT/softie4 $id $type 1024 0
 	_qmount
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -x -c "warn -i -$type 0 $id" $SCRATCH_DEV
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -148,7 +152,9 @@ _exercise()
 	echo "*** push past the soft block limit" | tee -a $seqres.full
 	_file_as_id $SCRATCH_MNT/softie $id $type $bsize 200
 	_qmount
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -x -c "warn -i -$type 0 $id" \
+		-c "warn -b -$type 0 $id" $SCRATCH_DEV
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -160,7 +166,9 @@ _exercise()
 		_file_as_id $SCRATCH_MNT/hard$i $id $type 1024 0
 	done
 	_qmount
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -x  -c "warn -b -$type 0 $id" \
+		-c "warn -i -$type 0 $id" $SCRATCH_DEV
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_report | LC_COLLATE=POSIX sort -ru
 
@@ -171,7 +179,8 @@ _exercise()
 	echo "ls -l $SCRATCH_MNT" >>$seqres.full
 	ls -l $SCRATCH_MNT >>$seqres.full
 	_qmount
-	xfs_quota -D $tmp.projects -P $tmp.projid -x \
+	$XFS_QUOTA_PROG -x -c "warn -b -$type 0 $id" $SCRATCH_DEV
+	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
 		-c "repquota -birnN -$type" $SCRATCH_DEV |
 		_filter_and_check_blks | LC_COLLATE=POSIX sort -ru
 

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

* Re: [PATCH] xfs/{050,299}: clear quota warnings in between checks
  2020-07-30 18:34 [PATCH] xfs/{050,299}: clear quota warnings in between checks Darrick J. Wong
@ 2020-08-03 13:19 ` Bill O'Donnell
  0 siblings, 0 replies; 2+ messages in thread
From: Bill O'Donnell @ 2020-08-03 13:19 UTC (permalink / raw)
  To: Darrick J. Wong; +Cc: Eryu Guan, xfs, fstests

On Thu, Jul 30, 2020 at 11:34:38AM -0700, Darrick J. Wong wrote:
> From: Darrick J. Wong <darrick.wong@oracle.com>
> 
> Both of these quota tests contain the output of the xfs_quota repquota
> command in the golden output.  Unfortunately, the output was recorded
> before quota soft warnings were implemented, which means they'll regress
> the output when we make quota warning work.  Fix this by resetting the
> warning count to zero before generating output.
> 
> While we're at it, use $XFS_QUOTA_PROG instead of xfs_quota.
> 
> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>

Looks good.
Reviewed-by: Bill O'Donnell <billodo@redhat.com>

> ---
> note that these changes are necessary because we fixed a longstanding
> warning counter bug for 5.9...
> ---
>  tests/xfs/050 |   23 ++++++++++++++++-------
>  tests/xfs/299 |   23 ++++++++++++++++-------
>  2 files changed, 32 insertions(+), 14 deletions(-)
> 
> diff --git a/tests/xfs/050 b/tests/xfs/050
> index 788ed7f1..c765f00b 100755
> --- a/tests/xfs/050
> +++ b/tests/xfs/050
> @@ -61,6 +61,7 @@ _filter_report()
>  			$val = $ENV{'NUM_SPACE_FILES'};
>  		}
>  		s/(^\[ROOT\] \S+ \S+ \S+ \S+ \[--------\] )(\S+)/$1@{[$2 - $val]}/g' |
> +	sed -e 's/ 65535 \[--------\]/ 00 \[--------\]/g' |
>  	perl -npe '
>  		s|^(.*?) (\d+) (\d+) (\d+)|$1 @{[$2 * 1024 /'$bsize']} @{[$3 * 1024 /'$bsize']} @{[$4 * 1024 /'$bsize']}|'
>  }
> @@ -128,9 +129,11 @@ _exercise()
>  
>  	echo "Using type=$type id=$id" >>$seqres.full
>  
> +	$XFS_QUOTA_PROG -x -c "warn -$type 65535 -d" $SCRATCH_DEV
> +
>  	echo
>  	echo "*** report no quota settings" | tee -a $seqres.full
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -139,11 +142,11 @@ _exercise()
>  	_file_as_id $SCRATCH_MNT/initme $id $type 1024 0
>  	echo "ls -l $SCRATCH_MNT" >>$seqres.full
>  	ls -l $SCRATCH_MNT >>$seqres.full
> -	xfs_quota -D $tmp.projects -P $temp.projid -x \
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $temp.projid -x \
>  		-c "limit -$type bsoft=${bsoft} bhard=${bhard} $id" \
>  		-c "limit -$type isoft=$isoft ihard=$ihard $id" \
>  		$SCRATCH_DEV
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -154,7 +157,8 @@ _exercise()
>  	_file_as_id $SCRATCH_MNT/softie3 $id $type 1024 0
>  	_file_as_id $SCRATCH_MNT/softie4 $id $type 1024 0
>  	_qmount
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -x -c "warn -i -$type 0 $id" $SCRATCH_DEV
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -162,7 +166,9 @@ _exercise()
>  	echo "*** push past the soft block limit" | tee -a $seqres.full
>  	_file_as_id $SCRATCH_MNT/softie $id $type $bsize 300
>  	_qmount
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -x -c "warn -i -$type 0 $id" \
> +		-c "warn -b -$type 0 $id" $SCRATCH_DEV
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -174,7 +180,9 @@ _exercise()
>  		_file_as_id $SCRATCH_MNT/hard$i $id $type 1024 0
>  	done
>  	_qmount
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -x  -c "warn -b -$type 0 $id" \
> +		-c "warn -i -$type 0 $id" $SCRATCH_DEV
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -185,7 +193,8 @@ _exercise()
>  	echo "ls -l $SCRATCH_MNT" >>$seqres.full
>  	ls -l $SCRATCH_MNT >>$seqres.full
>  	_qmount
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -x -c "warn -b -$type 0 $id" $SCRATCH_DEV
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_and_check_blks | LC_COLLATE=POSIX sort -ru
>  
> diff --git a/tests/xfs/299 b/tests/xfs/299
> index adcf0e41..574a93b9 100755
> --- a/tests/xfs/299
> +++ b/tests/xfs/299
> @@ -54,6 +54,7 @@ _filter_report()
>  			$val = $ENV{'NUM_SPACE_FILES'};
>  		}
>  		s/(^\[ROOT\] \S+ \S+ \S+ \S+ \[--------\] )(\S+)/$1@{[$2 - $val]}/g' |
> +	sed -e 's/ 65535 \[--------\]/ 00 \[--------\]/g' |
>  	perl -npe '
>  		s|^(.*?) (\d+) (\d+) (\d+)|$1 @{[$2 * 1024 /'$bsize']} @{[$3 * 1024 /'$bsize']} @{[$4 * 1024 /'$bsize']}|'
>  }
> @@ -114,9 +115,11 @@ _exercise()
>  
>  	echo "Using type=$type id=$id" >>$seqres.full
>  
> +	$XFS_QUOTA_PROG -x -c "warn -$type 65535 -d" $SCRATCH_DEV
> +
>  	echo
>  	echo "*** report no quota settings" | tee -a $seqres.full
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -125,11 +128,11 @@ _exercise()
>  	_file_as_id $SCRATCH_MNT/initme $id $type 1024 0
>  	echo "ls -l $SCRATCH_MNT" >>$seqres.full
>  	ls -l $SCRATCH_MNT >>$seqres.full
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "limit -$type bsoft=${bsoft} bhard=${bhard} $id" \
>  		-c "limit -$type isoft=$isoft ihard=$ihard $id" \
>  		$SCRATCH_DEV
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -140,7 +143,8 @@ _exercise()
>  	_file_as_id $SCRATCH_MNT/softie3 $id $type 1024 0
>  	_file_as_id $SCRATCH_MNT/softie4 $id $type 1024 0
>  	_qmount
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -x -c "warn -i -$type 0 $id" $SCRATCH_DEV
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -148,7 +152,9 @@ _exercise()
>  	echo "*** push past the soft block limit" | tee -a $seqres.full
>  	_file_as_id $SCRATCH_MNT/softie $id $type $bsize 200
>  	_qmount
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -x -c "warn -i -$type 0 $id" \
> +		-c "warn -b -$type 0 $id" $SCRATCH_DEV
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -160,7 +166,9 @@ _exercise()
>  		_file_as_id $SCRATCH_MNT/hard$i $id $type 1024 0
>  	done
>  	_qmount
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -x  -c "warn -b -$type 0 $id" \
> +		-c "warn -i -$type 0 $id" $SCRATCH_DEV
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_report | LC_COLLATE=POSIX sort -ru
>  
> @@ -171,7 +179,8 @@ _exercise()
>  	echo "ls -l $SCRATCH_MNT" >>$seqres.full
>  	ls -l $SCRATCH_MNT >>$seqres.full
>  	_qmount
> -	xfs_quota -D $tmp.projects -P $tmp.projid -x \
> +	$XFS_QUOTA_PROG -x -c "warn -b -$type 0 $id" $SCRATCH_DEV
> +	$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid -x \
>  		-c "repquota -birnN -$type" $SCRATCH_DEV |
>  		_filter_and_check_blks | LC_COLLATE=POSIX sort -ru
>  
> 


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

end of thread, back to index

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-30 18:34 [PATCH] xfs/{050,299}: clear quota warnings in between checks Darrick J. Wong
2020-08-03 13:19 ` Bill O'Donnell

Linux-XFS Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-xfs/0 linux-xfs/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-xfs linux-xfs/ https://lore.kernel.org/linux-xfs \
		linux-xfs@vger.kernel.org
	public-inbox-index linux-xfs

Example config snippet for mirrors

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


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