public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <darrick.wong@oracle.com>
To: Brian Foster <bfoster@redhat.com>
Cc: sandeen@sandeen.net, linux-xfs@vger.kernel.org
Subject: Re: [PATCH 8/9] mkfs: enable the inode btree counter feature
Date: Wed, 28 Oct 2020 18:02:01 -0700	[thread overview]
Message-ID: <20201029010201.GI1061252@magnolia> (raw)
In-Reply-To: <20201028173038.GG1611922@bfoster>

On Wed, Oct 28, 2020 at 01:30:38PM -0400, Brian Foster wrote:
> On Mon, Oct 26, 2020 at 04:33:56PM -0700, Darrick J. Wong wrote:
> > From: Darrick J. Wong <darrick.wong@oracle.com>
> > 
> > Teach mkfs how to enable the inode btree counter feature.
> > 
> > Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> > ---
> >  man/man8/mkfs.xfs.8 |   15 +++++++++++++++
> >  mkfs/xfs_mkfs.c     |   34 +++++++++++++++++++++++++++++++++-
> >  2 files changed, 48 insertions(+), 1 deletion(-)
> > 
> > 
> > diff --git a/man/man8/mkfs.xfs.8 b/man/man8/mkfs.xfs.8
> > index 0a7858748457..1a6a5f93f0ea 100644
> > --- a/man/man8/mkfs.xfs.8
> > +++ b/man/man8/mkfs.xfs.8
> ...
> > @@ -862,7 +871,8 @@ usage( void )
> >  {
> >  	fprintf(stderr, _("Usage: %s\n\
> >  /* blocksize */		[-b size=num]\n\
> > -/* metadata */		[-m crc=0|1,finobt=0|1,uuid=xxx,rmapbt=0|1,reflink=0|1]\n\
> > +/* metadata */		[-m crc=0|1,finobt=0|1,uuid=xxx,rmapbt=0|1,reflink=0|1,\n\
> > +			    inobtcnt=0|1]\n\
> >  /* data subvol */	[-d agcount=n,agsize=n,file,name=xxx,size=num,\n\
> >  			    (sunit=value,swidth=value|su=num,sw=num|noalign),\n\
> >  			    sectsize=num\n\
> 
> Any plans to add a geometry flag so the feature state is reported on
> success? Otherwise LGTM:

<shrug> This feature doesn't enable any user-visible functionality, so I
don't see much point in doing so.

Thanks for the review!

--D

> Reviewed-by: Brian Foster <bfoster@redhat.com>
> 
> > @@ -1565,6 +1575,9 @@ meta_opts_parser(
> >  	case M_REFLINK:
> >  		cli->sb_feat.reflink = getnum(value, opts, subopt);
> >  		break;
> > +	case M_INOBTCNT:
> > +		cli->sb_feat.inobtcnt = getnum(value, opts, subopt);
> > +		break;
> >  	default:
> >  		return -EINVAL;
> >  	}
> > @@ -1988,6 +2001,22 @@ _("reflink not supported without CRC support\n"));
> >  			usage();
> >  		}
> >  		cli->sb_feat.reflink = false;
> > +
> > +		if (cli->sb_feat.inobtcnt && cli_opt_set(&mopts, M_INOBTCNT)) {
> > +			fprintf(stderr,
> > +_("inode btree counters not supported without CRC support\n"));
> > +			usage();
> > +		}
> > +		cli->sb_feat.inobtcnt = false;
> > +	}
> > +
> > +	if (!cli->sb_feat.finobt) {
> > +		if (cli->sb_feat.inobtcnt && cli_opt_set(&mopts, M_INOBTCNT)) {
> > +			fprintf(stderr,
> > +_("inode btree counters not supported without finobt support\n"));
> > +			usage();
> > +		}
> > +		cli->sb_feat.inobtcnt = false;
> >  	}
> >  
> >  	if ((cli->fsx.fsx_xflags & FS_XFLAG_COWEXTSIZE) &&
> > @@ -2955,6 +2984,8 @@ sb_set_features(
> >  		sbp->sb_features_ro_compat |= XFS_SB_FEAT_RO_COMPAT_RMAPBT;
> >  	if (fp->reflink)
> >  		sbp->sb_features_ro_compat |= XFS_SB_FEAT_RO_COMPAT_REFLINK;
> > +	if (fp->inobtcnt)
> > +		sbp->sb_features_ro_compat |= XFS_SB_FEAT_RO_COMPAT_INOBTCNT;
> >  
> >  	/*
> >  	 * Sparse inode chunk support has two main inode alignment requirements.
> > @@ -3617,6 +3648,7 @@ main(
> >  			.spinodes = true,
> >  			.rmapbt = false,
> >  			.reflink = true,
> > +			.inobtcnt = false,
> >  			.parent_pointers = false,
> >  			.nodalign = false,
> >  			.nortalign = false,
> > 
> 

  reply	other threads:[~2020-10-29  1:02 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-26 23:33 [PATCH v4 0/9] xfsprogs: add a inode btree blocks counts to the AGI header Darrick J. Wong
2020-10-26 23:33 ` [PATCH 1/9] xfs: store inode btree block counts in " Darrick J. Wong
2020-10-26 23:33 ` [PATCH 2/9] xfs: use the finobt block counts to speed up mount times Darrick J. Wong
2020-10-26 23:33 ` [PATCH 3/9] xfs: support inode btree blockcounts in online repair Darrick J. Wong
2020-10-26 23:33 ` [PATCH 4/9] xfs_db: support displaying inode btree block counts in AGI header Darrick J. Wong
2020-10-28 17:28   ` Brian Foster
2020-10-26 23:33 ` [PATCH 5/9] xfs_db: add inobtcnt upgrade path Darrick J. Wong
2020-10-28 17:29   ` Brian Foster
2020-10-29  0:03     ` Darrick J. Wong
2020-10-29 12:09       ` Brian Foster
2020-10-29 15:42         ` Darrick J. Wong
2020-11-16 21:13   ` [PATCH v2 " Darrick J. Wong
2020-11-18 21:05     ` Eric Sandeen
2020-11-20  1:05       ` Darrick J. Wong
2020-11-20  4:10         ` Eric Sandeen
2020-10-26 23:33 ` [PATCH 6/9] xfs_repair: check inode btree block counters in AGI Darrick J. Wong
2020-10-28 17:29   ` Brian Foster
2020-10-29  1:01     ` Darrick J. Wong
2020-11-16 17:19   ` [PATCH v2 " Darrick J. Wong
2020-11-16 20:29     ` Eric Sandeen
2020-10-26 23:33 ` [PATCH 7/9] xfs_repair: regenerate " Darrick J. Wong
2020-10-28 17:30   ` Brian Foster
2020-10-26 23:33 ` [PATCH 8/9] mkfs: enable the inode btree counter feature Darrick J. Wong
2020-10-28 17:30   ` Brian Foster
2020-10-29  1:02     ` Darrick J. Wong [this message]
2020-10-26 23:34 ` [PATCH 9/9] xfs: enable new inode btree counters feature Darrick J. Wong

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201029010201.GI1061252@magnolia \
    --to=darrick.wong@oracle.com \
    --cc=bfoster@redhat.com \
    --cc=linux-xfs@vger.kernel.org \
    --cc=sandeen@sandeen.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox