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

Shin'ichiro Kawasaki
2022-02-09T12:34:31Z

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 <djwong@kernel.org>
Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
---
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