xfs: remove the agfl_bno member from struct xfs_agfl
authorChristoph Hellwig <hch@lst.de>
Tue, 10 Mar 2020 15:57:28 +0000 (08:57 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Wed, 11 Mar 2020 16:11:38 +0000 (09:11 -0700)
commit183606d82446110e23987d4b693f3d3fc300bd82
tree8a000b6c4d3d1034056b50755a12b7e75ad11a49
parent10a98cb16d80be3595fdb165fad898bb28b8b6d2
xfs: remove the agfl_bno member from struct xfs_agfl

struct xfs_agfl is a header in front of the AGFL entries that exists
for CRC enabled file systems.  For not CRC enabled file systems the AGFL
is simply a list of agbno.  Make the CRC case similar to that by just
using the list behind the new header.  This indirectly solves a problem
with modern gcc versions that warn about taking addresses of packed
structures (and we have to pack the AGFL given that gcc rounds up
structure sizes).  Also replace the helper macro to get from a buffer
with an inline function in xfs_alloc.h to make the code easier to
read.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
fs/xfs/libxfs/xfs_ag.c
fs/xfs/libxfs/xfs_alloc.c
fs/xfs/libxfs/xfs_alloc.h
fs/xfs/libxfs/xfs_format.h
fs/xfs/scrub/agheader_repair.c