On Thu, Aug 04, 2016 at 08:44:39AM -0700, Christoph Hellwig wrote: > On Wed, Aug 03, 2016 at 02:46:13PM -0700, Darrick J. Wong wrote: > > Track the number of blocks used for the rmapbt in the AGF. When we > > get to the AG reservation code we need this counter to quickly > > make our reservation during mount. > > > > v2: Actually include growfs support. > > > > Signed-off-by: Darrick J. Wong <darrick.wong@xxxxxxxxxx> > > --- > > fs/xfs/libxfs/xfs_alloc.c | 1 + > > fs/xfs/libxfs/xfs_format.h | 11 ++++++++--- > > fs/xfs/libxfs/xfs_rmap_btree.c | 6 ++++++ > > fs/xfs/xfs_fsops.c | 1 + > > 4 files changed, 16 insertions(+), 3 deletions(-) > > > > diff --git a/fs/xfs/libxfs/xfs_alloc.c b/fs/xfs/libxfs/xfs_alloc.c > > index 776ae2f..af1a72e 100644 > > --- a/fs/xfs/libxfs/xfs_alloc.c > > +++ b/fs/xfs/libxfs/xfs_alloc.c > > @@ -2264,6 +2264,7 @@ xfs_alloc_log_agf( > > offsetof(xfs_agf_t, agf_longest), > > offsetof(xfs_agf_t, agf_btreeblks), > > offsetof(xfs_agf_t, agf_uuid), > > + offsetof(xfs_agf_t, agf_rmap_blocks), > > sizeof(xfs_agf_t) > > }; > > > > diff --git a/fs/xfs/libxfs/xfs_format.h b/fs/xfs/libxfs/xfs_format.h > > index f814d42..e6a8bea 100644 > > --- a/fs/xfs/libxfs/xfs_format.h > > +++ b/fs/xfs/libxfs/xfs_format.h > > @@ -640,12 +640,15 @@ typedef struct xfs_agf { > > __be32 agf_btreeblks; /* # of blocks held in AGF btrees */ > > uuid_t agf_uuid; /* uuid of filesystem */ > > > > + __be32 agf_rmap_blocks; /* rmapbt blocks used */ > > + __be32 agf_padding; /* padding */ > > Now _spare? It could easily be used by the next new field. The reflink patches will (almost immediately) consume agf_padding and the next spare for refcount_{root,level,blocks}. --D > Otherwise this looks fine to me: > > Reviewed-by: Christoph Hellwig <hch@xxxxxx> _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs