2022-02-09 18:13:37

by Shinichiro Kawasaki

[permalink] [raw]
Subject: [PATCH v2 6/6] common: factor out xfs unique part from _filter_mkfs

Most of the code in the function _filter_mkfs is xfs unique. This is
misleading that the function would be dedicated for xfs. Clean up the
function by factoring out xfs unique part to _xfs_filter_mkfs in
common/xfs. While at the same time, fix indent in _xfs_filter_mkfs to be
consistent with other functions in common/xfs.

Suggested-by: Darrick J. Wong <[email protected]>
Signed-off-by: Shin'ichiro Kawasaki <[email protected]>
---
common/filter | 40 +---------------------------------------
common/xfs | 41 +++++++++++++++++++++++++++++++++++++++++
2 files changed, 42 insertions(+), 39 deletions(-)

diff --git a/common/filter b/common/filter
index c3db7a56..257227c2 100644
--- a/common/filter
+++ b/common/filter
@@ -121,53 +121,15 @@ _filter_mkfs()
{
case $FSTYP in
xfs)
+ _xfs_filter_mkfs "$@"
;;
*)
cat - >/dev/null
perl -e 'print STDERR "dbsize=4096\nisize=256\n"'
return ;;
esac
-
- echo "_fs_has_crcs=0" >&2
- set -
- perl -ne '
- if (/^meta-data=([\w,|\/.-]+)\s+isize=(\d+)\s+agcount=(\d+), agsize=(\d+) blks/) {
- print STDERR "ddev=$1\nisize=$2\nagcount=$3\nagsize=$4\n";
- print STDOUT "meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks\n";
- }
- if (/^\s+=\s+sectsz=(\d+)\s+attr=(\d+)/) {
- print STDERR "sectsz=$1\nattr=$2\n";
- }
- if (/^\s+=\s+crc=(\d)/) {
- print STDERR "_fs_has_crcs=$1\n";
- }
- if (/^data\s+=\s+bsize=(\d+)\s+blocks=(\d+), imaxpct=(\d+)/) {
- print STDERR "dbsize=$1\ndblocks=$2\nimaxpct=$3\n";
- print STDOUT "data = bsize=XXX blocks=XXX, imaxpct=PCT\n";
- }
- if (/^\s+=\s+sunit=(\d+)\s+swidth=(\d+) blks/) {
- print STDERR "sunit=$1\nswidth=$2\nunwritten=1\n";
- print STDOUT " = sunit=XXX swidth=XXX, unwritten=X\n";
- }
- if (/^naming\s+=version\s+(\d+)\s+bsize=(\d+)/) {
- print STDERR "dirversion=$1\ndirbsize=$2\n";
- print STDOUT "naming =VERN bsize=XXX\n";
- }
- if (/^log\s+=(internal log|[\w|\/.-]+)\s+bsize=(\d+)\s+blocks=(\d+),\s+version=(\d+)/ ||
- /^log\s+=(internal log|[\w|\/.-]+)\s+bsize=(\d+)\s+blocks=(\d+)/) {
- print STDERR "ldev=\"$1\"\nlbsize=$2\nlblocks=$3\nlversion=$4\n";
- print STDOUT "log =LDEV bsize=XXX blocks=XXX\n";
- }
- if (/^\s+=\s+sectsz=(\d+)\s+sunit=(\d+) blks/) {
- print STDERR "logsectsz=$1\nlogsunit=$2\n\n";
- }
- if (/^realtime\s+=([\w|\/.-]+)\s+extsz=(\d+)\s+blocks=(\d+), rtextents=(\d+)/) {
- print STDERR "rtdev=$1\nrtextsz=$2\nrtblocks=$3\nrtextents=$4\n";
- print STDOUT "realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX\n";
- }'
}

-
# prints the bits we care about in growfs
#
_filter_growfs()
diff --git a/common/xfs b/common/xfs
index 713e9fe7..053b6189 100644
--- a/common/xfs
+++ b/common/xfs
@@ -1275,3 +1275,44 @@ _require_scratch_xfs_bigtime()
_notrun "bigtime feature not advertised on mount?"
_scratch_unmount
}
+
+_xfs_filter_mkfs()
+{
+ echo "_fs_has_crcs=0" >&2
+ set -
+ perl -ne '
+ if (/^meta-data=([\w,|\/.-]+)\s+isize=(\d+)\s+agcount=(\d+), agsize=(\d+) blks/) {
+ print STDERR "ddev=$1\nisize=$2\nagcount=$3\nagsize=$4\n";
+ print STDOUT "meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks\n";
+ }
+ if (/^\s+=\s+sectsz=(\d+)\s+attr=(\d+)/) {
+ print STDERR "sectsz=$1\nattr=$2\n";
+ }
+ if (/^\s+=\s+crc=(\d)/) {
+ print STDERR "_fs_has_crcs=$1\n";
+ }
+ if (/^data\s+=\s+bsize=(\d+)\s+blocks=(\d+), imaxpct=(\d+)/) {
+ print STDERR "dbsize=$1\ndblocks=$2\nimaxpct=$3\n";
+ print STDOUT "data = bsize=XXX blocks=XXX, imaxpct=PCT\n";
+ }
+ if (/^\s+=\s+sunit=(\d+)\s+swidth=(\d+) blks/) {
+ print STDERR "sunit=$1\nswidth=$2\nunwritten=1\n";
+ print STDOUT " = sunit=XXX swidth=XXX, unwritten=X\n";
+ }
+ if (/^naming\s+=version\s+(\d+)\s+bsize=(\d+)/) {
+ print STDERR "dirversion=$1\ndirbsize=$2\n";
+ print STDOUT "naming =VERN bsize=XXX\n";
+ }
+ if (/^log\s+=(internal log|[\w|\/.-]+)\s+bsize=(\d+)\s+blocks=(\d+),\s+version=(\d+)/ ||
+ /^log\s+=(internal log|[\w|\/.-]+)\s+bsize=(\d+)\s+blocks=(\d+)/) {
+ print STDERR "ldev=\"$1\"\nlbsize=$2\nlblocks=$3\nlversion=$4\n";
+ print STDOUT "log =LDEV bsize=XXX blocks=XXX\n";
+ }
+ if (/^\s+=\s+sectsz=(\d+)\s+sunit=(\d+) blks/) {
+ print STDERR "logsectsz=$1\nlogsunit=$2\n\n";
+ }
+ if (/^realtime\s+=([\w|\/.-]+)\s+extsz=(\d+)\s+blocks=(\d+), rtextents=(\d+)/) {
+ print STDERR "rtdev=$1\nrtextsz=$2\nrtblocks=$3\nrtextents=$4\n";
+ print STDOUT "realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX\n";
+ }'
+}
--
2.34.1



2022-02-09 23:56:21

by Darrick J. Wong

[permalink] [raw]
Subject: Re: [PATCH v2 6/6] common: factor out xfs unique part from _filter_mkfs

On Wed, Feb 09, 2022 at 09:33:05PM +0900, Shin'ichiro Kawasaki wrote:
> Most of the code in the function _filter_mkfs is xfs unique. This is
> misleading that the function would be dedicated for xfs. Clean up the
> function by factoring out xfs unique part to _xfs_filter_mkfs in
> common/xfs. While at the same time, fix indent in _xfs_filter_mkfs to be
> consistent with other functions in common/xfs.
>
> Suggested-by: Darrick J. Wong <[email protected]>
> Signed-off-by: Shin'ichiro Kawasaki <[email protected]>

Thanks!!
Reviewed-by: Darrick J. Wong <[email protected]>

--D

> ---
> common/filter | 40 +---------------------------------------
> common/xfs | 41 +++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 42 insertions(+), 39 deletions(-)
>
> diff --git a/common/filter b/common/filter
> index c3db7a56..257227c2 100644
> --- a/common/filter
> +++ b/common/filter
> @@ -121,53 +121,15 @@ _filter_mkfs()
> {
> case $FSTYP in
> xfs)
> + _xfs_filter_mkfs "$@"
> ;;
> *)
> cat - >/dev/null
> perl -e 'print STDERR "dbsize=4096\nisize=256\n"'
> return ;;
> esac
> -
> - echo "_fs_has_crcs=0" >&2
> - set -
> - perl -ne '
> - if (/^meta-data=([\w,|\/.-]+)\s+isize=(\d+)\s+agcount=(\d+), agsize=(\d+) blks/) {
> - print STDERR "ddev=$1\nisize=$2\nagcount=$3\nagsize=$4\n";
> - print STDOUT "meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks\n";
> - }
> - if (/^\s+=\s+sectsz=(\d+)\s+attr=(\d+)/) {
> - print STDERR "sectsz=$1\nattr=$2\n";
> - }
> - if (/^\s+=\s+crc=(\d)/) {
> - print STDERR "_fs_has_crcs=$1\n";
> - }
> - if (/^data\s+=\s+bsize=(\d+)\s+blocks=(\d+), imaxpct=(\d+)/) {
> - print STDERR "dbsize=$1\ndblocks=$2\nimaxpct=$3\n";
> - print STDOUT "data = bsize=XXX blocks=XXX, imaxpct=PCT\n";
> - }
> - if (/^\s+=\s+sunit=(\d+)\s+swidth=(\d+) blks/) {
> - print STDERR "sunit=$1\nswidth=$2\nunwritten=1\n";
> - print STDOUT " = sunit=XXX swidth=XXX, unwritten=X\n";
> - }
> - if (/^naming\s+=version\s+(\d+)\s+bsize=(\d+)/) {
> - print STDERR "dirversion=$1\ndirbsize=$2\n";
> - print STDOUT "naming =VERN bsize=XXX\n";
> - }
> - if (/^log\s+=(internal log|[\w|\/.-]+)\s+bsize=(\d+)\s+blocks=(\d+),\s+version=(\d+)/ ||
> - /^log\s+=(internal log|[\w|\/.-]+)\s+bsize=(\d+)\s+blocks=(\d+)/) {
> - print STDERR "ldev=\"$1\"\nlbsize=$2\nlblocks=$3\nlversion=$4\n";
> - print STDOUT "log =LDEV bsize=XXX blocks=XXX\n";
> - }
> - if (/^\s+=\s+sectsz=(\d+)\s+sunit=(\d+) blks/) {
> - print STDERR "logsectsz=$1\nlogsunit=$2\n\n";
> - }
> - if (/^realtime\s+=([\w|\/.-]+)\s+extsz=(\d+)\s+blocks=(\d+), rtextents=(\d+)/) {
> - print STDERR "rtdev=$1\nrtextsz=$2\nrtblocks=$3\nrtextents=$4\n";
> - print STDOUT "realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX\n";
> - }'
> }
>
> -
> # prints the bits we care about in growfs
> #
> _filter_growfs()
> diff --git a/common/xfs b/common/xfs
> index 713e9fe7..053b6189 100644
> --- a/common/xfs
> +++ b/common/xfs
> @@ -1275,3 +1275,44 @@ _require_scratch_xfs_bigtime()
> _notrun "bigtime feature not advertised on mount?"
> _scratch_unmount
> }
> +
> +_xfs_filter_mkfs()
> +{
> + echo "_fs_has_crcs=0" >&2
> + set -
> + perl -ne '
> + if (/^meta-data=([\w,|\/.-]+)\s+isize=(\d+)\s+agcount=(\d+), agsize=(\d+) blks/) {
> + print STDERR "ddev=$1\nisize=$2\nagcount=$3\nagsize=$4\n";
> + print STDOUT "meta-data=DDEV isize=XXX agcount=N, agsize=XXX blks\n";
> + }
> + if (/^\s+=\s+sectsz=(\d+)\s+attr=(\d+)/) {
> + print STDERR "sectsz=$1\nattr=$2\n";
> + }
> + if (/^\s+=\s+crc=(\d)/) {
> + print STDERR "_fs_has_crcs=$1\n";
> + }
> + if (/^data\s+=\s+bsize=(\d+)\s+blocks=(\d+), imaxpct=(\d+)/) {
> + print STDERR "dbsize=$1\ndblocks=$2\nimaxpct=$3\n";
> + print STDOUT "data = bsize=XXX blocks=XXX, imaxpct=PCT\n";
> + }
> + if (/^\s+=\s+sunit=(\d+)\s+swidth=(\d+) blks/) {
> + print STDERR "sunit=$1\nswidth=$2\nunwritten=1\n";
> + print STDOUT " = sunit=XXX swidth=XXX, unwritten=X\n";
> + }
> + if (/^naming\s+=version\s+(\d+)\s+bsize=(\d+)/) {
> + print STDERR "dirversion=$1\ndirbsize=$2\n";
> + print STDOUT "naming =VERN bsize=XXX\n";
> + }
> + if (/^log\s+=(internal log|[\w|\/.-]+)\s+bsize=(\d+)\s+blocks=(\d+),\s+version=(\d+)/ ||
> + /^log\s+=(internal log|[\w|\/.-]+)\s+bsize=(\d+)\s+blocks=(\d+)/) {
> + print STDERR "ldev=\"$1\"\nlbsize=$2\nlblocks=$3\nlversion=$4\n";
> + print STDOUT "log =LDEV bsize=XXX blocks=XXX\n";
> + }
> + if (/^\s+=\s+sectsz=(\d+)\s+sunit=(\d+) blks/) {
> + print STDERR "logsectsz=$1\nlogsunit=$2\n\n";
> + }
> + if (/^realtime\s+=([\w|\/.-]+)\s+extsz=(\d+)\s+blocks=(\d+), rtextents=(\d+)/) {
> + print STDERR "rtdev=$1\nrtextsz=$2\nrtblocks=$3\nrtextents=$4\n";
> + print STDOUT "realtime =RDEV extsz=XXX blocks=XXX, rtextents=XXX\n";
> + }'
> +}
> --
> 2.34.1
>