diff mbox series

xfs/010,030: filter AG header CRC error warnings

Message ID 20200729025119.GV7600@magnolia (mailing list archive)
State New, archived
Headers show
Series xfs/010,030: filter AG header CRC error warnings | expand

Commit Message

Darrick J. Wong July 29, 2020, 2:51 a.m. UTC
From: Darrick J. Wong <darrick.wong@oracle.com>

Filter out the new AG header CRC verification warnings in xfs_repair
since these tests were built before that existed.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
---
 tests/xfs/010 |    7 ++++++-
 tests/xfs/030 |    2 ++
 2 files changed, 8 insertions(+), 1 deletion(-)

Comments

Zorro Lang July 29, 2020, 4:49 a.m. UTC | #1
On Tue, Jul 28, 2020 at 07:51:19PM -0700, Darrick J. Wong wrote:
> From: Darrick J. Wong <darrick.wong@oracle.com>
> 
> Filter out the new AG header CRC verification warnings in xfs_repair
> since these tests were built before that existed.
> 
> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> ---

Hi Darrick,

I still hit an error[1] on xfs/030 after merge your patch.

Thanks,
Zorro

# diff -u ./tests/xfs/030.out ./results//xfs/030.out.bad                                                          
--- /root/git/xfstests-dev/tests/xfs/030.out    2020-03-12 11:22:50.063148796 +0800
+++ /root/git/xfstests-dev/results//xfs/030.out.bad     2020-07-29 12:33:08.485428533 +0800
@@ -105,6 +105,7 @@
 Phase 2 - using <TYPEOF> log
         - zero log...
         - scan filesystem freespace and inode maps...
+bad agbno AGBNO in agfl, agno 0
         - found root inode chunk
 Phase 3 - for each AG...
         - scan and clear agi unlinked lists...

>  tests/xfs/010 |    7 ++++++-
>  tests/xfs/030 |    2 ++
>  2 files changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/xfs/010 b/tests/xfs/010
> index e220a651..b65dd3ba 100755
> --- a/tests/xfs/010
> +++ b/tests/xfs/010
> @@ -113,7 +113,12 @@ _check_scratch_fs
>  # nuke the finobt root, repair will have to regenerate from the inobt
>  _corrupt_finobt_root $SCRATCH_DEV
>  
> -_scratch_xfs_repair 2>&1 | _filter_repair_lostblocks
> +filter_finobt_repair() {
> +	sed -e '/^agi has bad CRC/d' | \
> +		_filter_repair_lostblocks
> +}
> +
> +_scratch_xfs_repair 2>&1 | filter_finobt_repair
>  
>  status=0
>  exit
> diff --git a/tests/xfs/030 b/tests/xfs/030
> index efdb6a18..ebe4c92a 100755
> --- a/tests/xfs/030
> +++ b/tests/xfs/030
> @@ -42,6 +42,8 @@ _check_ag()
>  			    -e '/^bad agbno AGBNO for finobt/d' \
>  			    -e '/^bad agbno AGBNO for rmapbt/d' \
>  			    -e '/^bad agbno AGBNO for refcntbt/d' \
> +			    -e '/^agf has bad CRC/d' \
> +			    -e '/^agi has bad CRC/d' \
>  			    -e '/^Missing reverse-mapping record.*/d' \
>  			    -e '/^unknown block state, ag AGNO, block.*/d'
>  	done
>
Darrick J. Wong July 29, 2020, 2:50 p.m. UTC | #2
On Wed, Jul 29, 2020 at 12:49:56PM +0800, Zorro Lang wrote:
> On Tue, Jul 28, 2020 at 07:51:19PM -0700, Darrick J. Wong wrote:
> > From: Darrick J. Wong <darrick.wong@oracle.com>
> > 
> > Filter out the new AG header CRC verification warnings in xfs_repair
> > since these tests were built before that existed.
> > 
> > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> > ---
> 
> Hi Darrick,
> 
> I still hit an error[1] on xfs/030 after merge your patch.

D'oh, I forgot to send that one out in this batch.  Will fix that
shortly.

--D

