From fbdda8fa0cf44238ab515a29f5a2d95fc173aaa3 Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Fri, 25 Feb 2022 17:42:16 -0500 Subject: [PATCH] mkfs: add configuration files for the last few LTS kernels Add some sample mkfs configuration files that capture the mkfs feature defaults at the time of the release of the last four upstream LTS kernels. Signed-off-by: Darrick J. Wong Reviewed-by: Christoph Hellwig Signed-off-by: Eric Sandeen --- include/builddefs.in | 2 ++ mkfs/Makefile | 10 +++++++++- mkfs/lts_4.19.conf | 13 +++++++++++++ mkfs/lts_5.10.conf | 13 +++++++++++++ mkfs/lts_5.15.conf | 13 +++++++++++++ mkfs/lts_5.4.conf | 13 +++++++++++++ mkfs/xfs_mkfs.c | 4 ++++ 7 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 mkfs/lts_4.19.conf create mode 100644 mkfs/lts_5.10.conf create mode 100644 mkfs/lts_5.15.conf create mode 100644 mkfs/lts_5.4.conf diff --git a/include/builddefs.in b/include/builddefs.in index 9d0b08005..0bb364310 100644 --- a/include/builddefs.in +++ b/include/builddefs.in @@ -56,6 +56,8 @@ DK_INC_DIR = @includedir@/disk PKG_MAN_DIR = @mandir@ PKG_DOC_DIR = @datadir@/doc/@pkg_name@ PKG_LOCALE_DIR = @datadir@/locale +PKG_DATA_DIR = @datadir@/@pkg_name@ +MKFS_CFG_DIR = @datadir@/@pkg_name@/mkfs CC = @cc@ BUILD_CC = @BUILD_CC@ diff --git a/mkfs/Makefile b/mkfs/Makefile index 9f6a4fadb..0aaf9d069 100644 --- a/mkfs/Makefile +++ b/mkfs/Makefile @@ -9,19 +9,27 @@ LTCOMMAND = mkfs.xfs HFILES = CFILES = proto.c xfs_mkfs.c +CFGFILES = \ + lts_4.19.conf \ + lts_5.4.conf \ + lts_5.10.conf \ + lts_5.15.conf LLDLIBS += $(LIBXFS) $(LIBXCMD) $(LIBFROG) $(LIBRT) $(LIBBLKID) \ $(LIBUUID) $(LIBINIH) $(LIBURCU) $(LIBPTHREAD) LTDEPENDENCIES += $(LIBXFS) $(LIBXCMD) $(LIBFROG) LLDFLAGS = -static-libtool-libs -default: depend $(LTCOMMAND) +default: depend $(LTCOMMAND) $(CFGFILES) include $(BUILDRULES) install: default $(INSTALL) -m 755 -d $(PKG_ROOT_SBIN_DIR) $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_ROOT_SBIN_DIR) + $(INSTALL) -m 755 -d $(MKFS_CFG_DIR) + $(INSTALL) -m 644 $(CFGFILES) $(MKFS_CFG_DIR) + install-dev: -include .dep diff --git a/mkfs/lts_4.19.conf b/mkfs/lts_4.19.conf new file mode 100644 index 000000000..d21fcb7ec --- /dev/null +++ b/mkfs/lts_4.19.conf @@ -0,0 +1,13 @@ +# V5 features that were the mkfs defaults when the upstream Linux 4.19 LTS +# kernel was released at the end of 2018. + +[metadata] +bigtime=0 +crc=1 +finobt=1 +inobtcount=0 +reflink=0 +rmapbt=0 + +[inode] +sparse=1 diff --git a/mkfs/lts_5.10.conf b/mkfs/lts_5.10.conf new file mode 100644 index 000000000..ac00960ef --- /dev/null +++ b/mkfs/lts_5.10.conf @@ -0,0 +1,13 @@ +# V5 features that were the mkfs defaults when the upstream Linux 5.10 LTS +# kernel was released at the end of 2020. + +[metadata] +bigtime=0 +crc=1 +finobt=1 +inobtcount=0 +reflink=1 +rmapbt=0 + +[inode] +sparse=1 diff --git a/mkfs/lts_5.15.conf b/mkfs/lts_5.15.conf new file mode 100644 index 000000000..320829584 --- /dev/null +++ b/mkfs/lts_5.15.conf @@ -0,0 +1,13 @@ +# V5 features that were the mkfs defaults when the upstream Linux 5.15 LTS +# kernel was released at the end of 2021. + +[metadata] +bigtime=1 +crc=1 +finobt=1 +inobtcount=1 +reflink=1 +rmapbt=0 + +[inode] +sparse=1 diff --git a/mkfs/lts_5.4.conf b/mkfs/lts_5.4.conf new file mode 100644 index 000000000..dd60b9f15 --- /dev/null +++ b/mkfs/lts_5.4.conf @@ -0,0 +1,13 @@ +# V5 features that were the mkfs defaults when the upstream Linux 5.4 LTS +# kernel was released at the end of 2019. + +[metadata] +bigtime=0 +crc=1 +finobt=1 +inobtcount=0 +reflink=1 +rmapbt=0 + +[inode] +sparse=1 diff --git a/mkfs/xfs_mkfs.c b/mkfs/xfs_mkfs.c index fcad6b552..af536a8ae 100644 --- a/mkfs/xfs_mkfs.c +++ b/mkfs/xfs_mkfs.c @@ -3875,6 +3875,10 @@ main( .nodalign = false, .nortalign = false, .bigtime = false, + /* + * When we decide to enable a new feature by default, + * please remember to update the mkfs conf files. + */ }, }; -- 2.47.2