public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Allison Henderson <allison.henderson@oracle.com>
To: "Darrick J. Wong" <darrick.wong@oracle.com>, sandeen@redhat.com
Cc: linux-xfs@vger.kernel.org
Subject: Re: [PATCH v2 8/9] xfs_info: call xfs_db for offline filesystems
Date: Tue, 22 May 2018 21:36:27 -0700	[thread overview]
Message-ID: <9fa4166d-b5f7-74f1-4ac3-024c45df1d02@oracle.com> (raw)
In-Reply-To: <20180523033339.GL14384@magnolia>

Ok, you can add my review:
Reviewed by: Allison Henderson <allison.henderson@oracle.com>

On 05/22/2018 08:33 PM, Darrick J. Wong wrote:
> From: Darrick J. Wong <darrick.wong@oracle.com>
> 
> If the online filesystem geometry query doesn't work, try using xfs_db
> to see if we can grab the information offline.
> 
> Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
> ---
>   man/man8/xfs_growfs.8 |   47 +-----------------------
>   man/man8/xfs_info.8   |   97 +++++++++++++++++++++++++++++++++++++++++++++++++
>   spaceman/xfs_info.sh  |   12 +++++-
>   3 files changed, 108 insertions(+), 48 deletions(-)
>   create mode 100644 man/man8/xfs_info.8
> 
> diff --git a/man/man8/xfs_growfs.8 b/man/man8/xfs_growfs.8
> index e23d30e2..7e6a387c 100644
> --- a/man/man8/xfs_growfs.8
> +++ b/man/man8/xfs_growfs.8
> @@ -11,7 +11,7 @@
>   
>   .TH xfs_growfs 8
>   .SH NAME
> -xfs_growfs, xfs_info \- expand an XFS filesystem
> +xfs_growfs \- expand an XFS filesystem
>   .SH SYNOPSIS
>   .B xfs_growfs
>   [
> @@ -38,16 +38,6 @@ xfs_growfs, xfs_info \- expand an XFS filesystem
>   .I mount-point
>   .br
>   .B xfs_growfs \-V
> -.PP
> -.br
> -.B xfs_info
> -[
> -.B \-t
> -.I mtab
> -]
> -.I mount-point
> -.br
> -.B xfs_info \-V
>   .SH DESCRIPTION
>   .B xfs_growfs
>   expands an existing XFS filesystem (see
> @@ -59,13 +49,6 @@ is mounted. The filesystem must be mounted to be grown (see
>   .BR mount (8)).
>   The existing contents of the filesystem are undisturbed, and the added space
>   becomes available for additional file storage.
> -.PP
> -.B xfs_info
> -is equivalent to invoking
> -.B xfs_growfs
> -with the
> -.B \-n
> -option (see discussion below).
>   .SH OPTIONS
>   .TP
>   .BI "\-d | \-D " size
> @@ -169,35 +152,9 @@ reside. In order to grow a filesystem, it is necessary to provide added
>   space for it to occupy. Therefore there must be at least one spare new
>   disk partition available. Adding the space is often done through the use
>   of a logical volume manager.
> -.SH "EXAMPLES"
> -
> -Understanding xfs_info output.
> -.PP
> -Suppose one has the following "xfs_info /dev/sda" output:
> -.PP
> -.RS 2
> -.Vb
> -\&meta-data=/dev/sda      isize=256    agcount=32, agsize=16777184 blks
> -\&         =              sectsz=512   attr=2
> -\&data     =              bsize=4096   blocks=536869888, imaxpct=5
> -\&         =              sunit=32     swidth=128 blks
> -\&naming   =version 2     bsize=4096
> -\&log      =internal      bsize=4096   blocks=32768, version=2
> -\&         =              sectsz=512   sunit=32 blks, lazy-count=1
> -\&realtime =none          extsz=524288 blocks=0, rtextents=0
> -.Ve
> -.RE
> -.PP
> -
> -Here, the data section of the output indicates "bsize=4096",
> -meaning the data block size for this filesystem is 4096 bytes.
> -This section also shows "sunit=32 swidth=128 blks", which means
> -the stripe unit is 32*4096 bytes = 128 kibibytes and the stripe
> -width is 128*4096 bytes = 512 kibibytes.
> -A single stripe of this filesystem therefore consists
> -of four stripe units (128 blocks / 32 blocks per unit).
>   .SH SEE ALSO
>   .BR mkfs.xfs (8),
> +.BR xfs_info (8),
>   .BR md (4),
>   .BR lvm (8),
>   .BR mount (8).
> diff --git a/man/man8/xfs_info.8 b/man/man8/xfs_info.8
> new file mode 100644
> index 00000000..429356a8
> --- /dev/null
> +++ b/man/man8/xfs_info.8
> @@ -0,0 +1,97 @@
> +.\" Verbatim blocks taken from openssl req manpage content
> +.de Vb \" Begin verbatim text
> +.ft CW
> +.nf
> +.ne \\$1
> +..
> +.de Ve \" End verbatim text
> +.ft R
> +.fi
> +..
> +
> +.TH xfs_info 8
> +.SH NAME
> +xfs_info \- display XFS filesystem geometry information
> +.SH SYNOPSIS
> +.B xfs_info
> +[
> +.B \-t
> +.I mtab
> +]
> +[
> +.I mount-point
> +|
> +.I block-device
> +|
> +.I file-image
> +]
> +.br
> +.B xfs_info \-V
> +.SH DESCRIPTION
> +.B xfs_info
> +displays geometry information about an existing XFS filesystem.
> +The
> +.I mount-point
> +argument is the pathname of a directory where the filesystem
> +is mounted.
> +The
> +.I block-device
> +or
> +.I file-image
> +contain a raw XFS filesystem.
> +The existing contents of the filesystem are undisturbed.
> +.SH OPTIONS
> +.TP
> +.B \-t
> +Specifies an alternate mount table file (default is
> +.I /proc/mounts
> +if it exists, else
> +.IR /etc/mtab ).
> +This is used when working with filesystems mounted without writing to
> +.I /etc/mtab
> +file - refer to
> +.BR mount (8)
> +for further details.
> +This option has no effect with the
> +.IR block-device " or " file-image
> +parameters.
> +.TP
> +.B \-V
> +Prints the version number and exits. The
> +.I mount-point
> +argument is not required with
> +.BR \-V .
> +.SH "EXAMPLES"
> +
> +Understanding xfs_info output.
> +.PP
> +Suppose one has the following "xfs_info /dev/sda" output:
> +.PP
> +.RS 2
> +.Vb
> +\&meta-data=/dev/pmem0             isize=512    agcount=8, agsize=5974144 blks
> +\&         =                       sectsz=512   attr=2, projid32bit=1
> +\&         =                       crc=1        finobt=1, sparse=1, rmapbt=1
> +\&         =                       reflink=1
> +\&data     =                       bsize=4096   blocks=47793152, imaxpct=25
> +\&         =                       sunit=32     swidth=128 blks
> +\&naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
> +\&log      =internal log           bsize=4096   blocks=23336, version=2
> +\&         =                       sectsz=512   sunit=0 blks, lazy-count=1
> +\&realtime =none                   extsz=4096   blocks=0, rtextents=0
> +.Ve
> +.RE
> +.PP
> +
> +Here, the data section of the output indicates "bsize=4096",
> +meaning the data block size for this filesystem is 4096 bytes.
> +This section also shows "sunit=32 swidth=128 blks", which means
> +the stripe unit is 32*4096 bytes = 128 kibibytes and the stripe
> +width is 128*4096 bytes = 512 kibibytes.
> +A single stripe of this filesystem therefore consists
> +of four stripe units (128 blocks / 32 blocks per unit).
> +.SH SEE ALSO
> +.BR mkfs.xfs (8),
> +.BR md (4),
> +.BR lvm (8),
> +.BR mount (8).
> diff --git a/spaceman/xfs_info.sh b/spaceman/xfs_info.sh
> index 5df0a265..2e17fd91 100755
> --- a/spaceman/xfs_info.sh
> +++ b/spaceman/xfs_info.sh
> @@ -4,7 +4,7 @@
>   #
>   
>   OPTS=""
> -USAGE="Usage: xfs_info [-V] [-t mtab] mountpoint"
> +USAGE="Usage: xfs_info [-V] [-t mtab] [mountpoint|device|file]"
>   
>   while getopts "t:V" c
>   do
> @@ -22,8 +22,14 @@ done
>   set -- extra "$@"
>   shift $OPTIND
>   case $# in
> -	1)	xfs_spaceman -p xfs_info -c "info" $OPTS "$1"
> -		status=$?
> +	1)
> +		if [ -b "$1" ] || [ -f "$1" ]; then
> +			xfs_db -p xfs_info -c "info" $OPTS "$1"
> +			status=$?
> +		else
> +			xfs_spaceman -p xfs_info -c "info" $OPTS "$1"
> +			status=$?
> +		fi
>   		;;
>   	*)	echo $USAGE 1>&2
>   		exit 2
> --
> To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_majordomo-2Dinfo.html&d=DwIBAg&c=RoP1YumCXCgaWHvlZYR8PZh8Bv7qIrMUB65eapI_JnE&r=LHZQ8fHvy6wDKXGTWcm97burZH5sQKHRDMaY1UthQxc&m=uRT-Nkq5vtStwvh7rxxmiMIK1XkFKJjNdYWIowr_5RE&s=KrEravyvnIfkZJLlnByf7D3rwq_HRTTeL8E4BGwiaoc&e=
> 

  reply	other threads:[~2018-05-23  4:36 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-18  2:45 [PATCH 0/9] xfsprogs-4.17: geometry refactoring Darrick J. Wong
2018-04-18  2:45 ` [PATCH 1/9] libfrog: move platform specific runtime support code out of libxfs Darrick J. Wong
2018-05-03 18:23   ` Eric Sandeen
2018-04-18  2:45 ` [PATCH 2/9] libfrog: refactor fs geometry printing function Darrick J. Wong
2018-05-03 18:47   ` Eric Sandeen
2018-05-03 21:27   ` Eric Sandeen
2018-05-03 21:35     ` Darrick J. Wong
2018-04-18  2:45 ` [PATCH 3/9] mkfs: use geometry generation / helper functions Darrick J. Wong
2018-05-03 18:52   ` Eric Sandeen
2018-04-18  2:45 ` [PATCH 4/9] xfs_db: add a superblock info command Darrick J. Wong
2018-05-03 20:53   ` Eric Sandeen
2018-05-03 21:44     ` Darrick J. Wong
2018-05-23  3:30   ` [PATCH v2 " Darrick J. Wong
2018-05-23  3:57     ` Allison Henderson
2018-04-18  2:46 ` [PATCH 5/9] xfs_spaceman: print a nicer message when the file path isn't on an xfs Darrick J. Wong
2018-05-03 20:57   ` Eric Sandeen
2018-05-23  3:31   ` [PATCH v2 " Darrick J. Wong
2018-05-23  3:58     ` Allison Henderson
2018-04-18  2:46 ` [PATCH 6/9] xfs_spaceman: add a superblock info command Darrick J. Wong
2018-05-03 21:09   ` Eric Sandeen
2018-05-03 21:39     ` Darrick J. Wong
2018-05-08 15:24       ` Darrick J. Wong
2018-05-23  3:32   ` [PATCH v2 " Darrick J. Wong
2018-05-23  4:08     ` Allison Henderson
2018-04-18  2:46 ` [PATCH 7/9] xfs_info: move to xfs_spaceman Darrick J. Wong
2018-05-03 21:17   ` Eric Sandeen
2018-05-03 21:48     ` Darrick J. Wong
2018-04-18  2:46 ` [PATCH 8/9] xfs_info: call xfs_db for offline filesystems Darrick J. Wong
2018-05-03 21:22   ` Eric Sandeen
2018-05-03 21:55     ` Darrick J. Wong
2018-05-23  3:33   ` [PATCH v2 " Darrick J. Wong
2018-05-23  4:36     ` Allison Henderson [this message]
2018-04-18  2:46 ` [PATCH 9/9] xfs_growfs: refactor geometry reporting Darrick J. Wong
2018-05-03 21:25   ` Eric Sandeen

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=9fa4166d-b5f7-74f1-4ac3-024c45df1d02@oracle.com \
    --to=allison.henderson@oracle.com \
    --cc=darrick.wong@oracle.com \
    --cc=linux-xfs@vger.kernel.org \
    --cc=sandeen@redhat.com \
    /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