> Thanks,
> Zorro
> 
> # diff -u ./tests/xfs/030.out ./results//xfs/030.out.bad                                                          
> --- /root/git/xfstests-dev/tests/xfs/030.out    2020-03-12 11:22:50.063148796 +0800
> +++ /root/git/xfstests-dev/results//xfs/030.out.bad     2020-07-29 12:33:08.485428533 +0800
> @@ -105,6 +105,7 @@
>  Phase 2 - using <TYPEOF> log
>          - zero log...
>          - scan filesystem freespace and inode maps...
> +bad agbno AGBNO in agfl, agno 0
>          - found root inode chunk
>  Phase 3 - for each AG...
>          - scan and clear agi unlinked lists...
> 
> >  tests/xfs/010 |    7 ++++++-
> >  tests/xfs/030 |    2 ++
> >  2 files changed, 8 insertions(+), 1 deletion(-)
> > 
> > diff --git a/tests/xfs/010 b/tests/xfs/010
> > index e220a651..b65dd3ba 100755
> > --- a/tests/xfs/010
> > +++ b/tests/xfs/010
> > @@ -113,7 +113,12 @@ _check_scratch_fs
> >  # nuke the finobt root, repair will have to regenerate from the inobt
> >  _corrupt_finobt_root $SCRATCH_DEV
> >  
> > -_scratch_xfs_repair 2>&1 | _filter_repair_lostblocks
> > +filter_finobt_repair() {
> > +	sed -e '/^agi has bad CRC/d' | \
> > +		_filter_repair_lostblocks
> > +}
> > +
> > +_scratch_xfs_repair 2>&1 | filter_finobt_repair
> >  
> >  status=0
> >  exit
> > diff --git a/tests/xfs/030 b/tests/xfs/030
> > index efdb6a18..ebe4c92a 100755
> > --- a/tests/xfs/030
> > +++ b/tests/xfs/030
> > @@ -42,6 +42,8 @@ _check_ag()
> >  			    -e '/^bad agbno AGBNO for finobt/d' \
> >  			    -e '/^bad agbno AGBNO for rmapbt/d' \
> >  			    -e '/^bad agbno AGBNO for refcntbt/d' \
> > +			    -e '/^agf has bad CRC/d' \
> > +			    -e '/^agi has bad CRC/d' \
> >  			    -e '/^Missing reverse-mapping record.*/d' \
> >  			    -e '/^unknown block state, ag AGNO, block.*/d'
> >  	done
> > 
>
Yang Xu Aug. 26, 2020, 8:23 a.m. UTC | #3
Hi Darrick, Eryu

It seems that fstests missed this patch. I used lastest xfsprogs 
(include commit a891d871 xfs_repair: complain about ag header crc 
errors) and xfs/030 still fails because of CRC verification warnings.

Best Regards
Yang Xu
> On Wed, Jul 29, 2020 at 12:49:56PM +0800, Zorro Lang wrote:
>> On Tue, Jul 28, 2020 at 07:51:19PM -0700, Darrick J. Wong wrote:
>>> From: Darrick J. Wong <darrick.wong@oracle.com>
>>>
>>> Filter out the new AG header CRC verification warnings in xfs_repair
>>> since these tests were built before that existed.
>>>
>>> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
>>> ---
>>
>> Hi Darrick,
>>
>> I still hit an error[1] on xfs/030 after merge your patch.
> 
> D'oh, I forgot to send that one out in this batch.  Will fix that
> shortly.
> 
> --D
> 
>> Thanks,
>> Zorro
>>
>> # diff -u ./tests/xfs/030.out ./results//xfs/030.out.bad
>> --- /root/git/xfstests-dev/tests/xfs/030.out    2020-03-12 11:22:50.063148796 +0800
>> +++ /root/git/xfstests-dev/results//xfs/030.out.bad     2020-07-29 12:33:08.485428533 +0800
>> @@ -105,6 +105,7 @@
>>   Phase 2 - using <TYPEOF> log
>>           - zero log...
>>           - scan filesystem freespace and inode maps...
>> +bad agbno AGBNO in agfl, agno 0
>>           - found root inode chunk
>>   Phase 3 - for each AG...
>>           - scan and clear agi unlinked lists...
>>
>>>   tests/xfs/010 |    7 ++++++-
>>>   tests/xfs/030 |    2 ++
>>>   2 files changed, 8 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/tests/xfs/010 b/tests/xfs/010
>>> index e220a651..b65dd3ba 100755
>>> --- a/tests/xfs/010
>>> +++ b/tests/xfs/010
>>> @@ -113,7 +113,12 @@ _check_scratch_fs
>>>   # nuke the finobt root, repair will have to regenerate from the inobt
>>>   _corrupt_finobt_root $SCRATCH_DEV
>>>   
>>> -_scratch_xfs_repair 2>&1 | _filter_repair_lostblocks
>>> +filter_finobt_repair() {
>>> +	sed -e '/^agi has bad CRC/d' | \
>>> +		_filter_repair_lostblocks
>>> +}
>>> +
>>> +_scratch_xfs_repair 2>&1 | filter_finobt_repair
>>>   
>>>   status=0
>>>   exit
>>> diff --git a/tests/xfs/030 b/tests/xfs/030
>>> index efdb6a18..ebe4c92a 100755
>>> --- a/tests/xfs/030
>>> +++ b/tests/xfs/030
>>> @@ -42,6 +42,8 @@ _check_ag()
>>>   			    -e '/^bad agbno AGBNO for finobt/d' \
>>>   			    -e '/^bad agbno AGBNO for rmapbt/d' \
>>>   			    -e '/^bad agbno AGBNO for refcntbt/d' \
>>> +			    -e '/^agf has bad CRC/d' \
>>> +			    -e '/^agi has bad CRC/d' \
>>>   			    -e '/^Missing reverse-mapping record.*/d' \
>>>   			    -e '/^unknown block state, ag AGNO, block.*/d'
>>>   	done
>>>
>>
> 
>
Yang Xu Aug. 28, 2020, 1:33 a.m. UTC | #4
Hi Darrick,Eryu

