Re: [WIP] [RFC PATCH] xfs_growfs: allow shrinking unused space in the last AG

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 24, 2021 at 10:32:15AM -0700, Darrick J. Wong wrote:
> On Wed, Oct 28, 2020 at 07:40:10PM +0800, Gao Xiang wrote:
> > This allows shrinking operation can pass into kernel.
> > 
> > Signed-off-by: Gao Xiang <hsiangkao@xxxxxxxxxx>
> > ---
> > preliminary version.
> 
> ...which is going to need a manpage update:
> 
> "-d | -D size
> 
> "Specifies that the data section of the filesystem should be resized. If
> the -D size option is given, the data section is changed to that size,
> otherwise the data section is grown to the largest size possible with
> the -d option. The size is expressed in filesystem blocks.  A filesystem
> with only 1 AG cannot be shrunk further, and a filesystem cannot be
> shrunk to the point where it would only have 1 AG."

Ah, ok, will update this. thanks for pointing out.

Thanks,
Gao Xiang

> 
> --D
> 
> > 
> >  growfs/xfs_growfs.c | 9 ++++-----
> >  1 file changed, 4 insertions(+), 5 deletions(-)
> > 
> > diff --git a/growfs/xfs_growfs.c b/growfs/xfs_growfs.c
> > index a68b515d..d45ba703 100644
> > --- a/growfs/xfs_growfs.c
> > +++ b/growfs/xfs_growfs.c
> > @@ -246,12 +246,11 @@ main(int argc, char **argv)
> >  			error = 1;
> >  		}
> >  
> > -		if (!error && dsize < geo.datablocks) {
> > -			fprintf(stderr, _("data size %lld too small,"
> > -				" old size is %lld\n"),
> > +		if (!error && dsize < geo.datablocks)
> > +			fprintf(stderr,
> > +_("[EXPERIMENTAL] try to shrink unused space %lld, old size is %lld\n"),
> >  				(long long)dsize, (long long)geo.datablocks);
> > -			error = 1;
> > -		} else if (!error &&
> > +		if (!error &&
> >  			   dsize == geo.datablocks && maxpct == geo.imaxpct) {
> >  			if (dflag)
> >  				fprintf(stderr, _(
> > -- 
> > 2.18.1
> > 
> 




[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux