diff mbox series

xfs/030: repair should actually find the zeroed block pointer in the agfl

Message ID 20200729145322.GZ7600@magnolia (mailing list archive)
State New, archived
Headers show
Series xfs/030: repair should actually find the zeroed block pointer in the agfl | expand

Commit Message

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

In xfs/030, at some point we zero the entire AGFL.  Repair should really
find and complain about the AGFL list item that points to the AG
superblock.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
---
 tests/xfs/030.out |    1 +
 1 file changed, 1 insertion(+)

Comments

Zorro Lang July 29, 2020, 4:04 p.m. UTC | #1
On Wed, Jul 29, 2020 at 07:53:22AM -0700, Darrick J. Wong wrote:
> From: Darrick J. Wong <darrick.wong@oracle.com>
> 
> In xfs/030, at some point we zero the entire AGFL.  Repair should really
> find and complain about the AGFL list item that points to the AG
> superblock.
> 
> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> ---
>  tests/xfs/030.out |    1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tests/xfs/030.out b/tests/xfs/030.out
> index 4a7c4b8b..53299438 100644
> --- a/tests/xfs/030.out
> +++ b/tests/xfs/030.out
> @@ -105,6 +105,7 @@ Phase 1 - find and verify superblock...
>  Phase 2 - using <TYPEOF> log
>          - zero log...
>          - scan filesystem freespace and inode maps...
> +bad agbno AGBNO in agfl, agno 0

So this line is expected? This cause xfs/030 fails on old xfsprogs (on RHEL7 and
RHEL8).

>          - found root inode chunk
>  Phase 3 - for each AG...
>          - scan and clear agi unlinked lists...
>
Darrick J. Wong July 29, 2020, 4:12 p.m. UTC | #2
On Thu, Jul 30, 2020 at 12:04:38AM +0800, Zorro Lang wrote:
> On Wed, Jul 29, 2020 at 07:53:22AM -0700, Darrick J. Wong wrote:
> > From: Darrick J. Wong <darrick.wong@oracle.com>
> > 
> > In xfs/030, at some point we zero the entire AGFL.  Repair should really
> > find and complain about the AGFL list item that points to the AG
> > superblock.
> > 
> > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> > ---
> >  tests/xfs/030.out |    1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/tests/xfs/030.out b/tests/xfs/030.out
> > index 4a7c4b8b..53299438 100644
> > --- a/tests/xfs/030.out
> > +++ b/tests/xfs/030.out
> > @@ -105,6 +105,7 @@ Phase 1 - find and verify superblock...
> >  Phase 2 - using <TYPEOF> log
> >          - zero log...
> >          - scan filesystem freespace and inode maps...
> > +bad agbno AGBNO in agfl, agno 0
> 
> So this line is expected? This cause xfs/030 fails on old xfsprogs (on RHEL7 and
> RHEL8).

Yes, because xfs_repair was changed in dcd6c2e1 ("xfs_repair: convert to
libxfs_verify_agbno") to complain about zeroed entries in the AGFL.  I
guess now that that's upstream I should really change the commit log...

--D

> 
> >          - found root inode chunk
> >  Phase 3 - for each AG...
> >          - scan and clear agi unlinked lists...
> > 
>
diff mbox series

Patch

diff --git a/tests/xfs/030.out b/tests/xfs/030.out
index 4a7c4b8b..53299438 100644
--- a/tests/xfs/030.out
+++ b/tests/xfs/030.out
@@ -105,6 +105,7 @@  Phase 1 - find and verify superblock...
 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...