ping. Or I miss something?
> Hi Darrick, Eryu
> 
> It seems that fstests missed this patch. I used lastest xfsprogs 
> (include commit a891d871 xfs_repair: complain about ag header crc 
> errors) and xfs/030 still fails because of CRC verification warnings.
> 
> Best Regards
> Yang Xu
>> On Wed, Jul 29, 2020 at 12:49:56PM +0800, Zorro Lang wrote:
>>> On Tue, Jul 28, 2020 at 07:51:19PM -0700, Darrick J. Wong wrote:
>>>> From: Darrick J. Wong <darrick.wong@oracle.com>
>>>>
>>>> Filter out the new AG header CRC verification warnings in xfs_repair
>>>> since these tests were built before that existed.
>>>>
>>>> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
>>>> ---
>>>
>>> Hi Darrick,
>>>
>>> I still hit an error[1] on xfs/030 after merge your patch.
>>
>> D'oh, I forgot to send that one out in this batch.  Will fix that
>> shortly.
>>
>> --D
>>
>>> Thanks,
>>> Zorro
>>>
>>> # diff -u ./tests/xfs/030.out ./results//xfs/030.out.bad
>>> --- /root/git/xfstests-dev/tests/xfs/030.out    2020-03-12 
>>> 11:22:50.063148796 +0800
>>> +++ /root/git/xfstests-dev/results//xfs/030.out.bad     2020-07-29 
>>> 12:33:08.485428533 +0800
>>> @@ -105,6 +105,7 @@
>>>   Phase 2 - using <TYPEOF> log
>>>           - zero log...
>>>           - scan filesystem freespace and inode maps...
>>> +bad agbno AGBNO in agfl, agno 0
>>>           - found root inode chunk
>>>   Phase 3 - for each AG...
>>>           - scan and clear agi unlinked lists...
>>>
>>>>   tests/xfs/010 |    7 ++++++-
>>>>   tests/xfs/030 |    2 ++
>>>>   2 files changed, 8 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/tests/xfs/010 b/tests/xfs/010
>>>> index e220a651..b65dd3ba 100755
>>>> --- a/tests/xfs/010
>>>> +++ b/tests/xfs/010
>>>> @@ -113,7 +113,12 @@ _check_scratch_fs
>>>>   # nuke the finobt root, repair will have to regenerate from the inobt
>>>>   _corrupt_finobt_root $SCRATCH_DEV
>>>> -_scratch_xfs_repair 2>&1 | _filter_repair_lostblocks
>>>> +filter_finobt_repair() {
>>>> +    sed -e '/^agi has bad CRC/d' | \
>>>> +        _filter_repair_lostblocks
>>>> +}
>>>> +
>>>> +_scratch_xfs_repair 2>&1 | filter_finobt_repair
>>>>   status=0
>>>>   exit
>>>> diff --git a/tests/xfs/030 b/tests/xfs/030
>>>> index efdb6a18..ebe4c92a 100755
>>>> --- a/tests/xfs/030
>>>> +++ b/tests/xfs/030
>>>> @@ -42,6 +42,8 @@ _check_ag()
>>>>                   -e '/^bad agbno AGBNO for finobt/d' \
>>>>                   -e '/^bad agbno AGBNO for rmapbt/d' \
>>>>                   -e '/^bad agbno AGBNO for refcntbt/d' \
>>>> +                -e '/^agf has bad CRC/d' \
>>>> +                -e '/^agi has bad CRC/d' \
>>>>                   -e '/^Missing reverse-mapping record.*/d' \
>>>>                   -e '/^unknown block state, ag AGNO, block.*/d'
>>>>       done
>>>>
>>>
>>
>>
diff mbox series

Patch

diff --git a/tests/xfs/010 b/tests/xfs/010
index e220a651..b65dd3ba 100755
--- a/tests/xfs/010
+++ b/tests/xfs/010
@@ -113,7 +113,12 @@  _check_scratch_fs
 # nuke the finobt root, repair will have to regenerate from the inobt
 _corrupt_finobt_root $SCRATCH_DEV
 
-_scratch_xfs_repair 2>&1 | _filter_repair_lostblocks
+filter_finobt_repair() {
+	sed -e '/^agi has bad CRC/d' | \
+		_filter_repair_lostblocks
+}
+
+_scratch_xfs_repair 2>&1 | filter_finobt_repair
 
 status=0
 exit
diff --git a/tests/xfs/030 b/tests/xfs/030
index efdb6a18..ebe4c92a 100755
--- a/tests/xfs/030
+++ b/tests/xfs/030
@@ -42,6 +42,8 @@  _check_ag()
 			    -e '/^bad agbno AGBNO for finobt/d' \
 			    -e '/^bad agbno AGBNO for rmapbt/d' \
 			    -e '/^bad agbno AGBNO for refcntbt/d' \
+			    -e '/^agf has bad CRC/d' \
+			    -e '/^agi has bad CRC/d' \
 			    -e '/^Missing reverse-mapping record.*/d' \
 			    -e '/^unknown block state, ag AGNO, block.*/d'
 	done