diff --git a/.gitignore b/.gitignore
index c1ca66e..b630229 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,87 @@
-SOURCES/util-linux-2.32.1.tar.xz
+/floppy-0.16.tar.bz2
+/util-linux-2.19-rc1.tar.bz2
+/util-linux-2.19-rc1-32-gbded43d.tar.bz2
+/util-linux-2.19-rc2.tar.bz2
+/util-linux-2.19-rc3.tar.bz2
+/util-linux-2.19.tar.bz2
+*~
+.*.log
+*.rpm
+/floppy-0.18.tar.bz2
+/util-linux-2.19.1-rc1.tar.bz2
+/util-linux-2.19.1.tar.bz2
+/util-linux-2.20-rc1.tar.bz2
+/util-linux-2.20-rc2.tar.bz2
+/util-linux-2.20.tar.bz2
+/util-linux-2.20.1.tar.bz2
+/util-linux-2.21-rc2.tar.xz
+/util-linux-2.21.tar.xz
+/util-linux-2.21.1.tar.xz
+/util-linux-2.21.2.tar.xz
+/util-linux-2.22-rc2.tar.xz
+/util-linux-2.22.tar.xz
+/util-linux-2.22.1.tar.xz
+/util-linux-2.22.2.tar.xz
+/util-linux-2.23-rc1.tar.xz
+/util-linux-2.23-rc2.tar.xz
+/util-linux-2.23.tar.xz
+/util-linux-2.23.1.tar.xz
+/util-linux-2.23.2.tar.xz
+/util-linux-2.24-rc1.tar.xz
+/util-linux-2.24.tar.xz
+/util-linux-2.24.1.tar.xz
+/util-linux-2.24.2.tar.xz
+/util-linux-2.25-rc1.tar.xz
+/util-linux-2.25-rc2.tar.xz
+/util-linux-2.25.tar.xz
+/util-linux-2.25.1-rc1.tar.xz
+/util-linux-2.25.1.tar.xz
+/util-linux-2.25.2.tar.xz
+/util-linux-2.26-rc1.tar.xz
+/util-linux-2.26-rc2.tar.xz
+/util-linux-2.26.tar.xz
+/util-linux-2.26.2.tar.xz
+/util-linux-2.27-rc1.tar.xz
+/util-linux-2.27-rc2.tar.xz
+/util-linux-2.27.tar.xz
+/util-linux-2.27.1.tar.xz
+/util-linux-2.28-rc1.tar.xz
+/util-linux-2.28-rc2.tar.xz
+/util-linux-2.28.tar.xz
+/util-linux-2.28.1.tar.xz
+/util-linux-2.28.2.tar.xz
+/util-linux-2.29-rc1.tar.xz
+/util-linux-2.29-rc2.tar.xz
+/util-linux-2.29.tar.xz
+/util-linux-2.29.1.tar.xz
+/util-linux-2.29.2.tar.xz
+/util-linux-2.30-rc1.tar.xz
+/util-linux-2.30.tar.xz
+/util-linux-2.30.1.tar.xz
+/util-linux-2.30.2.tar.xz
+/util-linux-2.31-rc1.tar.xz
+/util-linux-2.31-rc2.tar.xz
+/util-linux-2.31.tar.xz
+/util-linux-2.32-rc1.tar.xz
+/util-linux-2.32.tar.xz
+/util-linux-2.32.1.tar.xz
+/util-linux-2.33-rc2.tar.xz
+/util-linux-2.33.1.tar.xz
+/util-linux-2.33.2.tar.xz
+/util-linux-2.34-rc1.tar.xz
+/util-linux-2.34-rc2.tar.xz
+/util-linux-2.34.tar.xz
+/util-linux-2.35-rc1.tar.xz
+/util-linux-2.35-rc1-20-63f8.tar.xz
+/util-linux-2.35-rc2.tar.xz
+/util-linux-2.35.tar.xz
+/util-linux-2.35.1.tar.xz
+/util-linux-2.35.2.tar.xz
+/util-linux-2.36.tar.xz
+/util-linux-2.36.1.tar.xz
+/util-linux-2.36.2.tar.xz
+/util-linux-2.37.tar.xz
+/util-linux-2.37.1.tar.xz
+/util-linux-2.37.2.tar.xz
+/util-linux-2.37.3.tar.xz
+/util-linux-2.37.4.tar.xz
diff --git a/0000-login-create-var-log-lastlog.patch b/0000-login-create-var-log-lastlog.patch
new file mode 100644
index 0000000..c2ea938
--- /dev/null
+++ b/0000-login-create-var-log-lastlog.patch
@@ -0,0 +1,26 @@
+From ef8c8e117234f135a22ba7180114f0153b2444d8 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 20 Jun 2016 11:09:02 +0200
+Subject: login: create /var/log/lastlog
+
+Addresses: http://bugzilla.redhat.com/show_bug.cgi?id=151635
+---
+ login-utils/login.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/login-utils/login.c b/login-utils/login.c
+index c6cd340b6..3657f04cd 100644
+--- a/login-utils/login.c
++++ b/login-utils/login.c
+@@ -662,7 +662,7 @@ static void log_lastlog(struct login_context *cxt)
+ 	sa.sa_handler = SIG_IGN;
+ 	sigaction(SIGXFSZ, &sa, &oldsa_xfsz);
+ 
+-	fd = open(_PATH_LASTLOG, O_RDWR, 0);
++	fd = open(_PATH_LASTLOG, O_RDWR | O_CREAT, 0);
+ 	if (fd < 0)
+ 		goto done;
+ 	offset = cxt->pwd->pw_uid * sizeof(ll);
+-- 
+2.34.1
+
diff --git a/0001-login-default-motd-file.patch b/0001-login-default-motd-file.patch
new file mode 100644
index 0000000..c869c31
--- /dev/null
+++ b/0001-login-default-motd-file.patch
@@ -0,0 +1,28 @@
+From c8574869e60a0351551cb281872e08b4d8fc68d8 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 24 Aug 2021 13:50:57 +0200
+Subject: login: default motd file
+
+Add `/run/motd.d` to the hardcoded MOTD_FILE
+
+Addresses: https://github.com/coreos/console-login-helper-messages/issues/60
+---
+ include/pathnames.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/pathnames.h b/include/pathnames.h
+index 9be2baa83..7e7d9053f 100644
+--- a/include/pathnames.h
++++ b/include/pathnames.h
+@@ -41,7 +41,7 @@
+ #ifndef _PATH_MAILDIR
+ # define _PATH_MAILDIR		"/var/spool/mail"
+ #endif
+-#define	_PATH_MOTDFILE		"/usr/share/misc/motd:/run/motd:/etc/motd"
++#define	_PATH_MOTDFILE		"/usr/share/misc/motd:/run/motd:/run/motd.d:/etc/motd:/etc/motd.d"
+ #ifndef _PATH_NOLOGIN
+ # define _PATH_NOLOGIN		"/etc/nologin"
+ #endif
+-- 
+2.34.1
+
diff --git a/0002-tests-make-.-run.sh-more-robust.patch b/0002-tests-make-.-run.sh-more-robust.patch
new file mode 100644
index 0000000..61cd973
--- /dev/null
+++ b/0002-tests-make-.-run.sh-more-robust.patch
@@ -0,0 +1,30 @@
+From 38b2b2e49e72638639c997e532a846ee935ce148 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 23 Aug 2021 15:15:38 +0200
+Subject: tests: make ./run.sh more robust
+
+Let's make upstream tests more stable to be usable in RHEL
+environment where we do not use ASAN and meson.
+
+Upstream: http://github.com/karelzak/util-linux/commit/331c5e0c54d9cb6f67dc3e825eec2d78c67d8ce6
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ tests/run.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/run.sh b/tests/run.sh
+index 9d26406c4..d020bfe88 100755
+--- a/tests/run.sh
++++ b/tests/run.sh
+@@ -165,7 +165,7 @@ OPTS="$OPTS --srcdir=$top_srcdir --builddir=$top_builddir"
+ if [ -z "$has_asan_opt" ]; then
+         if [ -e "$top_builddir/Makefile" ]; then
+ 	    asan=$(awk '/^ASAN_LDFLAGS/ { print $3 }' $top_builddir/Makefile)
+-        else
++        elif [ -f "$top_builddir/meson.conf" ]; then
+             . "$top_builddir/meson.conf"
+         fi
+ 	if [ -n "$asan" ]; then
+-- 
+2.34.1
+
diff --git a/0003-tests-make-mount-fstab-all-more-robust.patch b/0003-tests-make-mount-fstab-all-more-robust.patch
new file mode 100644
index 0000000..73e5589
--- /dev/null
+++ b/0003-tests-make-mount-fstab-all-more-robust.patch
@@ -0,0 +1,66 @@
+From a4d1feed2803a5c0596877b64487734bcdb781ef Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 23 Aug 2021 16:28:52 +0200
+Subject: tests: make mount/fstab-all more robust
+
+Upstream: http://github.com/karelzak/util-linux/commit/85ae61dd6d956e7c9fe2b22b8c46bb1d0bfd13da
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ tests/ts/mount/fstab-all | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/tests/ts/mount/fstab-all b/tests/ts/mount/fstab-all
+index acc64e462..6b7018823 100755
+--- a/tests/ts/mount/fstab-all
++++ b/tests/ts/mount/fstab-all
+@@ -79,6 +79,7 @@ echo  "${TS_DEVICE}4 ${MOUNTPOINT}D ext4 rw,defaults 0 0" >> $MY_FSTAB
+ ts_init_subtest "basic"
+ $TS_CMD_MOUNT --all --fstab $MY_FSTAB >> $TS_OUTPUT 2>> $TS_ERRLOG
+ [ $? == 0 ] || ts_log "mount failed"
++udevadm settle
+ $TS_CMD_UMOUNT ${MOUNTPOINT}{A,B,C,D}
+ [ $? == 0 ] || ts_log "umount failed"
+ ts_finalize_subtest
+@@ -87,6 +88,7 @@ ts_finalize_subtest
+ ts_init_subtest "filter-type"
+ $TS_CMD_MOUNT --all --fstab $MY_FSTAB -t ext4 >> $TS_OUTPUT 2>> $TS_ERRLOG
+ [ $? == 0 ] || ts_log "mount failed"
++udevadm settle
+ $TS_CMD_UMOUNT ${MOUNTPOINT}D
+ [ $? == 0 ] || ts_log "umount failed"
+ ts_finalize_subtest
+@@ -95,6 +97,7 @@ ts_finalize_subtest
+ ts_init_subtest "filter-notype"
+ $TS_CMD_MOUNT --all --fstab $MY_FSTAB -t noext4 >> $TS_OUTPUT 2>> $TS_ERRLOG
+ [ $? == 0 ] || ts_log "mount failed"
++udevadm settle
+ $TS_CMD_UMOUNT ${MOUNTPOINT}{A,B,C}
+ [ $? == 0 ] || ts_log "umount failed"
+ ts_finalize_subtest
+@@ -103,6 +106,7 @@ ts_finalize_subtest
+ ts_init_subtest "filter-option"
+ $TS_CMD_MOUNT --all --fstab $MY_FSTAB -O ro >> $TS_OUTPUT 2>> $TS_ERRLOG
+ [ $? == 0 ] || ts_log "mount failed"
++udevadm settle
+ $TS_CMD_UMOUNT ${MOUNTPOINT}C
+ [ $? == 0 ] || ts_log "umount failed"
+ ts_finalize_subtest
+@@ -111,6 +115,7 @@ ts_finalize_subtest
+ ts_init_subtest "override-option"
+ $TS_CMD_MOUNT --all --fstab $MY_FSTAB -o ro >> $TS_OUTPUT 2>> $TS_ERRLOG
+ [ $? == 0 ] || ts_log "mount failed"
++udevadm settle
+ $TS_CMD_UMOUNT ${MOUNTPOINT}{A,B,C,D}
+ [ $? == 0 ] || ts_log "umount failed"
+ ts_finalize_subtest
+@@ -132,6 +137,7 @@ $TS_CMD_MOUNT	--all \
+ 		--target-prefix $MY_ROOT \
+ 		-o X-mount.mkdir >> $TS_OUTPUT 2>> $TS_ERRLOG
+ [ $? == 0 ] || ts_log "mount failed"
++udevadm settle
+ $TS_CMD_UMOUNT $MY_ROOT/foo/{A,B,C,D}
+ [ $? == 0 ] || ts_log "umount failed"
+ ts_finalize_subtest
+-- 
+2.34.1
+
diff --git a/0004-tests-make-eject-umount-tests-more-robust.patch b/0004-tests-make-eject-umount-tests-more-robust.patch
new file mode 100644
index 0000000..871146a
--- /dev/null
+++ b/0004-tests-make-eject-umount-tests-more-robust.patch
@@ -0,0 +1,42 @@
+From 54c1c6895ec53929d44153073a862521f6ed869d Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 24 Aug 2021 10:49:32 +0200
+Subject: tests: make eject umount tests more robust
+
+Upstream: http://github.com/karelzak/util-linux/commit/abe16d0d34413555fbd621f90a0b93c2105116a2
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ tests/ts/eject/umount | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/tests/ts/eject/umount b/tests/ts/eject/umount
+index 2be281ee3..04f53ed99 100755
+--- a/tests/ts/eject/umount
++++ b/tests/ts/eject/umount
+@@ -83,6 +83,7 @@ mkfs.ext2 -q -F $TS_DEVICE
+ udevadm settle
+ mkdir -p $TS_MOUNTPOINT
+ $TS_CMD_MOUNT $TS_DEVICE $TS_MOUNTPOINT
++udevadm settle
+ $TS_CMD_EJECT --force $TS_DEVICE && ts_log "Success"
+ deinit_device
+ ts_finalize_subtest
+@@ -95,6 +96,7 @@ mkdir -p ${TS_MOUNTPOINT}1
+ mkdir -p ${TS_MOUNTPOINT}2
+ $TS_CMD_MOUNT ${TS_DEVICE}1 ${TS_MOUNTPOINT}1
+ $TS_CMD_MOUNT ${TS_DEVICE}2 ${TS_MOUNTPOINT}2
++udevadm settle
+ $TS_CMD_EJECT --force $TS_DEVICE && ts_log "Success"
+ deinit_device
+ ts_finalize_subtest
+@@ -115,6 +117,7 @@ mkdir -p ${TS_MOUNTPOINT}1
+ mkdir -p ${TS_MOUNTPOINT}2
+ $TS_CMD_MOUNT ${TS_DEVICE}1 ${TS_MOUNTPOINT}1
+ $TS_CMD_MOUNT ${TS_DEVICE}2 ${TS_MOUNTPOINT}2
++udevadm settle
+ $TS_CMD_EJECT --force ${TS_DEVICE}1 && ts_log "Success"
+ deinit_device
+ ts_finalize_subtest
+-- 
+2.34.1
+
diff --git a/0005-Complete-Linux-PAM-compliance-for-forked-child-in-su.patch b/0005-Complete-Linux-PAM-compliance-for-forked-child-in-su.patch
new file mode 100644
index 0000000..f3949cc
--- /dev/null
+++ b/0005-Complete-Linux-PAM-compliance-for-forked-child-in-su.patch
@@ -0,0 +1,52 @@
+From 41ae35c39241575c63db204c786cb1423c202815 Mon Sep 17 00:00:00 2001
+From: "Andrew G. Morgan" <morgan@kernel.org>
+Date: Sat, 27 Nov 2021 21:00:22 -0800
+Subject: Complete Linux-PAM compliance for forked child in su and login.
+
+As documented here:
+
+http://www.linux-pam.org/Linux-PAM-html/adg-interface-by-app-expected.html#adg-pam_end
+
+The child that is about to exec*() the user shell is supposed to pam_end()
+with PAM_DATA_SILENT. This gives the modules a last chance to do a minor
+cleanup of the module state before the user's shell is launched.
+
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2037212
+Upstream: http://github.com/util-linux/util-linux/commit/4660286e9cdff6d95b49295674b96f83af10ea36
+Signed-off-by: Andrew G. Morgan <morgan@kernel.org>
+---
+ login-utils/login.c     | 3 +++
+ login-utils/su-common.c | 3 +++
+ 2 files changed, 6 insertions(+)
+
+diff --git a/login-utils/login.c b/login-utils/login.c
+index 3657f04cd..c62e91e94 100644
+--- a/login-utils/login.c
++++ b/login-utils/login.c
+@@ -1521,6 +1521,9 @@ int main(int argc, char **argv)
+ 
+ 	child_argv[child_argc++] = NULL;
+ 
++	/* http://www.linux-pam.org/Linux-PAM-html/adg-interface-by-app-expected.html#adg-pam_end */
++	(void) pam_end(cxt.pamh, PAM_SUCCESS|PAM_DATA_SILENT);
++
+ 	execvp(child_argv[0], child_argv + 1);
+ 
+ 	if (!strcmp(child_argv[0], "/bin/sh"))
+diff --git a/login-utils/su-common.c b/login-utils/su-common.c
+index afd0ea8ad..7d4826bbc 100644
+--- a/login-utils/su-common.c
++++ b/login-utils/su-common.c
+@@ -1231,6 +1231,9 @@ int su_main(int argc, char **argv, int mode)
+ 	if (su->simulate_login && chdir(su->pwd->pw_dir) != 0)
+ 		warn(_("warning: cannot change directory to %s"), su->pwd->pw_dir);
+ 
++	/* http://www.linux-pam.org/Linux-PAM-html/adg-interface-by-app-expected.html#adg-pam_end */
++	(void) pam_end(su->pamh, PAM_SUCCESS|PAM_DATA_SILENT);
++
+ 	if (shell)
+ 		run_shell(su, shell, command, argv + optind, max(0, argc - optind));
+ 
+-- 
+2.34.1
+
diff --git a/0006-uuidd-fix-open-lock-state-issue.patch b/0006-uuidd-fix-open-lock-state-issue.patch
new file mode 100644
index 0000000..e051404
--- /dev/null
+++ b/0006-uuidd-fix-open-lock-state-issue.patch
@@ -0,0 +1,70 @@
+From a80ba745cc54d5ba726e48065aebe6dac50dedd2 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 24 Jan 2022 14:08:08 +0100
+Subject: uuidd: fix open/lock state issue
+
+* warn on open/lock state issue
+
+* enable access to /var/lib/libuuid/, because ProtectSystem=strict make it read-only
+
+  openat(AT_FDCWD, "/var/lib/libuuid/clock.txt",
+     O_RDWR|O_CREAT|O_CLOEXEC, 0660) = -1 EROFS (Read-only file system)
+
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2040366
+Upstream: http://github.com/util-linux/util-linux/commit/f27876f9c1056bf41fd940d5c4990b4277e0024f
+Upstream: http://github.com/util-linux/util-linux/commit/417982d0236a12756923d88e627f5e4facf8951c
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ misc-utils/uuidd.c          | 9 ++++++---
+ misc-utils/uuidd.service.in | 1 +
+ 2 files changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/misc-utils/uuidd.c b/misc-utils/uuidd.c
+index fa8db173b..78a37d2e8 100644
+--- a/misc-utils/uuidd.c
++++ b/misc-utils/uuidd.c
+@@ -494,7 +494,8 @@ static void server_loop(const char *socket_path, const char *pidfile_path,
+ 			break;
+ 		case UUIDD_OP_TIME_UUID:
+ 			num = 1;
+-			__uuid_generate_time(uu, &num);
++			if (__uuid_generate_time(uu, &num) < 0 && !uuidd_cxt->quiet)
++				warnx(_("failed to open/lock clock counter"));
+ 			if (uuidd_cxt->debug) {
+ 				uuid_unparse(uu, str);
+ 				fprintf(stderr, _("Generated time UUID: %s\n"), str);
+@@ -504,7 +505,8 @@ static void server_loop(const char *socket_path, const char *pidfile_path,
+ 			break;
+ 		case UUIDD_OP_RANDOM_UUID:
+ 			num = 1;
+-			__uuid_generate_random(uu, &num);
++			if (__uuid_generate_time(uu, &num) < 0 && !uuidd_cxt->quiet)
++				warnx(_("failed to open/lock clock counter"));
+ 			if (uuidd_cxt->debug) {
+ 				uuid_unparse(uu, str);
+ 				fprintf(stderr, _("Generated random UUID: %s\n"), str);
+@@ -513,7 +515,8 @@ static void server_loop(const char *socket_path, const char *pidfile_path,
+ 			reply_len = sizeof(uu);
+ 			break;
+ 		case UUIDD_OP_BULK_TIME_UUID:
+-			__uuid_generate_time(uu, &num);
++			if (__uuid_generate_time(uu, &num) < 0 && !uuidd_cxt->quiet)
++				warnx(_("failed to open/lock clock counter"));
+ 			if (uuidd_cxt->debug) {
+ 				uuid_unparse(uu, str);
+ 				fprintf(stderr, P_("Generated time UUID %s "
+diff --git a/misc-utils/uuidd.service.in b/misc-utils/uuidd.service.in
+index b4c9c4635..e64ca59b5 100644
+--- a/misc-utils/uuidd.service.in
++++ b/misc-utils/uuidd.service.in
+@@ -18,6 +18,7 @@ ProtectKernelModules=yes
+ ProtectControlGroups=yes
+ RestrictAddressFamilies=AF_UNIX
+ MemoryDenyWriteExecute=yes
++ReadWritePaths=/var/lib/libuuid/
+ SystemCallFilter=@default @file-system @basic-io @system-service @signal @io-event @network-io
+ 
+ [Install]
+-- 
+2.34.1
+
diff --git a/0007-sysfs-fallback-for-partitions-not-including-parent-n.patch b/0007-sysfs-fallback-for-partitions-not-including-parent-n.patch
new file mode 100644
index 0000000..ab84293
--- /dev/null
+++ b/0007-sysfs-fallback-for-partitions-not-including-parent-n.patch
@@ -0,0 +1,51 @@
+From 9c45c4bf1a1a02ebaf9e24fd7d81d62c676eda7c Mon Sep 17 00:00:00 2001
+From: Portisch <hugo.portisch@yahoo.de>
+Date: Mon, 8 Nov 2021 12:31:39 +0100
+Subject: sysfs: fallback for partitions not including parent name
+
+Upstream: http://github.com/util-linux/util-linux/commit/9b59641bcec3df9c451eea4c7057751a153a3fcb
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2021462
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ lib/sysfs.c | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/lib/sysfs.c b/lib/sysfs.c
+index bb7183319..191d870f6 100644
+--- a/lib/sysfs.c
++++ b/lib/sysfs.c
+@@ -210,9 +210,10 @@ int sysfs_blkdev_is_partition_dirent(DIR *dir, struct dirent *d, const char *par
+ 	    d->d_type != DT_UNKNOWN)
+ 		return 0;
+ #endif
++	size_t len = 0;
++
+ 	if (parent_name) {
+ 		const char *p = parent_name;
+-		size_t len;
+ 
+ 		/* /dev/sda --> "sda" */
+ 		if (*parent_name == '/') {
+@@ -223,14 +224,15 @@ int sysfs_blkdev_is_partition_dirent(DIR *dir, struct dirent *d, const char *par
+ 		}
+ 
+ 		len = strlen(p);
+-		if (strlen(d->d_name) <= len)
+-			return 0;
++		if ((strlen(d->d_name) <= len) || (strncmp(p, d->d_name, len) != 0))
++			len = 0;
++	}
+ 
++	if (len > 0) {
+ 		/* partitions subdir name is
+ 		 *	"<parent>[:digit:]" or "<parent>p[:digit:]"
+ 		 */
+-		return strncmp(p, d->d_name, len) == 0 &&
+-		       ((*(d->d_name + len) == 'p' && isdigit(*(d->d_name + len + 1)))
++		return ((*(d->d_name + len) == 'p' && isdigit(*(d->d_name + len + 1)))
+ 			|| isdigit(*(d->d_name + len)));
+ 	}
+ 
+-- 
+2.34.1
+
diff --git a/0008-logger-fix-size-use-for-stdin.patch b/0008-logger-fix-size-use-for-stdin.patch
new file mode 100644
index 0000000..1b3ac0a
--- /dev/null
+++ b/0008-logger-fix-size-use-for-stdin.patch
@@ -0,0 +1,61 @@
+From 199c328686aac174b0535619e5cea8450016e827 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 21 Oct 2021 18:47:40 +0200
+Subject: logger: fix --size use for stdin
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The stdin version counts log header into the message size, but
+for example when it reads message from argv[] it counts only message
+itself.
+
+ $ logger --stderr  --size 3 "abcd"
+ <13>Oct 21 18:48:29 kzak: abc
+
+ $ echo "abcd" | logger --stderr  --size 3
+ logger: cannot allocate 18446744073709551597 bytes: Cannot allocate memory
+
+Upstream: http://github.com/util-linux/util-linux/commit/58e4ee082bca100034791a4a74481f263bb30a25
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2033622
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ misc-utils/logger.c | 9 +++------
+ 1 file changed, 3 insertions(+), 6 deletions(-)
+
+diff --git a/misc-utils/logger.c b/misc-utils/logger.c
+index 5b122de79..43284caeb 100644
+--- a/misc-utils/logger.c
++++ b/misc-utils/logger.c
+@@ -976,8 +976,7 @@ static void logger_stdin(struct logger_ctl *ctl)
+ 	int has_header = 1;
+ 	int default_priority = ctl->pri;
+ 	int last_pri = default_priority;
+-	size_t max_usrmsg_size = ctl->max_message_size - strlen(ctl->hdr);
+-	char *const buf = xmalloc(max_usrmsg_size + 2 + 2);
++	char *buf = xmalloc(ctl->max_message_size + 2 + 2);
+ 	int pri;
+ 	int c;
+ 	size_t i;
+@@ -1004,16 +1003,14 @@ static void logger_stdin(struct logger_ctl *ctl)
+ 				ctl->pri = default_priority;
+ 
+ 			if (ctl->pri != last_pri) {
+-				has_header = 0;
+-				max_usrmsg_size =
+-				    ctl->max_message_size - strlen(ctl->hdr);
++				generate_syslog_header(ctl);
+ 				last_pri = ctl->pri;
+ 			}
+ 			if (c != EOF && c != '\n')
+ 				c = getchar();
+ 		}
+ 
+-		while (c != EOF && c != '\n' && i < max_usrmsg_size) {
++		while (c != EOF && c != '\n' && i < ctl->max_message_size) {
+ 			buf[i++] = c;
+ 			c = getchar();
+ 		}
+-- 
+2.34.1
+
diff --git a/0009-wdctl-Workaround-reported-boot-status-bits-not-being.patch b/0009-wdctl-Workaround-reported-boot-status-bits-not-being.patch
new file mode 100644
index 0000000..6f38e93
--- /dev/null
+++ b/0009-wdctl-Workaround-reported-boot-status-bits-not-being.patch
@@ -0,0 +1,54 @@
+From 006aca565d4c8565baf05296b8e65ca4d5f203d3 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Fri, 30 Jul 2021 13:22:54 +0200
+Subject: wdctl: Workaround reported boot-status bits not being present in
+ wd->ident.options
+
+Some watchdog drivers are capable of reporting WDIOF_CARDRESET in their
+bootstatus, but they do not advertise this in the options field
+returned by the WDIOC_GETSUPPORT ioctl.
+
+This causes wdctl to not print the CARDRESET flag on these devices,
+even when the reset was caused by the watchdog and this is being
+reported in the WDIOC_GETBOOTSTATUS return.
+
+Add a workaround by or-ing any bits which are set in the status and
+bstatus returns into wd->ident.options so that reported flags will
+get printend independent of them being advertised as supported in
+wd->ident.options.
+
+This will make wdctl print a CARDRESET line when the system was
+actually reset by the watchdog while omitting it when it was not
+reset by the watchdog.  At least on drivers which have the
+CARDRESET is missing from info.options problem.  On other drivers
+the CARDRESET line will always be printend, but the actual reported
+value will change.
+
+Upstream: http://github.com/util-linux/util-linux/commit/b1b0259fe42aad1bf0997ce1c03a020ce59e38ab
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2057046
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ sys-utils/wdctl.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/sys-utils/wdctl.c b/sys-utils/wdctl.c
+index 8de5d5a2d..6b9affa0a 100644
+--- a/sys-utils/wdctl.c
++++ b/sys-utils/wdctl.c
+@@ -419,6 +419,13 @@ static int read_watchdog_from_device(struct wd_device *wd)
+ 		ioctl(fd, WDIOC_GETSTATUS, &wd->status);
+ 		ioctl(fd, WDIOC_GETBOOTSTATUS, &wd->bstatus);
+ 
++		/*
++		 * Sometimes supported options like WDIOF_CARDRESET are missing from
++		 * ident.options, add anything set in status/bstatus to ident.options.
++		 */
++		wd->ident.options |= wd->status;
++		wd->ident.options |= wd->bstatus;
++
+ 		if (ioctl(fd, WDIOC_GETTIMEOUT, &wd->timeout) >= 0)
+ 			wd->has_timeout = 1;
+ 		if (ioctl(fd, WDIOC_GETPRETIMEOUT, &wd->pretimeout) >= 0)
+-- 
+2.34.1
+
diff --git a/0010-lslogins-remove-unexpected-debug-message.patch b/0010-lslogins-remove-unexpected-debug-message.patch
new file mode 100644
index 0000000..7bcafbb
--- /dev/null
+++ b/0010-lslogins-remove-unexpected-debug-message.patch
@@ -0,0 +1,28 @@
+From 097fc3427d3221d763f0b1c41923758af2f471a3 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 21 Jul 2022 10:57:36 +0200
+Subject: lslogins: remove unexpected debug message
+
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2094216
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ login-utils/lslogins.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/login-utils/lslogins.c b/login-utils/lslogins.c
+index 9431a50bb..c37df9096 100644
+--- a/login-utils/lslogins.c
++++ b/login-utils/lslogins.c
+@@ -562,9 +562,6 @@ static int get_sgroups(gid_t **list, size_t *len, struct passwd *pwd)
+ 
+ 	*list = xcalloc(1, ngroups * sizeof(gid_t));
+ 
+-fprintf(stderr, "KZAK>>> alloc '%p' for %s\n", *list, pwd->pw_name);
+-
+-
+ 	/* now for the actual list of GIDs */
+ 	if (-1 == getgrouplist(pwd->pw_name, pwd->pw_gid, *list, &ngroups))
+ 		return -1;
+-- 
+2.36.1
+
diff --git a/0011-lslogins-improve-prefixes-interpretation.patch b/0011-lslogins-improve-prefixes-interpretation.patch
new file mode 100644
index 0000000..eb5ebc6
--- /dev/null
+++ b/0011-lslogins-improve-prefixes-interpretation.patch
@@ -0,0 +1,92 @@
+From 53339f53ab71c138578d4102a4e4011344d33b2d Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 7 Jun 2022 09:11:56 +0200
+Subject: lslogins: improve prefixes interpretation
+
+It seems that for example 'passwd --lock' uses two exclamation marks
+in password  field. It seems better to assume arbitrary number of '!'
+and '*' prefixes.
+
+The patch also makes description of the PWD-EMPTY output field more
+explicit.
+
+Upstream: http://github.com/util-linux/util-linux/commit/c51cba1e838ae7e36a843ec785543492bb8737cd
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2094216
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ login-utils/lslogins.c | 33 ++++++++++++++++++++++++++-------
+ 1 file changed, 26 insertions(+), 7 deletions(-)
+
+diff --git a/login-utils/lslogins.c b/login-utils/lslogins.c
+index c37df9096..1332a9925 100644
+--- a/login-utils/lslogins.c
++++ b/login-utils/lslogins.c
+@@ -225,7 +225,7 @@ static const struct lslogins_coldesc coldescs[] =
+ {
+ 	[COL_USER]          = { "USER",		N_("user name"), N_("Username"), 0.1, SCOLS_FL_NOEXTREMES },
+ 	[COL_UID]           = { "UID",		N_("user ID"), "UID", 1, SCOLS_FL_RIGHT},
+-	[COL_PWDEMPTY]      = { "PWD-EMPTY",	N_("password not required"), N_("Password not required"), 1, SCOLS_FL_RIGHT },
++	[COL_PWDEMPTY]      = { "PWD-EMPTY",	N_("password not defined"), N_("Password not required (empty)"), 1, SCOLS_FL_RIGHT },
+ 	[COL_PWDDENY]       = { "PWD-DENY",	N_("login by password disabled"), N_("Login by password disabled"), 1, SCOLS_FL_RIGHT },
+ 	[COL_PWDLOCK]       = { "PWD-LOCK",	N_("password defined, but locked"), N_("Password is locked"), 1, SCOLS_FL_RIGHT },
+ 	[COL_PWDMETHOD]     = { "PWD-METHOD",   N_("password encryption method"), N_("Password encryption method"), 0.1 },
+@@ -817,23 +817,42 @@ static struct lslogins_user *get_user_info(struct lslogins_control *ctl, const c
+ 			break;
+ 		case COL_PWDEMPTY:
+ 			if (shadow) {
+-				if (!*shadow->sp_pwdp) /* '\0' */
++				const char *p = shadow->sp_pwdp;
++
++				while (p && (*p == '!' || *p == '*'))
++					p++;
++
++				if (!p || !*p)
+ 					user->pwd_empty = STATUS_TRUE;
+ 			} else
+ 				user->pwd_empty = STATUS_UNKNOWN;
+ 			break;
+ 		case COL_PWDDENY:
+ 			if (shadow) {
+-				if ((*shadow->sp_pwdp == '!' ||
+-				     *shadow->sp_pwdp == '*') &&
+-				    !valid_pwd(shadow->sp_pwdp + 1))
++				const char *p = shadow->sp_pwdp;
++
++				while (p && (*p == '!' || *p == '*'))
++					p++;
++
++				if (p && *p && p != shadow->sp_pwdp && !valid_pwd(p))
+ 					user->pwd_deny = STATUS_TRUE;
+ 			} else
+ 				user->pwd_deny = STATUS_UNKNOWN;
+ 			break;
+ 		case COL_PWDLOCK:
+ 			if (shadow) {
+-				if (*shadow->sp_pwdp == '!' && valid_pwd(shadow->sp_pwdp + 1))
++				const char *p = shadow->sp_pwdp;
++				int i = 0;
++
++				/* 'passwd --lock' uses two exclamation marks,
++				 * shadow(5) describes the lock as "field which
++				 * starts with an exclamation mark". Let's
++				 * support more '!' ...
++				 */
++				while (p && *p == '!')
++					p++, i++;
++
++				if (i != 0 && (!*p || valid_pwd(p)))
+ 					user->pwd_lock = STATUS_TRUE;
+ 			} else
+ 				user->pwd_lock = STATUS_UNKNOWN;
+@@ -842,7 +861,7 @@ static struct lslogins_user *get_user_info(struct lslogins_control *ctl, const c
+ 			if (shadow) {
+ 				const char *p = shadow->sp_pwdp;
+ 
+-				if (*p == '!' || *p == '*')
++				while (p && (*p == '!' || *p == '*'))
+ 					p++;
+ 				user->pwd_method = get_pwd_method(p, NULL, NULL);
+ 			} else
+-- 
+2.36.1
+
diff --git a/0012-lslogins-fix-free-invalid-pointer.patch b/0012-lslogins-fix-free-invalid-pointer.patch
new file mode 100644
index 0000000..6017821
--- /dev/null
+++ b/0012-lslogins-fix-free-invalid-pointer.patch
@@ -0,0 +1,38 @@
+From c269e116ea4d9e96a5f5801aecf1f624199fa6ec Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 7 Jun 2022 09:46:54 +0200
+Subject: lslogins: fix free(): invalid pointer
+
+Upstream: http://github.com/util-linux/util-linux/commit/890d4d3f236e2d28db35ea9bc9dc3e5e35db975c
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2094216
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ login-utils/lslogins.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/login-utils/lslogins.c b/login-utils/lslogins.c
+index 1332a9925..ff4386d1b 100644
+--- a/login-utils/lslogins.c
++++ b/login-utils/lslogins.c
+@@ -488,7 +488,7 @@ static int parse_utmpx(const char *path, size_t *nrecords, struct utmpx **record
+ 
+ 	/* optimize allocation according to file size, the realloc() below is
+ 	 * just fallback only */
+-	if (stat(path, &st) == 0 && (size_t) st.st_size > sizeof(struct utmpx)) {
++	if (stat(path, &st) == 0 && (size_t) st.st_size >= sizeof(struct utmpx)) {
+ 		imax = st.st_size / sizeof(struct utmpx);
+ 		ary = xmalloc(imax * sizeof(struct utmpx));
+ 	}
+@@ -1007,6 +1007,9 @@ static void free_ctl(struct lslogins_control *ctl)
+ {
+ 	size_t n = 0;
+ 
++	if (!ctl)
++		return;
++
+ 	free(ctl->wtmp);
+ 	free(ctl->btmp);
+ 
+-- 
+2.36.1
+
diff --git a/0013-login-utils-logindefs-fix-compiler-warning-Werror-fo.patch b/0013-login-utils-logindefs-fix-compiler-warning-Werror-fo.patch
new file mode 100644
index 0000000..00f4314
--- /dev/null
+++ b/0013-login-utils-logindefs-fix-compiler-warning-Werror-fo.patch
@@ -0,0 +1,30 @@
+From 1c4ee8348e220b633d676214fd585ee2b3945cf6 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 6 Jun 2022 16:14:14 +0200
+Subject: login-utils/logindefs: fix compiler warning
+ [-Werror=format-truncation=]
+
+Upstream: http://github.com/util-linux/util-linux/commit/977f98ee34ca002cb5301c2d3a5953c754f813ec
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2094216
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ login-utils/logindefs.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/login-utils/logindefs.c b/login-utils/logindefs.c
+index 97150dc28..95631223a 100644
+--- a/login-utils/logindefs.c
++++ b/login-utils/logindefs.c
+@@ -521,7 +521,8 @@ int get_hushlogin_status(struct passwd *pwd, int force_check)
+ 		if (strlen(pwd->pw_dir) + strlen(file) + 2 > sizeof(buf))
+ 			continue;
+ 
+-		sprintf(buf, "%s/%s", pwd->pw_dir, file);
++		if (snprintf(buf, sizeof(buf), "%s/%s", pwd->pw_dir, file) < 0)
++			continue;
+ 
+ 		if (force_check) {
+ 			uid_t ruid = getuid();
+-- 
+2.36.1
+
diff --git a/0014-uuidd-allow-AF_INET-in-systemd-service.patch b/0014-uuidd-allow-AF_INET-in-systemd-service.patch
new file mode 100644
index 0000000..aa794e4
--- /dev/null
+++ b/0014-uuidd-allow-AF_INET-in-systemd-service.patch
@@ -0,0 +1,38 @@
+From 3ceddbb1238e13a51efbe23119c885568e820e69 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 2 Jun 2022 16:55:49 +0200
+Subject: uuidd: allow AF_INET in systemd service
+
+libuuid uses
+
+	socket(AF_INET, SOCK_DGRAM, IPPROTO_IP)
+
+to get MAC address for time based UUIDs, but there is
+
+	RestrictAddressFamilies=AF_UNIX
+
+in uuidd service file ...
+
+Fixes: https://github.com/util-linux/util-linux/issues/1704
+Upstream: http://github.com/util-linux/util-linux/commit/304b4dc4936b115ca33af5325c3b04d0997c1353
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2092943
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ misc-utils/uuidd.service.in | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/misc-utils/uuidd.service.in b/misc-utils/uuidd.service.in
+index e64ca59b5..64580287f 100644
+--- a/misc-utils/uuidd.service.in
++++ b/misc-utils/uuidd.service.in
+@@ -16,7 +16,6 @@ PrivateUsers=yes
+ ProtectKernelTunables=yes
+ ProtectKernelModules=yes
+ ProtectControlGroups=yes
+-RestrictAddressFamilies=AF_UNIX
+ MemoryDenyWriteExecute=yes
+ ReadWritePaths=/var/lib/libuuid/
+ SystemCallFilter=@default @file-system @basic-io @system-service @signal @io-event @network-io
+-- 
+2.36.1
+
diff --git a/0015-uuidd-remove-also-PrivateNetwork-yes-from-systemd-se.patch b/0015-uuidd-remove-also-PrivateNetwork-yes-from-systemd-se.patch
new file mode 100644
index 0000000..62854ce
--- /dev/null
+++ b/0015-uuidd-remove-also-PrivateNetwork-yes-from-systemd-se.patch
@@ -0,0 +1,28 @@
+From bf0cd2995c5e34338703105c62e49a785c6c9dcc Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Fri, 3 Jun 2022 09:07:09 +0200
+Subject: uuidd: remove also PrivateNetwork=yes from systemd service
+
+Fixes: https://github.com/util-linux/util-linux/issues/1704
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2092943
+Upstream: http://github.com/util-linux/util-linux/commit/c9671a3cf7738bb81e1cbef2f56485a36c6e7623
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ misc-utils/uuidd.service.in | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/misc-utils/uuidd.service.in b/misc-utils/uuidd.service.in
+index 64580287f..4ad6d97c9 100644
+--- a/misc-utils/uuidd.service.in
++++ b/misc-utils/uuidd.service.in
+@@ -11,7 +11,6 @@ Group=uuidd
+ ProtectSystem=strict
+ ProtectHome=yes
+ PrivateDevices=yes
+-PrivateNetwork=yes
+ PrivateUsers=yes
+ ProtectKernelTunables=yes
+ ProtectKernelModules=yes
+-- 
+2.36.1
+
diff --git a/0016-lsirq-improve-sort-IRQ.patch b/0016-lsirq-improve-sort-IRQ.patch
new file mode 100644
index 0000000..6f6803d
--- /dev/null
+++ b/0016-lsirq-improve-sort-IRQ.patch
@@ -0,0 +1,31 @@
+From 338d5f2876c54e5d811100ba816d3a6dec00ab11 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Fri, 29 Apr 2022 10:11:49 +0200
+Subject: lsirq: improve --sort IRQ
+
+IRQ column mixes numbers and text, it seems better to use strverscmp()
+rather than classic strcmp().
+
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2078787
+Upstream: http://github.com/util-linux/util-linux/commit/d382861c0815ff241fb2844a2a896f0fb1c7b73e
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ sys-utils/irq-common.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sys-utils/irq-common.c b/sys-utils/irq-common.c
+index 350675394..22080b96d 100644
+--- a/sys-utils/irq-common.c
++++ b/sys-utils/irq-common.c
+@@ -371,7 +371,7 @@ static inline int cmp_delta(const struct irq_info *a,
+ static inline int cmp_interrupts(const struct irq_info *a,
+ 			   const struct irq_info *b)
+ {
+-	return (strcmp(a->irq, b->irq) > 0) ? 1 : 0;
++	return (strverscmp(a->irq, b->irq) > 0) ? 1 : 0;
+ }
+ 
+ static void sort_result(struct irq_output *out,
+-- 
+2.36.1
+
diff --git a/0017-irqtop-fix-compiler-warning-Werror-format-truncation.patch b/0017-irqtop-fix-compiler-warning-Werror-format-truncation.patch
new file mode 100644
index 0000000..7eaf7fb
--- /dev/null
+++ b/0017-irqtop-fix-compiler-warning-Werror-format-truncation.patch
@@ -0,0 +1,28 @@
+From de0402358f6d363a57e6fef98c92a9eef5690cdd Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 6 Jun 2022 16:14:30 +0200
+Subject: irqtop: fix compiler warning [-Werror=format-truncation=]
+
+Upstream: http://github.com/util-linux/util-linux/commit/b7865ae165bb43b1626c6928250843cc2c96be57
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2078787
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ sys-utils/irq-common.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sys-utils/irq-common.c b/sys-utils/irq-common.c
+index 22080b96d..e39ef823c 100644
+--- a/sys-utils/irq-common.c
++++ b/sys-utils/irq-common.c
+@@ -426,7 +426,7 @@ struct libscols_table *get_scols_cpus_table(struct irq_output *out,
+ 	struct libscols_table *table;
+ 	struct libscols_column *cl;
+ 	struct libscols_line *ln;
+-	char colname[sizeof(stringify_value(LONG_MAX))];
++	char colname[sizeof("cpu") + sizeof(stringify_value(LONG_MAX))];
+ 	size_t i;
+ 
+ 	if (prev) {
+-- 
+2.36.1
+
diff --git a/0018-dmesg-fix-since-and-until.patch b/0018-dmesg-fix-since-and-until.patch
new file mode 100644
index 0000000..61431b5
--- /dev/null
+++ b/0018-dmesg-fix-since-and-until.patch
@@ -0,0 +1,34 @@
+From f45fe0768ac09cb5e05b095afa47a0a71e931f84 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Wed, 20 Apr 2022 14:42:32 +0200
+Subject: dmesg: fix --since and --until
+
+Now --since and --until requires any time field in the output (e.g.
+--ctime,-T), it means "dmesg --since '1 day ago'" doesn't work, but
+"dmesg -T --since '1 day ago'" works as expected.
+
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2076829
+Upstream: http://github.com/util-linux/util-linux/commit/c9667633f1f6b7a84116f2af067d1d15c72e6382
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ sys-utils/dmesg.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/sys-utils/dmesg.c b/sys-utils/dmesg.c
+index d301951bb..5c580107a 100644
+--- a/sys-utils/dmesg.c
++++ b/sys-utils/dmesg.c
+@@ -1539,7 +1539,9 @@ int main(int argc, char *argv[])
+ 
+ 	if ((is_timefmt(&ctl, RELTIME) ||
+ 	     is_timefmt(&ctl, CTIME)   ||
+-	     is_timefmt(&ctl, ISO8601))) {
++	     is_timefmt(&ctl, ISO8601)) ||
++	     ctl.since ||
++	     ctl.until) {
+ 		if (dmesg_get_boot_time(&ctl.boot_time) != 0)
+ 			ctl.time_fmt = DMESG_TIMEFTM_NONE;
+ 		else
+-- 
+2.36.1
+
diff --git a/0019-libblkid-check-fsync-return-code.patch b/0019-libblkid-check-fsync-return-code.patch
new file mode 100644
index 0000000..b46cade
--- /dev/null
+++ b/0019-libblkid-check-fsync-return-code.patch
@@ -0,0 +1,62 @@
+From f02e9004303df5ab3d9b868f6f60af44663cce69 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 19 Apr 2022 09:44:07 +0200
+Subject: libblkid: check fsync() return code
+
+Since 39f5af25982d8b0244000e92a9d0e0e6557d0e17 libblkid uses
+O_NONBLOCK. Now it's more obvious that check fsync() (and close())
+return value after write() is always a good idea ...
+
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2074486
+Upstream: http://github.com/util-linux/util-linux/commit/133a0d70f637b4f4e4337811e452153b04f2bdcf
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ libblkid/src/probe.c | 5 ++++-
+ misc-utils/wipefs.c  | 8 ++++++--
+ 2 files changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/libblkid/src/probe.c b/libblkid/src/probe.c
+index 5f01bc3b3..d317dc19a 100644
+--- a/libblkid/src/probe.c
++++ b/libblkid/src/probe.c
+@@ -1298,7 +1298,10 @@ int blkid_do_wipe(blkid_probe pr, int dryrun)
+ 		/* wipen on device */
+ 		if (write_all(fd, buf, len))
+ 			return -1;
+-		fsync(fd);
++
++		if (fsync(fd) != 0)
++			return -1;
++
+ 		pr->flags &= ~BLKID_FL_MODIF_BUFF;	/* be paranoid */
+ 
+ 		return blkid_probe_step_back(pr);
+diff --git a/misc-utils/wipefs.c b/misc-utils/wipefs.c
+index 78dc63ee7..f08a9ba4f 100644
+--- a/misc-utils/wipefs.c
++++ b/misc-utils/wipefs.c
+@@ -615,7 +615,9 @@ static int do_wipe(struct wipe_control *ctl)
+ 	if (need_force)
+ 		warnx(_("Use the --force option to force erase."));
+ 
+-	fsync(blkid_probe_get_fd(pr));
++	if (fsync(blkid_probe_get_fd(pr)) != 0)
++		err(EXIT_FAILURE, _("%s: cannot flush modified buffers"),
++				ctl->devname);
+ 
+ #ifdef BLKRRPART
+ 	if (reread && (mode & O_EXCL)) {
+@@ -635,7 +637,9 @@ static int do_wipe(struct wipe_control *ctl)
+ 	}
+ #endif
+ 
+-	close(blkid_probe_get_fd(pr));
++	if (close(blkid_probe_get_fd(pr)) != 0)
++		err(EXIT_FAILURE, _("%s: close device failed"), ctl->devname);
++
+ 	blkid_free_probe(pr);
+ 	free(backup);
+ 	return 0;
+-- 
+2.36.1
+
diff --git a/0020-libblkid-add-interface-for-FSSIZE-field.patch b/0020-libblkid-add-interface-for-FSSIZE-field.patch
new file mode 100644
index 0000000..cd0161e
--- /dev/null
+++ b/0020-libblkid-add-interface-for-FSSIZE-field.patch
@@ -0,0 +1,87 @@
+From 863ecca27cfc937bc6fb2131e0d0e35947e38ce6 Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Mon, 25 Apr 2022 17:08:37 +0200
+Subject: libblkid: add interface for FSSIZE field
+
+Add interface to let filesystem probe calculate and set FSSIZE.
+Enable that field in the 'superblocks' sample.
+
+Upstream: http://github.com/util-linux/util-linux/commit/ad08ae0aa
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ libblkid/samples/superblocks.c         |  2 +-
+ libblkid/src/blkid.h.in                |  1 +
+ libblkid/src/superblocks/superblocks.c | 11 +++++++++++
+ libblkid/src/superblocks/superblocks.h |  1 +
+ 4 files changed, 14 insertions(+), 1 deletion(-)
+
+diff --git a/libblkid/samples/superblocks.c b/libblkid/samples/superblocks.c
+index 7d9555771..38903ecee 100644
+--- a/libblkid/samples/superblocks.c
++++ b/libblkid/samples/superblocks.c
+@@ -44,7 +44,7 @@ int main(int argc, char *argv[])
+ 			BLKID_SUBLKS_UUID | BLKID_SUBLKS_UUIDRAW |
+ 			BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE |
+ 			BLKID_SUBLKS_USAGE | BLKID_SUBLKS_VERSION |
+-			BLKID_SUBLKS_MAGIC);
++			BLKID_SUBLKS_MAGIC | BLKID_SUBLKS_FSSIZE);
+ 
+ 	rc = blkid_do_safeprobe(pr);
+ 	if (rc == -1)
+diff --git a/libblkid/src/blkid.h.in b/libblkid/src/blkid.h.in
+index 3cd4116d9..ad4becf0a 100644
+--- a/libblkid/src/blkid.h.in
++++ b/libblkid/src/blkid.h.in
+@@ -281,6 +281,7 @@ extern int blkid_probe_enable_superblocks(blkid_probe pr, int enable)
+ #define BLKID_SUBLKS_VERSION	(1 << 8) /* read FS type from superblock */
+ #define BLKID_SUBLKS_MAGIC	(1 << 9) /* define SBMAGIC and SBMAGIC_OFFSET */
+ #define BLKID_SUBLKS_BADCSUM	(1 << 10) /* allow a bad checksum */
++#define BLKID_SUBLKS_FSSIZE	(1 << 11) /* read and define FSSIZE from superblock */
+ 
+ #define BLKID_SUBLKS_DEFAULT	(BLKID_SUBLKS_LABEL | BLKID_SUBLKS_UUID | \
+ 				 BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE)
+diff --git a/libblkid/src/superblocks/superblocks.c b/libblkid/src/superblocks/superblocks.c
+index f21365538..9adc2cfa3 100644
+--- a/libblkid/src/superblocks/superblocks.c
++++ b/libblkid/src/superblocks/superblocks.c
+@@ -7,6 +7,7 @@
+  * GNU Lesser General Public License.
+  */
+ 
++#include <inttypes.h>
+ #include <stdio.h>
+ #include <string.h>
+ #include <stdlib.h>
+@@ -584,6 +585,16 @@ static int blkid_probe_set_usage(blkid_probe pr, int usage)
+ 	return blkid_probe_set_value(pr, "USAGE", (unsigned char *) u, strlen(u) + 1);
+ }
+ 
++int blkid_probe_set_fssize(blkid_probe pr, uint64_t size)
++{
++	struct blkid_chain *chn = blkid_probe_get_chain(pr);
++
++	if (!(chn->flags & BLKID_SUBLKS_FSSIZE))
++		return 0;
++
++	return blkid_probe_sprintf_value(pr, "FSSIZE", "%" PRIu64, size);
++}
++
+ int blkid_probe_set_id_label(blkid_probe pr, const char *name,
+ 			     const unsigned char *data, size_t len)
+ {
+diff --git a/libblkid/src/superblocks/superblocks.h b/libblkid/src/superblocks/superblocks.h
+index 9c489c438..67803679f 100644
+--- a/libblkid/src/superblocks/superblocks.h
++++ b/libblkid/src/superblocks/superblocks.h
+@@ -111,6 +111,7 @@ extern int blkid_probe_set_utf8_id_label(blkid_probe pr, const char *name,
+ 			     const unsigned char *data, size_t len, int enc);
+ 
+ int blkid_probe_set_block_size(blkid_probe pr, unsigned block_size);
++int blkid_probe_set_fssize(blkid_probe pr, uint64_t size);
+ 
+ extern int blkid_probe_is_bitlocker(blkid_probe pr);
+ extern int blkid_probe_is_ntfs(blkid_probe pr);
+-- 
+2.36.1
+
diff --git a/0021-libblkid-implement-FSSIZE-calculation-for-XFS.patch b/0021-libblkid-implement-FSSIZE-calculation-for-XFS.patch
new file mode 100644
index 0000000..d899c3f
--- /dev/null
+++ b/0021-libblkid-implement-FSSIZE-calculation-for-XFS.patch
@@ -0,0 +1,45 @@
+From e81cc68312e91ab7086188542f3377605bf144a8 Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Mon, 25 Apr 2022 17:08:38 +0200
+Subject: libblkid: implement FSSIZE calculation for XFS
+
+The implementation is similar to one provided by statfs(2) + lsblk.
+
+Upstream: http://github.com/util-linux/util-linux/commit/d7ec8fe8e
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ libblkid/src/superblocks/xfs.c | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+diff --git a/libblkid/src/superblocks/xfs.c b/libblkid/src/superblocks/xfs.c
+index d8c6fb6d4..444050f55 100644
+--- a/libblkid/src/superblocks/xfs.c
++++ b/libblkid/src/superblocks/xfs.c
+@@ -158,6 +158,15 @@ static int xfs_verify_sb(struct xfs_super_block *ondisk)
+ 	return 1;
+ }
+ 
++static uint64_t xfs_fssize(struct xfs_super_block *xs)
++{
++	uint32_t lsize = xs->sb_logstart ? xs->sb_logblocks : 0;
++	uint64_t avail_blocks = be64_to_cpu(xs->sb_dblocks) - be32_to_cpu(lsize);
++	uint64_t fssize = avail_blocks*be32_to_cpu(xs->sb_blocksize);
++
++	return fssize;
++}
++
+ static int probe_xfs(blkid_probe pr, const struct blkid_idmag *mag)
+ {
+ 	struct xfs_super_block *xs;
+@@ -173,6 +182,7 @@ static int probe_xfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 		blkid_probe_set_label(pr, (unsigned char *) xs->sb_fname,
+ 				sizeof(xs->sb_fname));
+ 	blkid_probe_set_uuid(pr, xs->sb_uuid);
++	blkid_probe_set_fssize(pr, xfs_fssize(xs));
+ 	blkid_probe_set_block_size(pr, be16_to_cpu(xs->sb_sectsize));
+ 	return 0;
+ }
+-- 
+2.36.1
+
diff --git a/0022-blkid-add-FSSIZE-tag-with-tests-for-XFS.patch b/0022-blkid-add-FSSIZE-tag-with-tests-for-XFS.patch
new file mode 100644
index 0000000..9cfe63c
--- /dev/null
+++ b/0022-blkid-add-FSSIZE-tag-with-tests-for-XFS.patch
@@ -0,0 +1,54 @@
+From d3d0e6dc70889e5fe9d9dfeab67e9ba1f0491a28 Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Mon, 25 Apr 2022 17:08:39 +0200
+Subject: blkid: add FSSIZE tag with tests for XFS
+
+The FSSIZE tag was added to the libblkid. Enable this tag in blkid
+and update tests golden output for XFS test cases.
+
+Upstream: http://github.com/util-linux/util-linux/commit/60cedc921
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ misc-utils/blkid.c                    | 3 ++-
+ tests/expected/blkid/low-probe-xfs    | 1 +
+ tests/expected/blkid/low-probe-xfs-v5 | 1 +
+ 3 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/misc-utils/blkid.c b/misc-utils/blkid.c
+index cccd8af87..4f456be52 100644
+--- a/misc-utils/blkid.c
++++ b/misc-utils/blkid.c
+@@ -892,7 +892,8 @@ int main(int argc, char **argv)
+ 			blkid_probe_set_superblocks_flags(pr,
+ 				BLKID_SUBLKS_LABEL | BLKID_SUBLKS_UUID |
+ 				BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE |
+-				BLKID_SUBLKS_USAGE | BLKID_SUBLKS_VERSION);
++				BLKID_SUBLKS_USAGE | BLKID_SUBLKS_VERSION |
++				BLKID_SUBLKS_FSSIZE);
+ 
+ 
+ 			if (fltr_usage &&
+diff --git a/tests/expected/blkid/low-probe-xfs b/tests/expected/blkid/low-probe-xfs
+index 6eb1b4600..a91e92bcc 100644
+--- a/tests/expected/blkid/low-probe-xfs
++++ b/tests/expected/blkid/low-probe-xfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSSIZE=11862016
+ ID_FS_LABEL=test-xfs
+ ID_FS_LABEL_ENC=test-xfs
+ ID_FS_TYPE=xfs
+diff --git a/tests/expected/blkid/low-probe-xfs-v5 b/tests/expected/blkid/low-probe-xfs-v5
+index 513a3818f..129b41f26 100644
+--- a/tests/expected/blkid/low-probe-xfs-v5
++++ b/tests/expected/blkid/low-probe-xfs-v5
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSSIZE=17469440
+ ID_FS_LABEL=test-xfs-v5
+ ID_FS_LABEL_ENC=test-xfs-v5
+ ID_FS_TYPE=xfs
+-- 
+2.36.1
+
diff --git a/0023-libblkid-fix-FSSIZE-docs.patch b/0023-libblkid-fix-FSSIZE-docs.patch
new file mode 100644
index 0000000..4c18ac6
--- /dev/null
+++ b/0023-libblkid-fix-FSSIZE-docs.patch
@@ -0,0 +1,28 @@
+From 8ae64e23bc34fd939586705f64a93676bae8c2b2 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 26 Apr 2022 10:32:05 +0200
+Subject: libblkid: fix FSSIZE docs
+
+Upstream: http://github.com/util-linux/util-linux/commit/9c01f798f
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ libblkid/src/superblocks/superblocks.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libblkid/src/superblocks/superblocks.c b/libblkid/src/superblocks/superblocks.c
+index 9adc2cfa3..adf4ee025 100644
+--- a/libblkid/src/superblocks/superblocks.c
++++ b/libblkid/src/superblocks/superblocks.c
+@@ -66,7 +66,7 @@
+  *
+  * @SBMAGIC_OFFSET: offset of SBMAGIC
+  *
+- * @FSSIZE: size of filesystem [not-implemented yet]
++ * @FSSIZE: size of filesystem (implemented for XFS only)
+  *
+  * @SYSTEM_ID: ISO9660 system identifier
+  *
+-- 
+2.36.1
+
diff --git a/0024-libblkid-add-FSLASTBLOCK-field-interface-showing-are.patch b/0024-libblkid-add-FSLASTBLOCK-field-interface-showing-are.patch
new file mode 100644
index 0000000..a79980e
--- /dev/null
+++ b/0024-libblkid-add-FSLASTBLOCK-field-interface-showing-are.patch
@@ -0,0 +1,113 @@
+From fb9ea75a8a69b06eb6a4039b841ce3ccabb76775 Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Wed, 27 Apr 2022 13:24:56 +0200
+Subject: libblkid: add FSLASTBLOCK field interface showing area occupied by fs
+
+Add interface to let filesystem set FSLASTBLOCK which is basically
+total number of fsblocks (area occupied by fs). Enable that field in
+the 'superblocks' sample.
+
+Upstream: http://github.com/util-linux/util-linux/commit/b7cb26ec3
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ libblkid/samples/superblocks.c         |  3 ++-
+ libblkid/src/blkid.h.in                | 23 ++++++++++++-----------
+ libblkid/src/superblocks/superblocks.c | 13 +++++++++++++
+ libblkid/src/superblocks/superblocks.h |  1 +
+ 4 files changed, 28 insertions(+), 12 deletions(-)
+
+diff --git a/libblkid/samples/superblocks.c b/libblkid/samples/superblocks.c
+index 38903ecee..b7f94ec14 100644
+--- a/libblkid/samples/superblocks.c
++++ b/libblkid/samples/superblocks.c
+@@ -44,7 +44,8 @@ int main(int argc, char *argv[])
+ 			BLKID_SUBLKS_UUID | BLKID_SUBLKS_UUIDRAW |
+ 			BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE |
+ 			BLKID_SUBLKS_USAGE | BLKID_SUBLKS_VERSION |
+-			BLKID_SUBLKS_MAGIC | BLKID_SUBLKS_FSSIZE);
++			BLKID_SUBLKS_MAGIC | BLKID_SUBLKS_FSSIZE |
++			BLKID_SUBLKS_FSLASTBLOCK);
+ 
+ 	rc = blkid_do_safeprobe(pr);
+ 	if (rc == -1)
+diff --git a/libblkid/src/blkid.h.in b/libblkid/src/blkid.h.in
+index ad4becf0a..56e64f9ab 100644
+--- a/libblkid/src/blkid.h.in
++++ b/libblkid/src/blkid.h.in
+@@ -271,17 +271,18 @@ extern int blkid_superblocks_get_name(size_t idx, const char **name, int *usage)
+ extern int blkid_probe_enable_superblocks(blkid_probe pr, int enable)
+ 			__ul_attribute__((nonnull));
+ 
+-#define BLKID_SUBLKS_LABEL	(1 << 1) /* read LABEL from superblock */
+-#define BLKID_SUBLKS_LABELRAW	(1 << 2) /* read and define LABEL_RAW result value*/
+-#define BLKID_SUBLKS_UUID	(1 << 3) /* read UUID from superblock */
+-#define BLKID_SUBLKS_UUIDRAW	(1 << 4) /* read and define UUID_RAW result value */
+-#define BLKID_SUBLKS_TYPE	(1 << 5) /* define TYPE result value */
+-#define BLKID_SUBLKS_SECTYPE	(1 << 6) /* define compatible fs type (second type) */
+-#define BLKID_SUBLKS_USAGE	(1 << 7) /* define USAGE result value */
+-#define BLKID_SUBLKS_VERSION	(1 << 8) /* read FS type from superblock */
+-#define BLKID_SUBLKS_MAGIC	(1 << 9) /* define SBMAGIC and SBMAGIC_OFFSET */
+-#define BLKID_SUBLKS_BADCSUM	(1 << 10) /* allow a bad checksum */
+-#define BLKID_SUBLKS_FSSIZE	(1 << 11) /* read and define FSSIZE from superblock */
++#define BLKID_SUBLKS_LABEL		(1 << 1) /* read LABEL from superblock */
++#define BLKID_SUBLKS_LABELRAW		(1 << 2) /* read and define LABEL_RAW result value*/
++#define BLKID_SUBLKS_UUID		(1 << 3) /* read UUID from superblock */
++#define BLKID_SUBLKS_UUIDRAW		(1 << 4) /* read and define UUID_RAW result value */
++#define BLKID_SUBLKS_TYPE		(1 << 5) /* define TYPE result value */
++#define BLKID_SUBLKS_SECTYPE		(1 << 6) /* define compatible fs type (second type) */
++#define BLKID_SUBLKS_USAGE		(1 << 7) /* define USAGE result value */
++#define BLKID_SUBLKS_VERSION		(1 << 8) /* read FS type from superblock */
++#define BLKID_SUBLKS_MAGIC		(1 << 9) /* define SBMAGIC and SBMAGIC_OFFSET */
++#define BLKID_SUBLKS_BADCSUM		(1 << 10) /* allow a bad checksum */
++#define BLKID_SUBLKS_FSSIZE		(1 << 11) /* read and define FSSIZE from superblock */
++#define BLKID_SUBLKS_FSLASTBLOCK	(1 << 12) /* read and define FSLASTBLOCK from superblock */
+ 
+ #define BLKID_SUBLKS_DEFAULT	(BLKID_SUBLKS_LABEL | BLKID_SUBLKS_UUID | \
+ 				 BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE)
+diff --git a/libblkid/src/superblocks/superblocks.c b/libblkid/src/superblocks/superblocks.c
+index adf4ee025..5b899a830 100644
+--- a/libblkid/src/superblocks/superblocks.c
++++ b/libblkid/src/superblocks/superblocks.c
+@@ -68,6 +68,8 @@
+  *
+  * @FSSIZE: size of filesystem (implemented for XFS only)
+  *
++ * @FSLASTBLOCK: last fsblock/total number of fsblocks
++ *
+  * @SYSTEM_ID: ISO9660 system identifier
+  *
+  * @PUBLISHER_ID: ISO9660 publisher identifier
+@@ -595,6 +597,17 @@ int blkid_probe_set_fssize(blkid_probe pr, uint64_t size)
+ 	return blkid_probe_sprintf_value(pr, "FSSIZE", "%" PRIu64, size);
+ }
+ 
++int blkid_probe_set_fslastblock(blkid_probe pr, uint64_t lastblock)
++{
++	struct blkid_chain *chn = blkid_probe_get_chain(pr);
++
++	if (!(chn->flags & BLKID_SUBLKS_FSLASTBLOCK))
++		return 0;
++
++	return blkid_probe_sprintf_value(pr, "FSLASTBLOCK", "%" PRIu64,
++			lastblock);
++}
++
+ int blkid_probe_set_id_label(blkid_probe pr, const char *name,
+ 			     const unsigned char *data, size_t len)
+ {
+diff --git a/libblkid/src/superblocks/superblocks.h b/libblkid/src/superblocks/superblocks.h
+index 67803679f..251e2e386 100644
+--- a/libblkid/src/superblocks/superblocks.h
++++ b/libblkid/src/superblocks/superblocks.h
+@@ -112,6 +112,7 @@ extern int blkid_probe_set_utf8_id_label(blkid_probe pr, const char *name,
+ 
+ int blkid_probe_set_block_size(blkid_probe pr, unsigned block_size);
+ int blkid_probe_set_fssize(blkid_probe pr, uint64_t size);
++int blkid_probe_set_fslastblock(blkid_probe pr, uint64_t lastblock);
+ 
+ extern int blkid_probe_is_bitlocker(blkid_probe pr);
+ extern int blkid_probe_is_ntfs(blkid_probe pr);
+-- 
+2.36.1
+
diff --git a/0025-libblkid-add-FSLASTBLOCK-implementation-for-xfs-ext-.patch b/0025-libblkid-add-FSLASTBLOCK-implementation-for-xfs-ext-.patch
new file mode 100644
index 0000000..5cb8bfc
--- /dev/null
+++ b/0025-libblkid-add-FSLASTBLOCK-implementation-for-xfs-ext-.patch
@@ -0,0 +1,86 @@
+From 9c7f3317fc66fe971a331dd71e76aff7ae091ab2 Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Wed, 27 Apr 2022 14:46:33 +0200
+Subject: libblkid: add FSLASTBLOCK implementation for xfs, ext and btrfs
+
+Implementation of FSLASTBLOCK for most common filesystems. Most of
+the fs store total number of reserved blocks in superblock.
+
+Upstream: http://github.com/util-linux/util-linux/commit/5f995b3f1
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ libblkid/src/superblocks/btrfs.c |  5 +++++
+ libblkid/src/superblocks/ext.c   | 10 ++++++++--
+ libblkid/src/superblocks/xfs.c   |  1 +
+ 3 files changed, 14 insertions(+), 2 deletions(-)
+
+diff --git a/libblkid/src/superblocks/btrfs.c b/libblkid/src/superblocks/btrfs.c
+index f0fde700d..9708f2e28 100644
+--- a/libblkid/src/superblocks/btrfs.c
++++ b/libblkid/src/superblocks/btrfs.c
+@@ -76,6 +76,11 @@ static int probe_btrfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 	blkid_probe_set_uuid_as(pr, bfs->dev_item.uuid, "UUID_SUB");
+ 	blkid_probe_set_block_size(pr, le32_to_cpu(bfs->sectorsize));
+ 
++	uint32_t sectorsize_log = 31 -
++		__builtin_clz(le32_to_cpu(bfs->sectorsize));
++	blkid_probe_set_fslastblock(pr,
++			le64_to_cpu(bfs->total_bytes) >> sectorsize_log);
++
+ 	return 0;
+ }
+ 
+diff --git a/libblkid/src/superblocks/ext.c b/libblkid/src/superblocks/ext.c
+index 3870522fa..0b9023734 100644
+--- a/libblkid/src/superblocks/ext.c
++++ b/libblkid/src/superblocks/ext.c
+@@ -164,10 +164,11 @@ static struct ext2_super_block *ext_get_super(
+ static void ext_get_info(blkid_probe pr, int ver, struct ext2_super_block *es)
+ {
+ 	struct blkid_chain *chn = blkid_probe_get_chain(pr);
++	uint32_t s_feature_incompat = le32_to_cpu(es->s_feature_incompat);
+ 
+ 	DBG(PROBE, ul_debug("ext2_sb.compat = %08X:%08X:%08X",
+ 		   le32_to_cpu(es->s_feature_compat),
+-		   le32_to_cpu(es->s_feature_incompat),
++		   s_feature_incompat,
+ 		   le32_to_cpu(es->s_feature_ro_compat)));
+ 
+ 	if (*es->s_volume_name != '\0')
+@@ -179,7 +180,7 @@ static void ext_get_info(blkid_probe pr, int ver, struct ext2_super_block *es)
+ 		blkid_probe_set_uuid_as(pr, es->s_journal_uuid, "EXT_JOURNAL");
+ 
+ 	if (ver != 2 && (chn->flags & BLKID_SUBLKS_SECTYPE) &&
+-	    ((le32_to_cpu(es->s_feature_incompat) & EXT2_FEATURE_INCOMPAT_UNSUPPORTED) == 0))
++	    ((s_feature_incompat & EXT2_FEATURE_INCOMPAT_UNSUPPORTED) == 0))
+ 		blkid_probe_set_value(pr, "SEC_TYPE",
+ 				(unsigned char *) "ext2",
+ 				sizeof("ext2"));
+@@ -190,6 +191,11 @@ static void ext_get_info(blkid_probe pr, int ver, struct ext2_super_block *es)
+ 
+ 	if (le32_to_cpu(es->s_log_block_size) < 32)
+ 		blkid_probe_set_block_size(pr, 1024U << le32_to_cpu(es->s_log_block_size));
++
++	uint64_t fslastblock = le32_to_cpu(es->s_blocks_count) |
++		((s_feature_incompat & EXT4_FEATURE_INCOMPAT_64BIT) ?
++		(uint64_t) le32_to_cpu(es->s_blocks_count_hi) << 32 : 0);
++	blkid_probe_set_fslastblock(pr, fslastblock);
+ }
+ 
+ 
+diff --git a/libblkid/src/superblocks/xfs.c b/libblkid/src/superblocks/xfs.c
+index 444050f55..1f2e92cac 100644
+--- a/libblkid/src/superblocks/xfs.c
++++ b/libblkid/src/superblocks/xfs.c
+@@ -183,6 +183,7 @@ static int probe_xfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 				sizeof(xs->sb_fname));
+ 	blkid_probe_set_uuid(pr, xs->sb_uuid);
+ 	blkid_probe_set_fssize(pr, xfs_fssize(xs));
++	blkid_probe_set_fslastblock(pr, be64_to_cpu(xs->sb_dblocks));
+ 	blkid_probe_set_block_size(pr, be16_to_cpu(xs->sb_sectsize));
+ 	return 0;
+ }
+-- 
+2.36.1
+
diff --git a/0026-blkid-add-image-for-btrfs-testing.patch b/0026-blkid-add-image-for-btrfs-testing.patch
new file mode 100644
index 0000000..f338669
--- /dev/null
+++ b/0026-blkid-add-image-for-btrfs-testing.patch
@@ -0,0 +1,146 @@
+From ab34732c0aaf7814393acbffa59cb82a79583e3d Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Wed, 27 Apr 2022 17:29:27 +0200
+Subject: blkid: add image for btrfs testing
+
+The btrfs is one of the popular filesystem which is supported by
+blkid. However, the image for 'low-probe' tests was missing. Add
+115M BTRFS default image (mkfs.btrfs btrfs.img).
+
+Upstream: http://github.com/util-linux/util-linux/commit/bf64c83ec
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ tests/expected/blkid/low-probe-btrfs  |   7 +++++++
+ tests/ts/blkid/images-fs/btrfs.img.xz | Bin 0 -> 21696 bytes
+ 2 files changed, 7 insertions(+)
+ create mode 100644 tests/expected/blkid/low-probe-btrfs
+ create mode 100644 tests/ts/blkid/images-fs/btrfs.img.xz
+
+diff --git a/tests/expected/blkid/low-probe-btrfs b/tests/expected/blkid/low-probe-btrfs
+new file mode 100644
+index 000000000..509fac378
+--- /dev/null
++++ b/tests/expected/blkid/low-probe-btrfs
+@@ -0,0 +1,7 @@
++ID_FS_BLOCK_SIZE=4096
++ID_FS_TYPE=btrfs
++ID_FS_USAGE=filesystem
++ID_FS_UUID=d4a78b72-55e4-4811-86a6-09af936d43f9
++ID_FS_UUID_ENC=d4a78b72-55e4-4811-86a6-09af936d43f9
++ID_FS_UUID_SUB=1e7603cb-d0be-4d8f-8972-9dddf7d5543c
++ID_FS_UUID_SUB_ENC=1e7603cb-d0be-4d8f-8972-9dddf7d5543c
+diff --git a/tests/ts/blkid/images-fs/btrfs.img.xz b/tests/ts/blkid/images-fs/btrfs.img.xz
+new file mode 100644
+index 0000000000000000000000000000000000000000..418833d42078492f0266d73b22170d5626b80cc0
+GIT binary patch
+literal 21696
+zcmeHPWl)@3wr!vxA$V{Jnm`i>F2UU`&>ggapuwF42rj|hEhI>A2pXKm5}<Jl4viDs
+zA=tb1rlx9Us$Na*eRJ<i)$4!XzprZ7UhAy0_B#8T-$Pp$006E{RLi0Q=uk)i0Dueo
+zYR>KLLtv{u0APQ8dz<t5R!&r&*h#=hy)F*4mh<+`#qJ8V|0sKxpfHM3g?CR_m<oFi
+z&Xmu`<p>4>@S+Y`muuM4>+{+KA8aewyo-V<G)wLITua&>B{m>>0`~^<miSCjDGYDB
+zI@syLR(#pX{x0A<9K#nebA1$D`UCiV&QM>I2_F~pQ?-v<%pRQb2;}K`YK-P^&vwUP
+zXVCRhRXj*+F)SwIc5>i8C<Qx_HW^|{Jw{RHiwZKmta1{xrP<4kv-O0pqnxPJ-)kZr
+zBQlXwYt@hqFms9vuTiL;d)YN!Y*^LTuVto(kdlk^h450&w>;3%I0iQ5t1!M340lC<
+zJNqTP7*oBYGiqzf;Y#-)_UYvj7l!5pT$Ufzd^?ONf<~|eSw>EKCg`8Y9Ept&MxTZ6
+zF0>S!M_I}?`=$G|kU8gzxej?`x=AMWrL>Dgne>#COY;a4VO(!Phg8cMK?#mDBGC^K
+z4)5|A47Wk>py9-nFz?5)hfJ<#<S>jBm6Yqr^6?nF&PU+$lUP1Z^t?~I_H7O-a@fPM
+z1VyDU9yAP8Fp)uZ-fo&}Xt!*>D$!Y4)kD8~@pZcN>QaNnrJq`lR`OyFEOO3liYep^
+z$I2;Pm{so+JUXa(@QuC-D2hcbWQ1Ec#0*I>s!^L(gsXkp!jfy|1b*aYh~Ggtmn9I*
+zVB(11)iR<JVvlAh>Wsg;l(cX<EoN6Inn}i;;N``T;h69gfw`VxNqunN!zcf|p@Q?Z
+zNCvhE`dI|FbRnjuSU;p$rsMI8C<P9UY?ihzyf8AzJSn5AjJgFAY9`H<`T@G?nqnhI
+zq?jqiX8q6^8%XJ6)EDmavVPBQ1x|XRtj(E^7#}-U@k$^y(<+vH1f<on4=8(Fg6Sxg
+zN77{-2ncPdU&~S(e>k(PPB-}Iy*4IczMS)xVZin2P%phzn(HW=nP{D8>#%JzPJ>?t
+zV8w@R+S~F{zF$E}ua!#m^rM|mlAD){$uLBiJY81vmGFS{$o2C6>`D@G-!`@wJlEVl
+zeT#KukF1@mq1oJs)S5^QBL}Vcf-E(;bh&xa%&vZV#ix)lqRAHDz=kDgPZvAYqNi99
+zww?C87FFBOk{Yb;)rCc?aOcMpUYoAqNbW{cpwZJCd#n|=QW(Vd4STD<R}jod07Uza
+zkvs((b3c-B@EAhHMARy0Ns^^=%1Y<8%G=^Y!>ShgVQ0_U|Kdfa{+*s@vO5L}@Uqz?
+z+IzlQef}pUgr2jxIPN$dx4j8ZIzz}Wr2>a1od`$|cGQ$x!|s$V_RUWpSDvR@OWRAt
+zxk8rbJA*U5>>rzF_OvmR?9P9sy3r}j6n?6JVRCR)MH8qCk^u`|^I5?|03oz}HuUSu
+zrDRzdE87n6B>$e!NV$S{-^rVMn|Gr$)B{?pF7U*vaYu7cdo*naC3mK`;u9c{LaX}@
+zk4M&C4RKg+<=!Xf7#=SgI4oxKr_~M>{TBR+#>?)3NNg&P4Vnx&VL({sPW*>)+qki)
+zX>)|?cac;D5|+dZxgV<Q8cT5)n&j`K-z|--$eu#>LtI%oX4;=YV(F7H&<uMVgot2V
+z{3&_FD0v$>n2)!MZgm+;oUlpa@>>LcgOwdW?p4+;J_-w9+ZmjH-BRYsNs;wAlGE<5
+z!rNn;g&Lv#&So~lB0NzgbIBM&+*|zkb4NFwbFBW`M35|A;g#q7Wf}*YCM-JWD8LV9
+z_Md|KANsXAo>*np?GTXbS1efHcKWn2x|YLQIv!iX>kn7s5>uhCv(%3@6W%+vz7`OU
+zkJBl1U{cxro?zHPY_^;5#^O6HrTOL%tRSm=WPY*@Y%r<&9uv~gU&Lp8q%d53{7w5?
+zhHgLVEm^5o6Ur2s=p1ftaH!+eb^<NQ(>>TD)K04ppQmwqe3u>yHoNCHeYX4%s9c*}
+zNuGH0D#sKBG&){<c(S-o?0lNB;B^@SHPnS)>-8C1iCp68+E8_x<Y(7C<Xn=2Y)|ap
+zAp|T`17}qNNO^>k%Iw*Vi=Cx{z<vZ(@)$BWqQ(UQ*%dcAt*Q^UNz95H{rKE0`c&M~
+ztG9^pIOS^JI4Mk9Q$jtM%o3#YE&FmV!>jE2jZw3`Y*Y>5^*anc9+ib_O4?bFd<k#7
+z8=^905gBL^7OL+=;zkfKj0E^VIfCz;h#4d9g%u~8KZCHrp35G2wTbU>U;bMyKZEB0
+zGPBTdS-oH^>W0t9{1{!qnWh2HV0m1`^h=-OJ9unJCQK8GBQa3(v>pZa)Z)sUA6Ir+
+zNzk@BMzuZW86&WuRpJ%#&lkvWSsV!OF03vFx!SM#qvZE;5z4U9b(BtyV0_<vk$N#P
+zyDqr8vaHIf!+UNA;|mVv;ko<h^qf3!)WJm~x4w|&DWWNp;+e{6_39b-MZwr}{|G{{
+z4eaxKN>z>Q4{{O<mV#B#q2Bp<i6WBA&$QV`SIJOdl97RN&#7p5T&~0H4UH!Z1Z8xm
+zN+h2#@DVtp2XUD@FQ#>vI>?<s@;Xr2M$!tTJO~)Sk&(4)Em7s@X_F!z_{@Y{ZP4I3
+z>@ad-Xf5r(I9Ac~(jh3QG6=|B9M1+(6YC}p9C9giH)OoM@TTGK?U>Y$Km~l=5r5J#
+z4{zfFb@wq@za_XzqnO{QEkRw~7%QF6gJo`nyianMaCD96IpA=#kor-L>(OC|rjmu(
+zk3ruyZc3*^L3%fmqWp&Z#DeoU@F2u0I{bR2^*~_F5Wk^vdt$XgZB=oJQ1AuCHY<lc
+zC;Dp>oT8mC;w;;R1<ymgX+9YA3yh5k9W$L&W*(-iQvTSN$TlRrh#uN1t(5C6fRan1
+z{W)y<Ka=Lw^^ivjl4ySi$N!CJ@ljZRDWXjPj*f>K<yFS5zwaKn1KiD;&y$3Qh(Q6-
+z{}*EQpHDCo)-zXRi~WHXLyDiD)LnnaB(h-0g8kc@^gojmvS5E^!B9~deyL;f?-#h5
+zb;6?`6IFWA$C19|pD<K|#}RTBL(Dc5O3D%U6q(tr^T1Us9wrh-v@C)ARJXET?W}`N
+zQj!aMOpEt@u6KzR_`lZ8d+wi{ae5uO=u5eeeV<u!aLZ;TJd~((U%vej6vG%%6q<G*
+zD~)GY^UQpo{(S!7wVC;Be?NA851|qEVnRj+@fMA^;;KMo(!Hdco}x4&>or>$qi7Pr
+zd{UDUtv3Mx%FN4+Fh#sif~@qF+;64{Mx6UvvV$MI?*L3F+fUu@)KVscPv2;LChjl8
+zuK^zu%`G}X7hj`k3+E^A11*^^$w3F4A2TFsyzW?QJua>ckLM1JHI!(0Rj+W_@xwR3
+zb%(bdU~^&S)U2_9=)Q5Mt0~})HV*XCRX2`vQGj;Z{zY0MS_=)1R0l|P@KY`*lDmJW
+zZT!C|SPTmHFUj5WtF9H{%q%&vc0%T*!{gebwOncI(k%5*S*O%#fM_WrOdJqhL$3Q=
+z0MVQ+s%hpee>~)(8IS?A>ua9c2rEr~a?7@r_Iv&JpDJY3T(&fl%aB}#<g#DP7w-Xn
+z|0TI>7kUnnK4D2+_0!)qC!rPH_gCaYOKyKStn8^{D90_4i+S(Co=&-H1v-PgN3m0d
+zBxB;L%*-mCFZt_yQdm45YWmL2<-7I{6kRE%h!B0?%kZpR@V>C{a;D|H2`u;98CkG9
+z?~EooJK@|&W;I_kUmf333{*sIjQ}Q;j6%}nsD?}E2}L9~Zx`C3?P06oew40@4F^n$
+zP7@w(itv!{eZHfbVSYQ$Op|liTofAJBV<L1>Scb219mIt*{4VNmlf_-PD)VE)40Ok
+z9(_VL6gv{KU=XODULn07rtGoAwwC(Hxp7z&+;^czs8T=XFni?kRKGj<jstq3Q^dpj
+zw*x)&r|d;$59MvdvNoLY4>3HCwFDausS(c+N&CewV!S%zKkR)mn2yf9PRC(R2q~>y
+zdLu=~auhyVB*7G=_if~6vXSa;*CT0&?ZdKUY4a!}3Vm}jn>w`u9KGEsC61SwT?^n$
+z=~ZDK@6C-V!uu;F<%!R=NnyL5baXh=&&YwaQrR)unHFdi9r!Zs+xK=+)rND~I|$dU
+zIsAl2l7Ri_E8S8=D)w(%WaZCIqCS3v7~KiO1cY(dgUx$6$ONbYKND~Fh8;S`blxva
+zGBj|!gdTD>Tj_lXE+6nrAmX7ErErM?Sq5~yRcR5@0n#M8Dt6Pkx-E=EG5}BbLY`c{
+zCkHmAQuFYhj4Rl(4pwPT8n4ekFUfj$7Er>)5`*)_D{;)8Pq-vzI&^XC!cvW&LfyFg
+z$$`o>td%TT>dPh>%O3m%`+F)U*1S&N5U?-hs&8~p1PgxqJwL$^!P%bqp+2|HO*SII
+zXvY@28Y(KPiwVYx**0EL)Y)Q$MWYZ4_vU8{%*t|slC#h_v$(G-a+ssLVL}i)M^32w
+z)07)etQS|Gp0<3IMPI-UI<Ux64(2AMPNs`7A!Y?x4u%675r;ga43kpRiiZ}CYLwE?
+zK<aIX!$>{B%#EA*_jr$lRpP#7GAKc9o7>&KVacDya8EKB^`ydigHs5s-d%;jxo+JZ
+z5a8tX*9vFzs$bL*DM|D*TodBFSD?|=S8_&nBVD%p1I<PYjhS^U)9v{OV0u`4U$~P9
+z$(}nin=1bb9z5L>CQ5Pu5O0tf%vLIVJwuA~Ky{s&s&gIQ;rC-5bRBnhpcSEaLa?8c
+zGs@@sAX^}h*dB@yl-edEaxY}An}M?C&cwLQ=AIPD`+RyV*FB5SpeQ*cIN$}bF&w>b
+zJ{lG!Lfh1ypV*5@2;dh`jpBtX4)gFHVshTa+ndYvGH*R>zI0%yD-R}0EOK-yOk8Se
+z+*pirXSEP%ZJWWWz*!jM3JiWf{};^%i`K56ASDP=f*>WxFD5~dS%#mEQ6TO7-<dl>
+z77SUipH33~l#}tV$tGlnAv+A&VZUJF4=F2<vf?M=<4Dr~>jo!GsCa;_jJ3eR2=k^R
+zlOw8lOZxBStkNau58GXG8hNbZbMxw~5_S?b)C;W%-m~j-$?(o3ZkifD4HiKs&Cgcd
+z?#8Is8kR;8z|;@MIjYvmfVSJ-Gg?njK<jvtChk`-MYRW!0n}of7K!<k+Vm!8csB-Q
+ziQ)+~h>n9waTxd*^Rghrshq`IfnO!702Jhvq%nbxP!p?38}=tzral+MXpTCDZ=g<v
+z;Y(##;{nyA%q&UIFyoqw0Y(vCp)?Gx(E>ko*UgA@G57Z3&0L4Nrw)rdFq$Bb$oz&h
+z>IW(XCMCaSNqnkWFFFzc3zWps;JVjKJ3A-N+WuvOmVcEe|Cu)ye+VT1_SdTLv2LUz
+z^Lrhcn@iy8FKOA|yd5+m9WCGeoPX9hk6mpQ68{ALlx0yfuwy7KE)}J|L%-;hFa5DZ
+z{{nZF$nlWdqvG_S#ZjC&-BWXN2Nq~cBM-()Y<QTAfIl`|!rq0?K~&f-)F~u}OIgd-
+zUBh-(6(JQP7a-CBwjK$?D!7!36={H~ucnWOWyQ9T#5H<6Auz~=8_aHG($YoVXcQK`
+z3?E1!jOkcK2QU2i))@T4v@tm2#v7G7`9_voLRg_>OcAy=c!GXr(08{<5fgUO-~<YO
+z!PWE3B(<bQ#yQa@X41j?q;w^gD8P}bP|AmF#^U8RzL;>^oJv+WMn-^R(nBVIgnsjw
+zys-P@)I-`sCUI+lZ&M@bl7pkJ741<Tr<>07I-8-_>Vg4~FC1GSm!j}Xf-hx7a|2rj
+zPiyB;N=E_@19Jxt+3UBOmb?lJir{H8{0Oegr<&7nyHl&WTUOmHO=ZJ5*hH6G4xMAZ
+zU|TP)nnI_SzWa4!@w``U*+rCt(p;B6&@P}Cl(Y7!YuGm|Y&6^7rG*zn>H=PN`J!I>
+z5<TwjTpe|M(A(8pGc#qGng==;sUNvJ5K3S^^erv+If#7(!GIZwnosRIz4Dy-K>o}D
+zA&Q5A>bYPdO%31XIR{@M;nfb~C+BSlpvk~3JYHmif;FA0ca~#cxO5P&ML*jJre{o7
+z%UFv3?A6A8fb{vRCHnMjYCCpQYr@;JqAo{qnw8H5P%*K`^5UpbwP|xfUmXCHs-Lls
+zE$-vS<xkX+3%ZTlscrV|Sg-k}c&y3{y$QJxabeElciX~aAL2BTgogT(tUk{I50Ysg
+z_S)8uuRuRNH<iwzXmu(jm5O!r_Rizgz#i6~)^_6M{}8HqW7RVzKBAk2W<eHWPm?Rt
+zCYMYLGkh=c1C1(=HBo;$zmDoU_T+`kJL4#hG>c${8rOAU+U4?-FMw~YHl^O!cRbJ6
+zQ=cfw%vPS>Tdv2Y(yadyh_7rux*<Y2?n=AOk!}cjeE)ngA0O@h>xG+sk#G3hEBr#G
+zrDA#)%c-MSwF;||mAdJA?K&$d8y83WK<c-sum%jQG~YJhg^&*MRLa&-Qt~dHDp!Tw
+z?xQ@;H;(kV4im0AVek67*E&<OV}xG5-=oP1S!$XCq};WSQ41l_)E4*<Bf)jIF>AKr
+zHjBKXyQfOB!jrnZAYUlg*9Ne?;71yAVxl*-DF3dYmQPF~0oR*S?D+*aa9I~kXrJ8g
+z6?^R@wP$^ijX=A%X+(=W#<q#O$<*?g`^>B3w1c-vvb~Aneqsx9h0O7Z7z|eU0<H+q
+z1nQQJqQkV0fu!|u-hG$Aw!j~!K9{Hf<#sx|;c<^6Q6jMMpOcUK?_-1GIw<zHS35`z
+zkJRu;4gX6$q(edy2}vX*k&yh`<NH77Vu&2kB1g1;U+;kIu)o5e`?p>V5|T(rA|d$)
+zSJWUm49Q`C?h+(qhao!**<t^9D?{dTkhvUWE(e**`Nvg($W!wF!6_NT%?n8TB?siU
+uv7zHFJ%H9e8LOA$Rv7@4ltL6=UzoseyGbRaDX57^g*ecD`vw4YbpH#vFQ6y@
+
+literal 0
+HcmV?d00001
+
+-- 
+2.36.1
+
diff --git a/0027-blkid-add-tests-for-FSLASTBLOCK-tag.patch b/0027-blkid-add-tests-for-FSLASTBLOCK-tag.patch
new file mode 100644
index 0000000..5bfe04f
--- /dev/null
+++ b/0027-blkid-add-tests-for-FSLASTBLOCK-tag.patch
@@ -0,0 +1,94 @@
+From 96a699563b65b6a9204f2c3184faf1366155a614 Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Wed, 27 Apr 2022 17:33:33 +0200
+Subject: blkid: add tests for FSLASTBLOCK tag
+
+Upstream: http://github.com/util-linux/util-linux/commit/800ed56f4
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ misc-utils/blkid.c                    | 2 +-
+ tests/expected/blkid/low-probe-btrfs  | 1 +
+ tests/expected/blkid/low-probe-ext2   | 1 +
+ tests/expected/blkid/low-probe-ext3   | 1 +
+ tests/expected/blkid/low-probe-jbd    | 1 +
+ tests/expected/blkid/low-probe-xfs    | 1 +
+ tests/expected/blkid/low-probe-xfs-v5 | 1 +
+ 7 files changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/misc-utils/blkid.c b/misc-utils/blkid.c
+index 4f456be52..f2b190ce3 100644
+--- a/misc-utils/blkid.c
++++ b/misc-utils/blkid.c
+@@ -893,7 +893,7 @@ int main(int argc, char **argv)
+ 				BLKID_SUBLKS_LABEL | BLKID_SUBLKS_UUID |
+ 				BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE |
+ 				BLKID_SUBLKS_USAGE | BLKID_SUBLKS_VERSION |
+-				BLKID_SUBLKS_FSSIZE);
++				BLKID_SUBLKS_FSSIZE | BLKID_SUBLKS_FSLASTBLOCK);
+ 
+ 
+ 			if (fltr_usage &&
+diff --git a/tests/expected/blkid/low-probe-btrfs b/tests/expected/blkid/low-probe-btrfs
+index 509fac378..48649389a 100644
+--- a/tests/expected/blkid/low-probe-btrfs
++++ b/tests/expected/blkid/low-probe-btrfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSLASTBLOCK=29440
+ ID_FS_TYPE=btrfs
+ ID_FS_USAGE=filesystem
+ ID_FS_UUID=d4a78b72-55e4-4811-86a6-09af936d43f9
+diff --git a/tests/expected/blkid/low-probe-ext2 b/tests/expected/blkid/low-probe-ext2
+index 087da97a4..e236c6e8a 100644
+--- a/tests/expected/blkid/low-probe-ext2
++++ b/tests/expected/blkid/low-probe-ext2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSLASTBLOCK=100
+ ID_FS_LABEL=test-ext2
+ ID_FS_LABEL_ENC=test-ext2
+ ID_FS_TYPE=ext2
+diff --git a/tests/expected/blkid/low-probe-ext3 b/tests/expected/blkid/low-probe-ext3
+index 8684884c1..164fefb7b 100644
+--- a/tests/expected/blkid/low-probe-ext3
++++ b/tests/expected/blkid/low-probe-ext3
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSLASTBLOCK=2048
+ ID_FS_LABEL=test-ext3
+ ID_FS_LABEL_ENC=test-ext3
+ ID_FS_SEC_TYPE=ext2
+diff --git a/tests/expected/blkid/low-probe-jbd b/tests/expected/blkid/low-probe-jbd
+index c9f9f6b79..f5462a2a3 100644
+--- a/tests/expected/blkid/low-probe-jbd
++++ b/tests/expected/blkid/low-probe-jbd
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSLASTBLOCK=1024
+ ID_FS_LOGUUID=0d7a07df-7b06-4829-bce7-3b9c3ece570c
+ ID_FS_TYPE=jbd
+ ID_FS_USAGE=other
+diff --git a/tests/expected/blkid/low-probe-xfs b/tests/expected/blkid/low-probe-xfs
+index a91e92bcc..be9c4194a 100644
+--- a/tests/expected/blkid/low-probe-xfs
++++ b/tests/expected/blkid/low-probe-xfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSLASTBLOCK=4096
+ ID_FS_FSSIZE=11862016
+ ID_FS_LABEL=test-xfs
+ ID_FS_LABEL_ENC=test-xfs
+diff --git a/tests/expected/blkid/low-probe-xfs-v5 b/tests/expected/blkid/low-probe-xfs-v5
+index 129b41f26..fd2cba933 100644
+--- a/tests/expected/blkid/low-probe-xfs-v5
++++ b/tests/expected/blkid/low-probe-xfs-v5
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSLASTBLOCK=5120
+ ID_FS_FSSIZE=17469440
+ ID_FS_LABEL=test-xfs-v5
+ ID_FS_LABEL_ENC=test-xfs-v5
+-- 
+2.36.1
+
diff --git a/0028-libblkid-merge-FS-flags-into-one-FSINFO.patch b/0028-libblkid-merge-FS-flags-into-one-FSINFO.patch
new file mode 100644
index 0000000..7ab6004
--- /dev/null
+++ b/0028-libblkid-merge-FS-flags-into-one-FSINFO.patch
@@ -0,0 +1,120 @@
+From f58a63a3d88cccd5fdf53ead425c5e8186f32cc1 Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Mon, 2 May 2022 17:08:33 +0200
+Subject: libblkid: merge FS* flags into one FSINFO
+
+Put BLOCK_SIZE, FSSIZE and FSLASTBLOCK tags under one FSINFO flag.
+These, and probably future ones, are read directly from the
+superblock (with minor post-processing). These properties are
+combined under one flag to escape adding a flag per superblock
+member.
+
+Upstream: http://github.com/util-linux/util-linux/commit/c9b2297eb
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ libblkid/samples/superblocks.c         |  3 +--
+ libblkid/src/blkid.h.in                | 23 +++++++++++------------
+ libblkid/src/superblocks/superblocks.c |  9 +++++++--
+ misc-utils/blkid.c                     |  3 +--
+ 4 files changed, 20 insertions(+), 18 deletions(-)
+
+diff --git a/libblkid/samples/superblocks.c b/libblkid/samples/superblocks.c
+index b7f94ec14..5253f9cc4 100644
+--- a/libblkid/samples/superblocks.c
++++ b/libblkid/samples/superblocks.c
+@@ -44,8 +44,7 @@ int main(int argc, char *argv[])
+ 			BLKID_SUBLKS_UUID | BLKID_SUBLKS_UUIDRAW |
+ 			BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE |
+ 			BLKID_SUBLKS_USAGE | BLKID_SUBLKS_VERSION |
+-			BLKID_SUBLKS_MAGIC | BLKID_SUBLKS_FSSIZE |
+-			BLKID_SUBLKS_FSLASTBLOCK);
++			BLKID_SUBLKS_MAGIC | BLKID_SUBLKS_FSINFO);
+ 
+ 	rc = blkid_do_safeprobe(pr);
+ 	if (rc == -1)
+diff --git a/libblkid/src/blkid.h.in b/libblkid/src/blkid.h.in
+index 56e64f9ab..ae4e555e3 100644
+--- a/libblkid/src/blkid.h.in
++++ b/libblkid/src/blkid.h.in
+@@ -271,18 +271,17 @@ extern int blkid_superblocks_get_name(size_t idx, const char **name, int *usage)
+ extern int blkid_probe_enable_superblocks(blkid_probe pr, int enable)
+ 			__ul_attribute__((nonnull));
+ 
+-#define BLKID_SUBLKS_LABEL		(1 << 1) /* read LABEL from superblock */
+-#define BLKID_SUBLKS_LABELRAW		(1 << 2) /* read and define LABEL_RAW result value*/
+-#define BLKID_SUBLKS_UUID		(1 << 3) /* read UUID from superblock */
+-#define BLKID_SUBLKS_UUIDRAW		(1 << 4) /* read and define UUID_RAW result value */
+-#define BLKID_SUBLKS_TYPE		(1 << 5) /* define TYPE result value */
+-#define BLKID_SUBLKS_SECTYPE		(1 << 6) /* define compatible fs type (second type) */
+-#define BLKID_SUBLKS_USAGE		(1 << 7) /* define USAGE result value */
+-#define BLKID_SUBLKS_VERSION		(1 << 8) /* read FS type from superblock */
+-#define BLKID_SUBLKS_MAGIC		(1 << 9) /* define SBMAGIC and SBMAGIC_OFFSET */
+-#define BLKID_SUBLKS_BADCSUM		(1 << 10) /* allow a bad checksum */
+-#define BLKID_SUBLKS_FSSIZE		(1 << 11) /* read and define FSSIZE from superblock */
+-#define BLKID_SUBLKS_FSLASTBLOCK	(1 << 12) /* read and define FSLASTBLOCK from superblock */
++#define BLKID_SUBLKS_LABEL	(1 << 1) /* read LABEL from superblock */
++#define BLKID_SUBLKS_LABELRAW	(1 << 2) /* read and define LABEL_RAW result value*/
++#define BLKID_SUBLKS_UUID	(1 << 3) /* read UUID from superblock */
++#define BLKID_SUBLKS_UUIDRAW	(1 << 4) /* read and define UUID_RAW result value */
++#define BLKID_SUBLKS_TYPE	(1 << 5) /* define TYPE result value */
++#define BLKID_SUBLKS_SECTYPE	(1 << 6) /* define compatible fs type (second type) */
++#define BLKID_SUBLKS_USAGE	(1 << 7) /* define USAGE result value */
++#define BLKID_SUBLKS_VERSION	(1 << 8) /* read FS type from superblock */
++#define BLKID_SUBLKS_MAGIC	(1 << 9) /* define SBMAGIC and SBMAGIC_OFFSET */
++#define BLKID_SUBLKS_BADCSUM	(1 << 10) /* allow a bad checksum */
++#define BLKID_SUBLKS_FSINFO	(1 << 11) /* read and define fs properties from superblock */
+ 
+ #define BLKID_SUBLKS_DEFAULT	(BLKID_SUBLKS_LABEL | BLKID_SUBLKS_UUID | \
+ 				 BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE)
+diff --git a/libblkid/src/superblocks/superblocks.c b/libblkid/src/superblocks/superblocks.c
+index 5b899a830..a1f42c611 100644
+--- a/libblkid/src/superblocks/superblocks.c
++++ b/libblkid/src/superblocks/superblocks.c
+@@ -562,6 +562,11 @@ int blkid_probe_sprintf_version(blkid_probe pr, const char *fmt, ...)
+ 
+ int blkid_probe_set_block_size(blkid_probe pr, unsigned block_size)
+ {
++	struct blkid_chain *chn = blkid_probe_get_chain(pr);
++
++	if (!(chn->flags & BLKID_SUBLKS_FSINFO))
++		return 0;
++
+ 	return blkid_probe_sprintf_value(pr, "BLOCK_SIZE", "%u", block_size);
+ }
+ 
+@@ -591,7 +596,7 @@ int blkid_probe_set_fssize(blkid_probe pr, uint64_t size)
+ {
+ 	struct blkid_chain *chn = blkid_probe_get_chain(pr);
+ 
+-	if (!(chn->flags & BLKID_SUBLKS_FSSIZE))
++	if (!(chn->flags & BLKID_SUBLKS_FSINFO))
+ 		return 0;
+ 
+ 	return blkid_probe_sprintf_value(pr, "FSSIZE", "%" PRIu64, size);
+@@ -601,7 +606,7 @@ int blkid_probe_set_fslastblock(blkid_probe pr, uint64_t lastblock)
+ {
+ 	struct blkid_chain *chn = blkid_probe_get_chain(pr);
+ 
+-	if (!(chn->flags & BLKID_SUBLKS_FSLASTBLOCK))
++	if (!(chn->flags & BLKID_SUBLKS_FSINFO))
+ 		return 0;
+ 
+ 	return blkid_probe_sprintf_value(pr, "FSLASTBLOCK", "%" PRIu64,
+diff --git a/misc-utils/blkid.c b/misc-utils/blkid.c
+index f2b190ce3..744151616 100644
+--- a/misc-utils/blkid.c
++++ b/misc-utils/blkid.c
+@@ -893,8 +893,7 @@ int main(int argc, char **argv)
+ 				BLKID_SUBLKS_LABEL | BLKID_SUBLKS_UUID |
+ 				BLKID_SUBLKS_TYPE | BLKID_SUBLKS_SECTYPE |
+ 				BLKID_SUBLKS_USAGE | BLKID_SUBLKS_VERSION |
+-				BLKID_SUBLKS_FSSIZE | BLKID_SUBLKS_FSLASTBLOCK);
+-
++				BLKID_SUBLKS_FSINFO);
+ 
+ 			if (fltr_usage &&
+ 			    blkid_probe_filter_superblocks_usage(pr, fltr_flag, fltr_usage))
+-- 
+2.36.1
+
diff --git a/0029-libblkid-add-FSBLOCKSIZE-tag.patch b/0029-libblkid-add-FSBLOCKSIZE-tag.patch
new file mode 100644
index 0000000..8016476
--- /dev/null
+++ b/0029-libblkid-add-FSBLOCKSIZE-tag.patch
@@ -0,0 +1,1394 @@
+From bb1537a959e8ec53acfa90081be9cd1167b6a0cd Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Fri, 27 May 2022 12:05:32 +0200
+Subject: libblkid: add FSBLOCKSIZE tag
+
+The FSBLOCKSIZE tag exposes file system block size in contrast to
+the BLOCK_SIZE (unfortunate name) which returns minimal accessible
+block size (sector size).
+
+Upstream: http://github.com/util-linux/util-linux/commit/0f447d490
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ libblkid/src/superblocks/apfs.c                     |  1 +
+ libblkid/src/superblocks/befs.c                     |  1 +
+ libblkid/src/superblocks/btrfs.c                    |  1 +
+ libblkid/src/superblocks/erofs.c                    |  5 ++++-
+ libblkid/src/superblocks/exfat.c                    |  1 +
+ libblkid/src/superblocks/exfs.c                     |  1 +
+ libblkid/src/superblocks/ext.c                      |  4 +++-
+ libblkid/src/superblocks/f2fs.c                     |  4 +++-
+ libblkid/src/superblocks/gfs.c                      |  1 +
+ libblkid/src/superblocks/hfs.c                      |  1 +
+ libblkid/src/superblocks/hpfs.c                     |  1 +
+ libblkid/src/superblocks/iso9660.c                  |  2 ++
+ libblkid/src/superblocks/jfs.c                      |  1 +
+ libblkid/src/superblocks/minix.c                    |  1 +
+ libblkid/src/superblocks/nilfs.c                    |  4 +++-
+ libblkid/src/superblocks/ntfs.c                     |  2 ++
+ libblkid/src/superblocks/ocfs.c                     |  4 +++-
+ libblkid/src/superblocks/reiserfs.c                 |  2 ++
+ libblkid/src/superblocks/romfs.c                    |  1 +
+ libblkid/src/superblocks/squashfs.c                 |  1 +
+ libblkid/src/superblocks/superblocks.c              | 13 +++++++++++++
+ libblkid/src/superblocks/superblocks.h              |  1 +
+ libblkid/src/superblocks/udf.c                      |  1 +
+ libblkid/src/superblocks/ufs.c                      |  8 ++++++--
+ libblkid/src/superblocks/vfat.c                     |  1 +
+ libblkid/src/superblocks/vxfs.c                     |  2 ++
+ libblkid/src/superblocks/xfs.c                      |  1 +
+ libblkid/src/superblocks/zfs.c                      |  4 +++-
+ libblkid/src/superblocks/zonefs.c                   |  1 +
+ tests/expected/blkid/low-probe-befs                 |  1 +
+ tests/expected/blkid/low-probe-btrfs                |  1 +
+ tests/expected/blkid/low-probe-erofs                |  1 +
+ tests/expected/blkid/low-probe-exfat                |  1 +
+ tests/expected/blkid/low-probe-ext2                 |  1 +
+ tests/expected/blkid/low-probe-ext3                 |  1 +
+ tests/expected/blkid/low-probe-f2fs                 |  1 +
+ tests/expected/blkid/low-probe-fat                  |  1 +
+ tests/expected/blkid/low-probe-fat16_noheads        |  1 +
+ tests/expected/blkid/low-probe-fat32_cp850_O_tilde  |  1 +
+ tests/expected/blkid/low-probe-fat32_label_64MB     |  1 +
+ tests/expected/blkid/low-probe-fat32_mkdosfs_label1 |  1 +
+ ...ow-probe-fat32_mkdosfs_label1_dosfslabel_NO_NAME |  1 +
+ .../low-probe-fat32_mkdosfs_label1_dosfslabel_empty |  1 +
+ ...low-probe-fat32_mkdosfs_label1_dosfslabel_label2 |  1 +
+ .../low-probe-fat32_mkdosfs_label1_mlabel_NO_NAME   |  1 +
+ .../low-probe-fat32_mkdosfs_label1_mlabel_erase     |  1 +
+ .../blkid/low-probe-fat32_mkdosfs_label1_xp_erase   |  1 +
+ .../blkid/low-probe-fat32_mkdosfs_label1_xp_label2  |  1 +
+ tests/expected/blkid/low-probe-fat32_mkdosfs_none   |  1 +
+ .../low-probe-fat32_mkdosfs_none_dosfslabel_NO_NAME |  1 +
+ .../low-probe-fat32_mkdosfs_none_dosfslabel_label1  |  1 +
+ ...e-fat32_mkdosfs_none_dosfslabel_label1_xp_label2 |  1 +
+ .../blkid/low-probe-fat32_mkdosfs_none_xp_label1    |  1 +
+ ...e-fat32_mkdosfs_none_xp_label1_dosfslabel_label2 |  1 +
+ tests/expected/blkid/low-probe-fat32_xp_label1      |  1 +
+ tests/expected/blkid/low-probe-fat32_xp_none        |  1 +
+ .../blkid/low-probe-fat32_xp_none_dosfslabel_label1 |  1 +
+ .../blkid/low-probe-fat32_xp_none_mlabel_label1     |  1 +
+ tests/expected/blkid/low-probe-gfs2                 |  1 +
+ tests/expected/blkid/low-probe-hfsplus              |  1 +
+ tests/expected/blkid/low-probe-hpfs                 |  1 +
+ tests/expected/blkid/low-probe-iso                  |  1 +
+ .../blkid/low-probe-iso-different-iso-joliet-label  |  1 +
+ tests/expected/blkid/low-probe-iso-joliet           |  1 +
+ .../blkid/low-probe-iso-multi-genisoimage-0         |  1 +
+ .../blkid/low-probe-iso-multi-genisoimage-174       |  1 +
+ .../blkid/low-probe-iso-multi-genisoimage-348       |  1 +
+ tests/expected/blkid/low-probe-iso-rr-joliet        |  1 +
+ .../expected/blkid/low-probe-iso-unicode-long-label |  1 +
+ tests/expected/blkid/low-probe-jbd                  |  1 +
+ tests/expected/blkid/low-probe-jfs                  |  1 +
+ tests/expected/blkid/low-probe-minix-BE             |  1 +
+ tests/expected/blkid/low-probe-minix-LE             |  1 +
+ tests/expected/blkid/low-probe-nilfs2               |  1 +
+ tests/expected/blkid/low-probe-ntfs                 |  1 +
+ tests/expected/blkid/low-probe-ocfs2                |  1 +
+ tests/expected/blkid/low-probe-reiser3              |  1 +
+ tests/expected/blkid/low-probe-reiser4              |  1 +
+ tests/expected/blkid/low-probe-romfs                |  1 +
+ tests/expected/blkid/low-probe-small-fat32          |  1 +
+ tests/expected/blkid/low-probe-udf                  |  1 +
+ tests/expected/blkid/low-probe-udf-bdr-2.60-nero    |  1 +
+ .../blkid/low-probe-udf-cd-mkudfiso-20100208        |  1 +
+ tests/expected/blkid/low-probe-udf-cd-nero-6        |  1 +
+ .../blkid/low-probe-udf-hdd-macosx-2.60-4096        |  1 +
+ .../blkid/low-probe-udf-hdd-mkudffs-1.0.0-1         |  1 +
+ .../blkid/low-probe-udf-hdd-mkudffs-1.0.0-2         |  1 +
+ .../expected/blkid/low-probe-udf-hdd-mkudffs-1.3-1  |  1 +
+ .../expected/blkid/low-probe-udf-hdd-mkudffs-1.3-2  |  1 +
+ .../expected/blkid/low-probe-udf-hdd-mkudffs-1.3-3  |  1 +
+ .../expected/blkid/low-probe-udf-hdd-mkudffs-1.3-4  |  1 +
+ .../expected/blkid/low-probe-udf-hdd-mkudffs-1.3-5  |  1 +
+ .../expected/blkid/low-probe-udf-hdd-mkudffs-1.3-6  |  1 +
+ .../expected/blkid/low-probe-udf-hdd-mkudffs-1.3-7  |  1 +
+ .../expected/blkid/low-probe-udf-hdd-mkudffs-1.3-8  |  1 +
+ tests/expected/blkid/low-probe-udf-hdd-mkudffs-2.2  |  1 +
+ .../blkid/low-probe-udf-hdd-udfclient-0.7.5         |  1 +
+ .../blkid/low-probe-udf-hdd-udfclient-0.7.7         |  1 +
+ tests/expected/blkid/low-probe-udf-hdd-win7         |  1 +
+ .../blkid/low-probe-udf-multi-genisoimage-0         |  1 +
+ .../blkid/low-probe-udf-multi-genisoimage-417       |  1 +
+ .../blkid/low-probe-udf-multi-genisoimage-834       |  1 +
+ tests/expected/blkid/low-probe-udf-multi-mkudffs-0  |  1 +
+ .../expected/blkid/low-probe-udf-multi-mkudffs-320  |  1 +
+ .../expected/blkid/low-probe-udf-multi-mkudffs-640  |  1 +
+ tests/expected/blkid/low-probe-ufs                  |  1 +
+ tests/expected/blkid/low-probe-xfs                  |  1 +
+ tests/expected/blkid/low-probe-xfs-v5               |  1 +
+ tests/expected/blkid/low-probe-zfs                  |  1 +
+ tests/expected/blkid/low-probe-zonefs               |  1 +
+ 110 files changed, 144 insertions(+), 8 deletions(-)
+
+diff --git a/libblkid/src/superblocks/apfs.c b/libblkid/src/superblocks/apfs.c
+index 3332ef228..048423a8b 100644
+--- a/libblkid/src/superblocks/apfs.c
++++ b/libblkid/src/superblocks/apfs.c
+@@ -65,6 +65,7 @@ static int probe_apfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 	if (blkid_probe_set_uuid(pr, sb->uuid) < 0)
+ 		return BLKID_PROBE_NONE;
+ 
++	blkid_probe_set_fsblocksize(pr, le32_to_cpu(sb->block_size));
+ 	blkid_probe_set_block_size(pr, le32_to_cpu(sb->block_size));
+ 
+ 	return BLKID_PROBE_OK;
+diff --git a/libblkid/src/superblocks/befs.c b/libblkid/src/superblocks/befs.c
+index 211feae9f..1ba0e10ae 100644
+--- a/libblkid/src/superblocks/befs.c
++++ b/libblkid/src/superblocks/befs.c
+@@ -521,6 +521,7 @@ static int probe_befs(blkid_probe pr, const struct blkid_idmag *mag)
+ 					sizeof(volume_id), "%016" PRIx64,
+ 					FS64_TO_CPU(volume_id, fs_le));
+ 
++	blkid_probe_set_fsblocksize(pr, block_size);
+ 	blkid_probe_set_block_size(pr, block_size);
+ 
+ 	return BLKID_PROBE_OK;
+diff --git a/libblkid/src/superblocks/btrfs.c b/libblkid/src/superblocks/btrfs.c
+index 9708f2e28..06a27529a 100644
+--- a/libblkid/src/superblocks/btrfs.c
++++ b/libblkid/src/superblocks/btrfs.c
+@@ -74,6 +74,7 @@ static int probe_btrfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 
+ 	blkid_probe_set_uuid(pr, bfs->fsid);
+ 	blkid_probe_set_uuid_as(pr, bfs->dev_item.uuid, "UUID_SUB");
++	blkid_probe_set_fsblocksize(pr, le32_to_cpu(bfs->sectorsize));
+ 	blkid_probe_set_block_size(pr, le32_to_cpu(bfs->sectorsize));
+ 
+ 	uint32_t sectorsize_log = 31 -
+diff --git a/libblkid/src/superblocks/erofs.c b/libblkid/src/superblocks/erofs.c
+index 0e7b4223d..30914a89c 100644
+--- a/libblkid/src/superblocks/erofs.c
++++ b/libblkid/src/superblocks/erofs.c
+@@ -51,8 +51,11 @@ static int probe_erofs(blkid_probe pr, const struct blkid_idmag *mag)
+ 
+ 	blkid_probe_set_uuid(pr, sb->uuid);
+ 
+-	if (sb->blkszbits < 32)
++	if (sb->blkszbits < 32){
++		blkid_probe_set_fsblocksize(pr, 1U << sb->blkszbits);
+ 		blkid_probe_set_block_size(pr, 1U << sb->blkszbits);
++	}
++
+ 	return BLKID_PROBE_OK;
+ }
+ 
+diff --git a/libblkid/src/superblocks/exfat.c b/libblkid/src/superblocks/exfat.c
+index f586ec786..fd2b85655 100644
+--- a/libblkid/src/superblocks/exfat.c
++++ b/libblkid/src/superblocks/exfat.c
+@@ -139,6 +139,7 @@ static int probe_exfat(blkid_probe pr, const struct blkid_idmag *mag)
+ 	blkid_probe_sprintf_version(pr, "%u.%u",
+ 			sb->version.vermaj, sb->version.vermin);
+ 
++	blkid_probe_set_fsblocksize(pr, BLOCK_SIZE(sb));
+ 	blkid_probe_set_block_size(pr, BLOCK_SIZE(sb));
+ 
+ 	return BLKID_PROBE_OK;
+diff --git a/libblkid/src/superblocks/exfs.c b/libblkid/src/superblocks/exfs.c
+index e0eafafc6..87dc0a0c7 100644
+--- a/libblkid/src/superblocks/exfs.c
++++ b/libblkid/src/superblocks/exfs.c
+@@ -173,6 +173,7 @@ static int probe_exfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 
+ 	blkid_probe_set_uuid(pr, xs->sb_uuid);
+ 
++	blkid_probe_set_fsblocksize(pr, be32_to_cpu(xs->sb_blocksize));
+ 	blkid_probe_set_block_size(pr, be32_to_cpu(xs->sb_blocksize));
+ 
+ 	return 0;
+diff --git a/libblkid/src/superblocks/ext.c b/libblkid/src/superblocks/ext.c
+index 0b9023734..cbbe8eb96 100644
+--- a/libblkid/src/superblocks/ext.c
++++ b/libblkid/src/superblocks/ext.c
+@@ -189,8 +189,10 @@ static void ext_get_info(blkid_probe pr, int ver, struct ext2_super_block *es)
+ 		le32_to_cpu(es->s_rev_level),
+ 		le16_to_cpu(es->s_minor_rev_level));
+ 
+-	if (le32_to_cpu(es->s_log_block_size) < 32)
++	if (le32_to_cpu(es->s_log_block_size) < 32){
++		blkid_probe_set_fsblocksize(pr, 1024U << le32_to_cpu(es->s_log_block_size));
+ 		blkid_probe_set_block_size(pr, 1024U << le32_to_cpu(es->s_log_block_size));
++	}
+ 
+ 	uint64_t fslastblock = le32_to_cpu(es->s_blocks_count) |
+ 		((s_feature_incompat & EXT4_FEATURE_INCOMPAT_64BIT) ?
+diff --git a/libblkid/src/superblocks/f2fs.c b/libblkid/src/superblocks/f2fs.c
+index aed93e25b..f271e8047 100644
+--- a/libblkid/src/superblocks/f2fs.c
++++ b/libblkid/src/superblocks/f2fs.c
+@@ -78,8 +78,10 @@ static int probe_f2fs(blkid_probe pr, const struct blkid_idmag *mag)
+ 
+ 	blkid_probe_set_uuid(pr, sb->uuid);
+ 	blkid_probe_sprintf_version(pr, "%u.%u", vermaj, vermin);
+-	if (le32_to_cpu(sb->log_blocksize) < 32)
++	if (le32_to_cpu(sb->log_blocksize) < 32){
++		blkid_probe_set_fsblocksize(pr, 1U << le32_to_cpu(sb->log_blocksize));
+ 		blkid_probe_set_block_size(pr, 1U << le32_to_cpu(sb->log_blocksize));
++	}
+ 	return 0;
+ }
+ 
+diff --git a/libblkid/src/superblocks/gfs.c b/libblkid/src/superblocks/gfs.c
+index 37a74b157..445c0dafa 100644
+--- a/libblkid/src/superblocks/gfs.c
++++ b/libblkid/src/superblocks/gfs.c
+@@ -106,6 +106,7 @@ static int probe_gfs2(blkid_probe pr, const struct blkid_idmag *mag)
+ 				sizeof(sbd->sb_locktable));
+ 		blkid_probe_set_uuid(pr, sbd->sb_uuid);
+ 		blkid_probe_set_version(pr, "1");
++		blkid_probe_set_fsblocksize(pr, be32_to_cpu(sbd->sb_bsize));
+ 		blkid_probe_set_block_size(pr, be32_to_cpu(sbd->sb_bsize));
+ 		return 0;
+ 	}
+diff --git a/libblkid/src/superblocks/hfs.c b/libblkid/src/superblocks/hfs.c
+index ebf90e49e..9674b1481 100644
+--- a/libblkid/src/superblocks/hfs.c
++++ b/libblkid/src/superblocks/hfs.c
+@@ -241,6 +241,7 @@ static int probe_hfsplus(blkid_probe pr, const struct blkid_idmag *mag)
+ 	if (blocksize < HFSPLUS_SECTOR_SIZE)
+ 		return 1;
+ 
++	blkid_probe_set_fsblocksize(pr, blocksize);
+ 	blkid_probe_set_block_size(pr, blocksize);
+ 
+ 	memcpy(extents, hfsplus->cat_file.extents, sizeof(extents));
+diff --git a/libblkid/src/superblocks/hpfs.c b/libblkid/src/superblocks/hpfs.c
+index dcf4520b6..09bf975ea 100644
+--- a/libblkid/src/superblocks/hpfs.c
++++ b/libblkid/src/superblocks/hpfs.c
+@@ -99,6 +99,7 @@ static int probe_hpfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 				hbb->vol_serno[1], hbb->vol_serno[0]);
+ 	}
+ 	blkid_probe_sprintf_version(pr, "%u", version);
++	blkid_probe_set_fsblocksize(pr, 512);
+ 	blkid_probe_set_block_size(pr, 512);
+ 
+ 	return 0;
+diff --git a/libblkid/src/superblocks/iso9660.c b/libblkid/src/superblocks/iso9660.c
+index 289a325c8..503126c00 100644
+--- a/libblkid/src/superblocks/iso9660.c
++++ b/libblkid/src/superblocks/iso9660.c
+@@ -90,6 +90,7 @@ static int probe_iso9660_hsfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 	if (!iso)
+ 		return errno ? -errno : 1;
+ 
++	blkid_probe_set_fsblocksize(pr, ISO_SECTOR_SIZE);
+ 	blkid_probe_set_block_size(pr, ISO_SECTOR_SIZE);
+ 	blkid_probe_set_version(pr, "High Sierra");
+ 	blkid_probe_set_label(pr, iso->volume_id, sizeof(iso->volume_id));
+@@ -249,6 +250,7 @@ static int probe_iso9660(blkid_probe pr, const struct blkid_idmag *mag)
+ 	if (!pvd)
+ 		return errno ? -errno : 1;
+ 
++	blkid_probe_set_fsblocksize(pr, ISO_SECTOR_SIZE);
+ 	blkid_probe_set_block_size(pr, ISO_SECTOR_SIZE);
+ 
+ 	if (joliet && (len = merge_utf16be_ascii(buf, joliet->system_id, pvd->system_id, sizeof(pvd->system_id))) != 0)
+diff --git a/libblkid/src/superblocks/jfs.c b/libblkid/src/superblocks/jfs.c
+index 3de8c2e3d..e22467246 100644
+--- a/libblkid/src/superblocks/jfs.c
++++ b/libblkid/src/superblocks/jfs.c
+@@ -52,6 +52,7 @@ static int probe_jfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 	if (*((char *) js->js_label) != '\0')
+ 		blkid_probe_set_label(pr, js->js_label, sizeof(js->js_label));
+ 	blkid_probe_set_uuid(pr, js->js_uuid);
++	blkid_probe_set_fsblocksize(pr, le32_to_cpu(js->js_bsize));
+ 	blkid_probe_set_block_size(pr, le32_to_cpu(js->js_bsize));
+ 	return 0;
+ }
+diff --git a/libblkid/src/superblocks/minix.c b/libblkid/src/superblocks/minix.c
+index b521efb2b..6011842f7 100644
+--- a/libblkid/src/superblocks/minix.c
++++ b/libblkid/src/superblocks/minix.c
+@@ -148,6 +148,7 @@ static int probe_minix(blkid_probe pr,
+ 		return 1;
+ 
+ 	blkid_probe_sprintf_version(pr, "%d", version);
++	blkid_probe_set_fsblocksize(pr, block_size);
+ 	blkid_probe_set_block_size(pr, block_size);
+ 	return 0;
+ }
+diff --git a/libblkid/src/superblocks/nilfs.c b/libblkid/src/superblocks/nilfs.c
+index 423bd1ac4..ca7574a52 100644
+--- a/libblkid/src/superblocks/nilfs.c
++++ b/libblkid/src/superblocks/nilfs.c
+@@ -157,8 +157,10 @@ static int probe_nilfs2(blkid_probe pr,
+ 				(unsigned char *) &sb->s_magic))
+ 		return 1;
+ 
+-	if (le32_to_cpu(sb->s_log_block_size) < 32)
++	if (le32_to_cpu(sb->s_log_block_size) < 32){
++		blkid_probe_set_fsblocksize(pr, 1024U << le32_to_cpu(sb->s_log_block_size));
+ 		blkid_probe_set_block_size(pr, 1024U << le32_to_cpu(sb->s_log_block_size));
++	}
+ 
+ 	return 0;
+ }
+diff --git a/libblkid/src/superblocks/ntfs.c b/libblkid/src/superblocks/ntfs.c
+index be2e3d895..9f1927cf7 100644
+--- a/libblkid/src/superblocks/ntfs.c
++++ b/libblkid/src/superblocks/ntfs.c
+@@ -208,6 +208,8 @@ static int __probe_ntfs(blkid_probe pr, const struct blkid_idmag *mag, int save_
+ 		attr_off += attr_len;
+ 	}
+ 
++
++	blkid_probe_set_fsblocksize(pr, sector_size * sectors_per_cluster);
+ 	blkid_probe_set_block_size(pr, sector_size);
+ 
+ 	blkid_probe_sprintf_uuid(pr,
+diff --git a/libblkid/src/superblocks/ocfs.c b/libblkid/src/superblocks/ocfs.c
+index 463ed7bcf..28df6ddfa 100644
+--- a/libblkid/src/superblocks/ocfs.c
++++ b/libblkid/src/superblocks/ocfs.c
+@@ -153,8 +153,10 @@ static int probe_ocfs2(blkid_probe pr, const struct blkid_idmag *mag)
+ 		le16_to_cpu(osb->s_major_rev_level),
+ 		le16_to_cpu(osb->s_minor_rev_level));
+ 
+-	if (le32_to_cpu(osb->s_blocksize_bits) < 32)
++	if (le32_to_cpu(osb->s_blocksize_bits) < 32){
++		blkid_probe_set_fsblocksize(pr, 1U << le32_to_cpu(osb->s_blocksize_bits));
+ 		blkid_probe_set_block_size(pr, 1U << le32_to_cpu(osb->s_blocksize_bits));
++	}
+ 
+ 	return 0;
+ }
+diff --git a/libblkid/src/superblocks/reiserfs.c b/libblkid/src/superblocks/reiserfs.c
+index 6c5e5b0d7..23d10e2e2 100644
+--- a/libblkid/src/superblocks/reiserfs.c
++++ b/libblkid/src/superblocks/reiserfs.c
+@@ -74,6 +74,7 @@ static int probe_reiser(blkid_probe pr, const struct blkid_idmag *mag)
+ 	else
+ 		blkid_probe_set_version(pr, "3.5");
+ 
++	blkid_probe_set_fsblocksize(pr, blocksize);
+ 	blkid_probe_set_block_size(pr, blocksize);
+ 
+ 	return 0;
+@@ -95,6 +96,7 @@ static int probe_reiser4(blkid_probe pr, const struct blkid_idmag *mag)
+ 	blkid_probe_set_uuid(pr, rs4->rs4_uuid);
+ 	blkid_probe_set_version(pr, "4");
+ 
++	blkid_probe_set_fsblocksize(pr, blocksize);
+ 	blkid_probe_set_block_size(pr, blocksize);
+ 
+ 	return 0;
+diff --git a/libblkid/src/superblocks/romfs.c b/libblkid/src/superblocks/romfs.c
+index 1c2ac4315..8db88775b 100644
+--- a/libblkid/src/superblocks/romfs.c
++++ b/libblkid/src/superblocks/romfs.c
+@@ -35,6 +35,7 @@ static int probe_romfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 		blkid_probe_set_label(pr, ros->ros_volume,
+ 				sizeof(ros->ros_volume));
+ 
++	blkid_probe_set_fsblocksize(pr, 1024);
+ 	blkid_probe_set_block_size(pr, 1024);
+ 
+ 	return 0;
+diff --git a/libblkid/src/superblocks/squashfs.c b/libblkid/src/superblocks/squashfs.c
+index 4db842493..d85ff8f1a 100644
+--- a/libblkid/src/superblocks/squashfs.c
++++ b/libblkid/src/superblocks/squashfs.c
+@@ -71,6 +71,7 @@ static int probe_squashfs3(blkid_probe pr, const struct blkid_idmag *mag)
+ 
+ 	blkid_probe_sprintf_version(pr, "%u.%u", vermaj, vermin);
+ 
++	blkid_probe_set_fsblocksize(pr, 1024);
+ 	blkid_probe_set_block_size(pr, 1024);
+ 
+ 	return 0;
+diff --git a/libblkid/src/superblocks/superblocks.c b/libblkid/src/superblocks/superblocks.c
+index a1f42c611..9cfa991fc 100644
+--- a/libblkid/src/superblocks/superblocks.c
++++ b/libblkid/src/superblocks/superblocks.c
+@@ -70,6 +70,8 @@
+  *
+  * @FSLASTBLOCK: last fsblock/total number of fsblocks
+  *
++ * @FSBLOCKSIZE: file system block size
++ *
+  * @SYSTEM_ID: ISO9660 system identifier
+  *
+  * @PUBLISHER_ID: ISO9660 publisher identifier
+@@ -613,6 +615,17 @@ int blkid_probe_set_fslastblock(blkid_probe pr, uint64_t lastblock)
+ 			lastblock);
+ }
+ 
++int blkid_probe_set_fsblocksize(blkid_probe pr, uint32_t block_size)
++{
++	struct blkid_chain *chn = blkid_probe_get_chain(pr);
++
++	if (!(chn->flags & BLKID_SUBLKS_FSINFO))
++		return 0;
++
++	return blkid_probe_sprintf_value(pr, "FSBLOCKSIZE", "%" PRIu32,
++			block_size);
++}
++
+ int blkid_probe_set_id_label(blkid_probe pr, const char *name,
+ 			     const unsigned char *data, size_t len)
+ {
+diff --git a/libblkid/src/superblocks/superblocks.h b/libblkid/src/superblocks/superblocks.h
+index 251e2e386..8a1b85dda 100644
+--- a/libblkid/src/superblocks/superblocks.h
++++ b/libblkid/src/superblocks/superblocks.h
+@@ -113,6 +113,7 @@ extern int blkid_probe_set_utf8_id_label(blkid_probe pr, const char *name,
+ int blkid_probe_set_block_size(blkid_probe pr, unsigned block_size);
+ int blkid_probe_set_fssize(blkid_probe pr, uint64_t size);
+ int blkid_probe_set_fslastblock(blkid_probe pr, uint64_t lastblock);
++int blkid_probe_set_fsblocksize(blkid_probe pr, uint32_t block_size);
+ 
+ extern int blkid_probe_is_bitlocker(blkid_probe pr);
+ extern int blkid_probe_is_ntfs(blkid_probe pr);
+diff --git a/libblkid/src/superblocks/udf.c b/libblkid/src/superblocks/udf.c
+index 9ed089ee4..36adf60f1 100644
+--- a/libblkid/src/superblocks/udf.c
++++ b/libblkid/src/superblocks/udf.c
+@@ -569,6 +569,7 @@ real_blksz:
+ 		 * E.g. number 0x0150 is revision 1.50, number 0x0201 is revision 2.01. */
+ 		blkid_probe_sprintf_version(pr, "%x.%02x", (unsigned int)(udf_rev >> 8), (unsigned int)(udf_rev & 0xFF));
+ 
++	blkid_probe_set_fsblocksize(pr, bs);
+ 	blkid_probe_set_block_size(pr, bs);
+ 
+ 	return 0;
+diff --git a/libblkid/src/superblocks/ufs.c b/libblkid/src/superblocks/ufs.c
+index 7a8396c1c..5da87b18f 100644
+--- a/libblkid/src/superblocks/ufs.c
++++ b/libblkid/src/superblocks/ufs.c
+@@ -233,10 +233,14 @@ found:
+ 			(unsigned char *) &ufs->fs_magic))
+ 		return 1;
+ 
++	uint32_t bsize = 0;
+ 	if (!is_be)
+-		blkid_probe_set_block_size(pr, le32_to_cpu(ufs->fs_fsize));
++		bsize = le32_to_cpu(ufs->fs_fsize);
+ 	else
+-		blkid_probe_set_block_size(pr, be32_to_cpu(ufs->fs_fsize));
++		bsize = be32_to_cpu(ufs->fs_fsize);
++
++	blkid_probe_set_fsblocksize(pr, bsize);
++	blkid_probe_set_block_size(pr, bsize);
+ 
+ 	return 0;
+ }
+diff --git a/libblkid/src/superblocks/vfat.c b/libblkid/src/superblocks/vfat.c
+index 71813485a..6cd58cc71 100644
+--- a/libblkid/src/superblocks/vfat.c
++++ b/libblkid/src/superblocks/vfat.c
+@@ -433,6 +433,7 @@ static int probe_vfat(blkid_probe pr, const struct blkid_idmag *mag)
+ 	if (version)
+ 		blkid_probe_set_version(pr, version);
+ 
++	blkid_probe_set_fsblocksize(pr, vs->vs_cluster_size * sector_size);
+ 	blkid_probe_set_block_size(pr, sector_size);
+ 
+ 	return 0;
+diff --git a/libblkid/src/superblocks/vxfs.c b/libblkid/src/superblocks/vxfs.c
+index d9d26adcf..0f3c07b0c 100644
+--- a/libblkid/src/superblocks/vxfs.c
++++ b/libblkid/src/superblocks/vxfs.c
+@@ -33,9 +33,11 @@ static int probe_vxfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 
+ 	if (le32_to_cpu(vxs->vs_magic) == 0xa501fcf5) {
+ 		blkid_probe_sprintf_version(pr, "%u", (unsigned int)le32_to_cpu(vxs->vs_version));
++		blkid_probe_set_fsblocksize(pr, le32_to_cpu(vxs->vs_bsize));
+ 		blkid_probe_set_block_size(pr, le32_to_cpu(vxs->vs_bsize));
+ 	} else if (be32_to_cpu(vxs->vs_magic) == 0xa501fcf5) {
+ 		blkid_probe_sprintf_version(pr, "%u", (unsigned int)be32_to_cpu(vxs->vs_version));
++		blkid_probe_set_fsblocksize(pr, be32_to_cpu(vxs->vs_bsize));
+ 		blkid_probe_set_block_size(pr, be32_to_cpu(vxs->vs_bsize));
+ 	}
+ 	return 0;
+diff --git a/libblkid/src/superblocks/xfs.c b/libblkid/src/superblocks/xfs.c
+index 1f2e92cac..2cc6f6179 100644
+--- a/libblkid/src/superblocks/xfs.c
++++ b/libblkid/src/superblocks/xfs.c
+@@ -184,6 +184,7 @@ static int probe_xfs(blkid_probe pr, const struct blkid_idmag *mag)
+ 	blkid_probe_set_uuid(pr, xs->sb_uuid);
+ 	blkid_probe_set_fssize(pr, xfs_fssize(xs));
+ 	blkid_probe_set_fslastblock(pr, be64_to_cpu(xs->sb_dblocks));
++	blkid_probe_set_fsblocksize(pr, be32_to_cpu(xs->sb_blocksize));
+ 	blkid_probe_set_block_size(pr, be16_to_cpu(xs->sb_sectsize));
+ 	return 0;
+ }
+diff --git a/libblkid/src/superblocks/zfs.c b/libblkid/src/superblocks/zfs.c
+index 774a199e1..e7ca78c0d 100644
+--- a/libblkid/src/superblocks/zfs.c
++++ b/libblkid/src/superblocks/zfs.c
+@@ -138,8 +138,10 @@ static void zfs_process_value(blkid_probe pr, char *name, size_t namelen,
+ 		if (nvu_type != DATA_TYPE_UINT64)
+ 			return;
+ 
+-		if (nvu_value < 32)
++		if (nvu_value < 32){
++			blkid_probe_set_fsblocksize(pr, 1U << nvu_value);
+ 			blkid_probe_set_block_size(pr, 1U << nvu_value);
++		}
+ 	}
+ }
+ 
+diff --git a/libblkid/src/superblocks/zonefs.c b/libblkid/src/superblocks/zonefs.c
+index 4c826ec76..2cb7097d4 100644
+--- a/libblkid/src/superblocks/zonefs.c
++++ b/libblkid/src/superblocks/zonefs.c
+@@ -64,6 +64,7 @@ static int probe_zonefs(blkid_probe pr,
+ 				      sizeof(sb->s_label));
+ 
+ 	blkid_probe_set_uuid(pr, sb->s_uuid);
++	blkid_probe_set_fsblocksize(pr, ZONEFS_BLOCK_SIZE);
+ 	blkid_probe_set_block_size(pr, ZONEFS_BLOCK_SIZE);
+ 
+ 	return 0;
+diff --git a/tests/expected/blkid/low-probe-befs b/tests/expected/blkid/low-probe-befs
+index 5717049d2..738114769 100644
+--- a/tests/expected/blkid/low-probe-befs
++++ b/tests/expected/blkid/low-probe-befs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_LABEL=befs_test
+ ID_FS_LABEL_ENC=befs_test
+ ID_FS_TYPE=befs
+diff --git a/tests/expected/blkid/low-probe-btrfs b/tests/expected/blkid/low-probe-btrfs
+index 48649389a..a626bc1f6 100644
+--- a/tests/expected/blkid/low-probe-btrfs
++++ b/tests/expected/blkid/low-probe-btrfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_FSLASTBLOCK=29440
+ ID_FS_TYPE=btrfs
+ ID_FS_USAGE=filesystem
+diff --git a/tests/expected/blkid/low-probe-erofs b/tests/expected/blkid/low-probe-erofs
+index 1d1600fa0..b815c7e5d 100644
+--- a/tests/expected/blkid/low-probe-erofs
++++ b/tests/expected/blkid/low-probe-erofs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_TYPE=erofs
+ ID_FS_USAGE=filesystem
+ ID_FS_UUID=2375febf-f260-479d-ade7-952494047cb4
+diff --git a/tests/expected/blkid/low-probe-exfat b/tests/expected/blkid/low-probe-exfat
+index 59cb35225..24d2cac5d 100644
+--- a/tests/expected/blkid/low-probe-exfat
++++ b/tests/expected/blkid/low-probe-exfat
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=Новый_том
+ ID_FS_LABEL_ENC=Новый\x20том
+ ID_FS_TYPE=exfat
+diff --git a/tests/expected/blkid/low-probe-ext2 b/tests/expected/blkid/low-probe-ext2
+index e236c6e8a..fa284a949 100644
+--- a/tests/expected/blkid/low-probe-ext2
++++ b/tests/expected/blkid/low-probe-ext2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_FSLASTBLOCK=100
+ ID_FS_LABEL=test-ext2
+ ID_FS_LABEL_ENC=test-ext2
+diff --git a/tests/expected/blkid/low-probe-ext3 b/tests/expected/blkid/low-probe-ext3
+index 164fefb7b..422d4fef3 100644
+--- a/tests/expected/blkid/low-probe-ext3
++++ b/tests/expected/blkid/low-probe-ext3
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_FSLASTBLOCK=2048
+ ID_FS_LABEL=test-ext3
+ ID_FS_LABEL_ENC=test-ext3
+diff --git a/tests/expected/blkid/low-probe-f2fs b/tests/expected/blkid/low-probe-f2fs
+index 272905125..1ee751d56 100644
+--- a/tests/expected/blkid/low-probe-f2fs
++++ b/tests/expected/blkid/low-probe-f2fs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=test-f2fs
+ ID_FS_LABEL_ENC=test-f2fs
+ ID_FS_TYPE=f2fs
+diff --git a/tests/expected/blkid/low-probe-fat b/tests/expected/blkid/low-probe-fat
+index a463cc987..bb686b24e 100644
+--- a/tests/expected/blkid/low-probe-fat
++++ b/tests/expected/blkid/low-probe-fat
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=TEST-FAT
+ ID_FS_LABEL_ENC=TEST-FAT
+ ID_FS_LABEL_FATBOOT=TEST-FAT
+diff --git a/tests/expected/blkid/low-probe-fat16_noheads b/tests/expected/blkid/low-probe-fat16_noheads
+index ff9ef2e69..5b8fc916e 100644
+--- a/tests/expected/blkid/low-probe-fat16_noheads
++++ b/tests/expected/blkid/low-probe-fat16_noheads
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=VTech_1070
+ ID_FS_LABEL_ENC=VTech\x201070
+ ID_FS_SEC_TYPE=msdos
+diff --git a/tests/expected/blkid/low-probe-fat32_cp850_O_tilde b/tests/expected/blkid/low-probe-fat32_cp850_O_tilde
+index ca49f200d..16c519884 100644
+--- a/tests/expected/blkid/low-probe-fat32_cp850_O_tilde
++++ b/tests/expected/blkid/low-probe-fat32_cp850_O_tilde
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=___
+ ID_FS_LABEL_ENC=\xe5\xe5\xe5
+ ID_FS_LABEL_FATBOOT=___
+diff --git a/tests/expected/blkid/low-probe-fat32_label_64MB b/tests/expected/blkid/low-probe-fat32_label_64MB
+index 4a99f8ff6..41b656a84 100644
+--- a/tests/expected/blkid/low-probe-fat32_label_64MB
++++ b/tests/expected/blkid/low-probe-fat32_label_64MB
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=BINGO
+ ID_FS_LABEL_ENC=BINGO
+ ID_FS_TYPE=vfat
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1 b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1
+index 5d1771de3..14aee2eb9 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=label1
+ ID_FS_LABEL_ENC=label1
+ ID_FS_LABEL_FATBOOT=label1
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_NO_NAME b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_NO_NAME
+index c13af9021..1891157ed 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_NO_NAME
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_NO_NAME
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=NO_NAME
+ ID_FS_LABEL_ENC=NO\x20NAME
+ ID_FS_TYPE=vfat
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_empty b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_empty
+index 73c553e54..206782fa9 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_empty
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_empty
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_TYPE=vfat
+ ID_FS_USAGE=filesystem
+ ID_FS_UUID=92B4-BA66
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_label2 b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_label2
+index 4b8146208..cf635a218 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_label2
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_dosfslabel_label2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=label2
+ ID_FS_LABEL_ENC=label2
+ ID_FS_LABEL_FATBOOT=label2
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_mlabel_NO_NAME b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_mlabel_NO_NAME
+index c13af9021..1891157ed 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_mlabel_NO_NAME
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_mlabel_NO_NAME
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=NO_NAME
+ ID_FS_LABEL_ENC=NO\x20NAME
+ ID_FS_TYPE=vfat
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_mlabel_erase b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_mlabel_erase
+index 73c553e54..206782fa9 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_mlabel_erase
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_mlabel_erase
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_TYPE=vfat
+ ID_FS_USAGE=filesystem
+ ID_FS_UUID=92B4-BA66
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_xp_erase b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_xp_erase
+index 075278de4..6088d17be 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_xp_erase
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_xp_erase
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL_FATBOOT=label1
+ ID_FS_LABEL_FATBOOT_ENC=label1
+ ID_FS_TYPE=vfat
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_xp_label2 b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_xp_label2
+index fe4884d28..802a66f14 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_xp_label2
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_label1_xp_label2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=LABEL2
+ ID_FS_LABEL_ENC=LABEL2
+ ID_FS_LABEL_FATBOOT=label1
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_none b/tests/expected/blkid/low-probe-fat32_mkdosfs_none
+index 547517616..66a7923ed 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_none
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_none
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_TYPE=vfat
+ ID_FS_USAGE=filesystem
+ ID_FS_UUID=E6B8-AF8C
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_NO_NAME b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_NO_NAME
+index 547517616..66a7923ed 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_NO_NAME
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_NO_NAME
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_TYPE=vfat
+ ID_FS_USAGE=filesystem
+ ID_FS_UUID=E6B8-AF8C
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_label1 b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_label1
+index dfacd9b6a..e45da35d8 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_label1
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_label1
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL_FATBOOT=label1
+ ID_FS_LABEL_FATBOOT_ENC=label1
+ ID_FS_TYPE=vfat
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_label1_xp_label2 b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_label1_xp_label2
+index 142259c87..ad2bf8fda 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_label1_xp_label2
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_dosfslabel_label1_xp_label2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=LABEL2
+ ID_FS_LABEL_ENC=LABEL2
+ ID_FS_LABEL_FATBOOT=label1
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_xp_label1 b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_xp_label1
+index d1360ada0..a5e490064 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_xp_label1
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_xp_label1
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=LABEL1
+ ID_FS_LABEL_ENC=LABEL1
+ ID_FS_TYPE=vfat
+diff --git a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_xp_label1_dosfslabel_label2 b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_xp_label1_dosfslabel_label2
+index c078359c6..e3473b9cc 100644
+--- a/tests/expected/blkid/low-probe-fat32_mkdosfs_none_xp_label1_dosfslabel_label2
++++ b/tests/expected/blkid/low-probe-fat32_mkdosfs_none_xp_label1_dosfslabel_label2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=label2
+ ID_FS_LABEL_ENC=label2
+ ID_FS_LABEL_FATBOOT=label2
+diff --git a/tests/expected/blkid/low-probe-fat32_xp_label1 b/tests/expected/blkid/low-probe-fat32_xp_label1
+index 8a27d7e1c..9a82d11c2 100644
+--- a/tests/expected/blkid/low-probe-fat32_xp_label1
++++ b/tests/expected/blkid/low-probe-fat32_xp_label1
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=LABEL1
+ ID_FS_LABEL_ENC=LABEL1
+ ID_FS_TYPE=vfat
+diff --git a/tests/expected/blkid/low-probe-fat32_xp_none b/tests/expected/blkid/low-probe-fat32_xp_none
+index f8271c2b7..b4d6f4fdf 100644
+--- a/tests/expected/blkid/low-probe-fat32_xp_none
++++ b/tests/expected/blkid/low-probe-fat32_xp_none
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_TYPE=vfat
+ ID_FS_USAGE=filesystem
+ ID_FS_UUID=54B6-DC94
+diff --git a/tests/expected/blkid/low-probe-fat32_xp_none_dosfslabel_label1 b/tests/expected/blkid/low-probe-fat32_xp_none_dosfslabel_label1
+index fdc5eb6f6..560b394a0 100644
+--- a/tests/expected/blkid/low-probe-fat32_xp_none_dosfslabel_label1
++++ b/tests/expected/blkid/low-probe-fat32_xp_none_dosfslabel_label1
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL_FATBOOT=label1
+ ID_FS_LABEL_FATBOOT_ENC=label1
+ ID_FS_TYPE=vfat
+diff --git a/tests/expected/blkid/low-probe-fat32_xp_none_mlabel_label1 b/tests/expected/blkid/low-probe-fat32_xp_none_mlabel_label1
+index 74f271519..1b0a87806 100644
+--- a/tests/expected/blkid/low-probe-fat32_xp_none_mlabel_label1
++++ b/tests/expected/blkid/low-probe-fat32_xp_none_mlabel_label1
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=LABEL1
+ ID_FS_LABEL_ENC=LABEL1
+ ID_FS_LABEL_FATBOOT=LABEL1
+diff --git a/tests/expected/blkid/low-probe-gfs2 b/tests/expected/blkid/low-probe-gfs2
+index f04529bc0..8b2840f41 100644
+--- a/tests/expected/blkid/low-probe-gfs2
++++ b/tests/expected/blkid/low-probe-gfs2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=mycluster:mygfs2
+ ID_FS_LABEL_ENC=mycluster:mygfs2
+ ID_FS_TYPE=gfs2
+diff --git a/tests/expected/blkid/low-probe-hfsplus b/tests/expected/blkid/low-probe-hfsplus
+index cc351a042..07e60ea25 100644
+--- a/tests/expected/blkid/low-probe-hfsplus
++++ b/tests/expected/blkid/low-probe-hfsplus
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=123456789ABCDE
+ ID_FS_LABEL_ENC=123456789ABCDE
+ ID_FS_TYPE=hfsplus
+diff --git a/tests/expected/blkid/low-probe-hpfs b/tests/expected/blkid/low-probe-hpfs
+index 7e4a12b97..a6198c640 100644
+--- a/tests/expected/blkid/low-probe-hpfs
++++ b/tests/expected/blkid/low-probe-hpfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=P01_S16A
+ ID_FS_LABEL_ENC=P01\x20S16A
+ ID_FS_TYPE=hpfs
+diff --git a/tests/expected/blkid/low-probe-iso b/tests/expected/blkid/low-probe-iso
+index 5c8a3d0fd..3e9be8f98 100644
+--- a/tests/expected/blkid/low-probe-iso
++++ b/tests/expected/blkid/low-probe-iso
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=GENISOIMAGE\x20ISO\x209660\x2fHFS\x20FILESYSTEM\x20CREATOR\x20\x28C\x29\x201993\x20E.YOUNGDALE\x20\x28C\x29\x201997-2006\x20J.PEARSON\x2fJ.SCHILLING\x20\x28C\x29\x202006-2007\x20CDRKIT\x20TEAM
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=IsoVolumeName
+ ID_FS_LABEL_ENC=IsoVolumeName
+ ID_FS_SYSTEM_ID=LINUX
+diff --git a/tests/expected/blkid/low-probe-iso-different-iso-joliet-label b/tests/expected/blkid/low-probe-iso-different-iso-joliet-label
+index f618d024d..34663a358 100644
+--- a/tests/expected/blkid/low-probe-iso-different-iso-joliet-label
++++ b/tests/expected/blkid/low-probe-iso-different-iso-joliet-label
+@@ -1,6 +1,7 @@
+ ID_FS_APPLICATION_ID=Joliet\x20Application
+ ID_FS_BLOCK_SIZE=2048
+ ID_FS_DATA_PREPARER_ID=Joliet\x20Preparer
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=Joliet_Label
+ ID_FS_LABEL_ENC=Joliet\x20Label
+ ID_FS_PUBLISHER_ID=Joliet\x20Publisher
+diff --git a/tests/expected/blkid/low-probe-iso-joliet b/tests/expected/blkid/low-probe-iso-joliet
+index e97dbde3c..c92484a75 100644
+--- a/tests/expected/blkid/low-probe-iso-joliet
++++ b/tests/expected/blkid/low-probe-iso-joliet
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=GENISOIMAGE\x20ISO\x209660\x2fHFS\x20FILESYSTEM\x20CREATOR\x20\x28C\x29\x201993\x20E.YOUNGDALE\x20\x28C\x29\x201997-2006\x20J.PEARSON\x2fJ.SCHILLING\x20\x28C\x29\x202006-2007\x20CDRKIT\x20TEAM
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=ThisWonderfulLabelIsVeryVeryLong
+ ID_FS_LABEL_ENC=ThisWonderfulLabelIsVeryVeryLong
+ ID_FS_SYSTEM_ID=LINUX
+diff --git a/tests/expected/blkid/low-probe-iso-multi-genisoimage-0 b/tests/expected/blkid/low-probe-iso-multi-genisoimage-0
+index d8217f529..eed747e48 100644
+--- a/tests/expected/blkid/low-probe-iso-multi-genisoimage-0
++++ b/tests/expected/blkid/low-probe-iso-multi-genisoimage-0
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=GENISOIMAGE\x20ISO\x209660\x2fHFS\x20FILESYSTEM\x20CREATOR\x20\x28C\x29\x201993\x20E.YOUNGDALE\x20\x28C\x29\x201997-2006\x20J.PEARSON\x2fJ.SCHILLING\x20\x28C\x29\x202006-2007\x20CDRKIT\x20TEAM
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=first_session
+ ID_FS_LABEL_ENC=first\x20session
+ ID_FS_SYSTEM_ID=LINUX
+diff --git a/tests/expected/blkid/low-probe-iso-multi-genisoimage-174 b/tests/expected/blkid/low-probe-iso-multi-genisoimage-174
+index 9c18d0dde..aa71cff78 100644
+--- a/tests/expected/blkid/low-probe-iso-multi-genisoimage-174
++++ b/tests/expected/blkid/low-probe-iso-multi-genisoimage-174
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=GENISOIMAGE\x20ISO\x209660\x2fHFS\x20FILESYSTEM\x20CREATOR\x20\x28C\x29\x201993\x20E.YOUNGDALE\x20\x28C\x29\x201997-2006\x20J.PEARSON\x2fJ.SCHILLING\x20\x28C\x29\x202006-2007\x20CDRKIT\x20TEAM
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=second_session
+ ID_FS_LABEL_ENC=second\x20session
+ ID_FS_SYSTEM_ID=LINUX
+diff --git a/tests/expected/blkid/low-probe-iso-multi-genisoimage-348 b/tests/expected/blkid/low-probe-iso-multi-genisoimage-348
+index 7e3c5ba01..caf2010a5 100644
+--- a/tests/expected/blkid/low-probe-iso-multi-genisoimage-348
++++ b/tests/expected/blkid/low-probe-iso-multi-genisoimage-348
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=GENISOIMAGE\x20ISO\x209660\x2fHFS\x20FILESYSTEM\x20CREATOR\x20\x28C\x29\x201993\x20E.YOUNGDALE\x20\x28C\x29\x201997-2006\x20J.PEARSON\x2fJ.SCHILLING\x20\x28C\x29\x202006-2007\x20CDRKIT\x20TEAM
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=third_session
+ ID_FS_LABEL_ENC=third\x20session
+ ID_FS_SYSTEM_ID=LINUX
+diff --git a/tests/expected/blkid/low-probe-iso-rr-joliet b/tests/expected/blkid/low-probe-iso-rr-joliet
+index 711e04bbc..fdfc69616 100644
+--- a/tests/expected/blkid/low-probe-iso-rr-joliet
++++ b/tests/expected/blkid/low-probe-iso-rr-joliet
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=GENISOIMAGE\x20ISO\x209660\x2fHFS\x20FILESYSTEM\x20CREATOR\x20\x28C\x29\x201993\x20E.YOUNGDALE\x20\x28C\x29\x201997-2006\x20J.PEARSON\x2fJ.SCHILLING\x20\x28C\x29\x202006-2007\x20CDRKIT\x20TEAM
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=ThisIsVolumeName
+ ID_FS_LABEL_ENC=ThisIsVolumeName
+ ID_FS_SYSTEM_ID=LINUX
+diff --git a/tests/expected/blkid/low-probe-iso-unicode-long-label b/tests/expected/blkid/low-probe-iso-unicode-long-label
+index 270ee8489..11403fdb0 100644
+--- a/tests/expected/blkid/low-probe-iso-unicode-long-label
++++ b/tests/expected/blkid/low-probe-iso-unicode-long-label
+@@ -1,6 +1,7 @@
+ ID_FS_APPLICATION_ID=Nero\x20Linux
+ ID_FS_BLOCK_SIZE=2048
+ ID_FS_DATA_PREPARER_ID=Naïve\x20and\x20very\x20looooooooooooooooooooooooooooooooooooooooooooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONG\x20DATA\x20PREPARER
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=Naïve_and_very_lOOOOOOOONG_LABEL
+ ID_FS_LABEL_ENC=Naïve\x20and\x20very\x20lOOOOOOOONG_LABEL
+ ID_FS_PUBLISHER_ID=Naïve\x20and\x20very\x20looooooooooooooooooooooooooooooooooooooooooooooooOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOONG\x20PUBLISHER
+diff --git a/tests/expected/blkid/low-probe-jbd b/tests/expected/blkid/low-probe-jbd
+index f5462a2a3..36c7d4062 100644
+--- a/tests/expected/blkid/low-probe-jbd
++++ b/tests/expected/blkid/low-probe-jbd
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_FSLASTBLOCK=1024
+ ID_FS_LOGUUID=0d7a07df-7b06-4829-bce7-3b9c3ece570c
+ ID_FS_TYPE=jbd
+diff --git a/tests/expected/blkid/low-probe-jfs b/tests/expected/blkid/low-probe-jfs
+index ac7d31bac..ee6e1ead8 100644
+--- a/tests/expected/blkid/low-probe-jfs
++++ b/tests/expected/blkid/low-probe-jfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=test-jfs
+ ID_FS_LABEL_ENC=test-jfs
+ ID_FS_TYPE=jfs
+diff --git a/tests/expected/blkid/low-probe-minix-BE b/tests/expected/blkid/low-probe-minix-BE
+index f73f1b5db..c6da3c195 100644
+--- a/tests/expected/blkid/low-probe-minix-BE
++++ b/tests/expected/blkid/low-probe-minix-BE
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_TYPE=minix
+ ID_FS_USAGE=filesystem
+ ID_FS_VERSION=1
+diff --git a/tests/expected/blkid/low-probe-minix-LE b/tests/expected/blkid/low-probe-minix-LE
+index f73f1b5db..c6da3c195 100644
+--- a/tests/expected/blkid/low-probe-minix-LE
++++ b/tests/expected/blkid/low-probe-minix-LE
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_TYPE=minix
+ ID_FS_USAGE=filesystem
+ ID_FS_VERSION=1
+diff --git a/tests/expected/blkid/low-probe-nilfs2 b/tests/expected/blkid/low-probe-nilfs2
+index ff27e0b23..4bd466552 100644
+--- a/tests/expected/blkid/low-probe-nilfs2
++++ b/tests/expected/blkid/low-probe-nilfs2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=test-nilfs2
+ ID_FS_LABEL_ENC=test-nilfs2
+ ID_FS_TYPE=nilfs2
+diff --git a/tests/expected/blkid/low-probe-ntfs b/tests/expected/blkid/low-probe-ntfs
+index 790157aaa..64722f2a7 100644
+--- a/tests/expected/blkid/low-probe-ntfs
++++ b/tests/expected/blkid/low-probe-ntfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=Новый_том
+ ID_FS_LABEL_ENC=Новый\x20том
+ ID_FS_TYPE=ntfs
+diff --git a/tests/expected/blkid/low-probe-ocfs2 b/tests/expected/blkid/low-probe-ocfs2
+index 9b84dbe67..99189f39f 100644
+--- a/tests/expected/blkid/low-probe-ocfs2
++++ b/tests/expected/blkid/low-probe-ocfs2
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_LABEL=test-ocfs2
+ ID_FS_LABEL_ENC=test-ocfs2
+ ID_FS_TYPE=ocfs2
+diff --git a/tests/expected/blkid/low-probe-reiser3 b/tests/expected/blkid/low-probe-reiser3
+index 1c4b1478d..3ae71201c 100644
+--- a/tests/expected/blkid/low-probe-reiser3
++++ b/tests/expected/blkid/low-probe-reiser3
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=TESTREISER
+ ID_FS_LABEL_ENC=TESTREISER
+ ID_FS_TYPE=reiserfs
+diff --git a/tests/expected/blkid/low-probe-reiser4 b/tests/expected/blkid/low-probe-reiser4
+index 66df064fd..f8896bb57 100644
+--- a/tests/expected/blkid/low-probe-reiser4
++++ b/tests/expected/blkid/low-probe-reiser4
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=TESTR4
+ ID_FS_LABEL_ENC=TESTR4
+ ID_FS_TYPE=reiser4
+diff --git a/tests/expected/blkid/low-probe-romfs b/tests/expected/blkid/low-probe-romfs
+index b56a6b881..2c606ecc1 100644
+--- a/tests/expected/blkid/low-probe-romfs
++++ b/tests/expected/blkid/low-probe-romfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_LABEL=test-romfs
+ ID_FS_LABEL_ENC=test-romfs
+ ID_FS_TYPE=romfs
+diff --git a/tests/expected/blkid/low-probe-small-fat32 b/tests/expected/blkid/low-probe-small-fat32
+index d9c63c710..e6ffb6550 100644
+--- a/tests/expected/blkid/low-probe-small-fat32
++++ b/tests/expected/blkid/low-probe-small-fat32
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=TESTVFAT
+ ID_FS_LABEL_ENC=TESTVFAT
+ ID_FS_LABEL_FATBOOT=TESTVFAT
+diff --git a/tests/expected/blkid/low-probe-udf b/tests/expected/blkid/low-probe-udf
+index b00ae7b8a..d8cd25bbf 100644
+--- a/tests/expected/blkid/low-probe-udf
++++ b/tests/expected/blkid/low-probe-udf
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=genisoimage
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=test-udf
+ ID_FS_LABEL_ENC=test-udf
+ ID_FS_LOGICAL_VOLUME_ID=test-udf
+diff --git a/tests/expected/blkid/low-probe-udf-bdr-2.60-nero b/tests/expected/blkid/low-probe-udf-bdr-2.60-nero
+index 006499223..677c2a353 100644
+--- a/tests/expected/blkid/low-probe-udf-bdr-2.60-nero
++++ b/tests/expected/blkid/low-probe-udf-bdr-2.60-nero
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Nero
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=Label
+ ID_FS_LABEL_ENC=Label
+ ID_FS_LOGICAL_VOLUME_ID=Label
+diff --git a/tests/expected/blkid/low-probe-udf-cd-mkudfiso-20100208 b/tests/expected/blkid/low-probe-udf-cd-mkudfiso-20100208
+index 649e5be94..924d78f7d 100644
+--- a/tests/expected/blkid/low-probe-udf-cd-mkudfiso-20100208
++++ b/tests/expected/blkid/low-probe-udf-cd-mkudfiso-20100208
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=mkudfiso
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=Volume_Label
+ ID_FS_LABEL_ENC=Volume\x20Label
+ ID_FS_LOGICAL_VOLUME_ID=Volume\x20Label
+diff --git a/tests/expected/blkid/low-probe-udf-cd-nero-6 b/tests/expected/blkid/low-probe-udf-cd-nero-6
+index 7474bc4db..bc1b5fe85 100644
+--- a/tests/expected/blkid/low-probe-udf-cd-nero-6
++++ b/tests/expected/blkid/low-probe-udf-cd-nero-6
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Nero
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=UDF_Label
+ ID_FS_LABEL_ENC=UDF\x20Label
+ ID_FS_LOGICAL_VOLUME_ID=UDF\x20Label
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-macosx-2.60-4096 b/tests/expected/blkid/low-probe-udf-hdd-macosx-2.60-4096
+index 152877a13..c8e5ac396 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-macosx-2.60-4096
++++ b/tests/expected/blkid/low-probe-udf-hdd-macosx-2.60-4096
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Mac\x20OS\x20X\x20udf\x20newfs_udf
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=Untitled_UDF_Volume
+ ID_FS_LABEL_ENC=Untitled\x20UDF\x20Volume
+ ID_FS_LOGICAL_VOLUME_ID=Untitled\x20UDF\x20Volume
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.0.0-1 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.0.0-1
+index 930259204..0f073c007 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.0.0-1
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.0.0-1
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=LinuxUDF
+ ID_FS_LABEL_ENC=LinuxUDF
+ ID_FS_LOGICAL_VOLUME_ID=LinuxUDF
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.0.0-2 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.0.0-2
+index a0fdb2ee2..c55e23326 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.0.0-2
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.0.0-2
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=Label
+ ID_FS_LABEL_ENC=Label
+ ID_FS_LOGICAL_VOLUME_ID=Label
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-1 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-1
+index ef36b84e0..37586914c 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-1
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-1
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=Label
+ ID_FS_LABEL_ENC=Label
+ ID_FS_LOGICAL_VOLUME_ID=Label
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-2 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-2
+index 58a8bf612..521e0ff12 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-2
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-2
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=Label
+ ID_FS_LABEL_ENC=Label
+ ID_FS_LOGICAL_VOLUME_ID=Label
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-3 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-3
+index 0e1e7706b..e720867bd 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-3
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-3
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=ÿ
+ ID_FS_LABEL_ENC=ÿ
+ ID_FS_LOGICAL_VOLUME_ID=ÿ
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-4 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-4
+index 00561717d..ecd8c3c9f 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-4
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-4
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=1024
++ID_FS_FSBLOCKSIZE=1024
+ ID_FS_LABEL=Label
+ ID_FS_LABEL_ENC=Label
+ ID_FS_LOGICAL_VOLUME_ID=Label
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-5 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-5
+index 69ee62f97..df2d901f5 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-5
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-5
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=Label
+ ID_FS_LABEL_ENC=Label
+ ID_FS_LOGICAL_VOLUME_ID=Label
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-6 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-6
+index 2d3876b7e..aba8d2e48 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-6
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-6
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ ID_FS_LABEL_ENC=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+ ID_FS_LOGICAL_VOLUME_ID=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-7 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-7
+index e60bf1793..67faf3424 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-7
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-7
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_LABEL=Label4096
+ ID_FS_LABEL_ENC=Label4096
+ ID_FS_LOGICAL_VOLUME_ID=Label4096
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-8 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-8
+index 078578242..11a3bde27 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-8
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-1.3-8
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=LinuxUDF
+ ID_FS_LABEL_ENC=LinuxUDF
+ ID_FS_LOGICAL_VOLUME_ID=LinuxUDF
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-2.2 b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-2.2
+index 77300512a..c61e8b5eb 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-mkudffs-2.2
++++ b/tests/expected/blkid/low-probe-udf-hdd-mkudffs-2.2
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=😀
+ ID_FS_LABEL_ENC=😀
+ ID_FS_LOGICAL_VOLUME_ID=😀
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-udfclient-0.7.5 b/tests/expected/blkid/low-probe-udf-hdd-udfclient-0.7.5
+index 6cb1ffeee..c173bb8d6 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-udfclient-0.7.5
++++ b/tests/expected/blkid/low-probe-udf-hdd-udfclient-0.7.5
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=UDFtoolkit
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=discname
+ ID_FS_LABEL_ENC=discname
+ ID_FS_LOGICAL_VOLUME_ID=discname
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-udfclient-0.7.7 b/tests/expected/blkid/low-probe-udf-hdd-udfclient-0.7.7
+index 7a35e0f0d..4c71a0cce 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-udfclient-0.7.7
++++ b/tests/expected/blkid/low-probe-udf-hdd-udfclient-0.7.7
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=UDFtoolkit
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=discname
+ ID_FS_LABEL_ENC=discname
+ ID_FS_LOGICAL_VOLUME_ID=discname
+diff --git a/tests/expected/blkid/low-probe-udf-hdd-win7 b/tests/expected/blkid/low-probe-udf-hdd-win7
+index ad9616bc7..eafa7f019 100644
+--- a/tests/expected/blkid/low-probe-udf-hdd-win7
++++ b/tests/expected/blkid/low-probe-udf-hdd-win7
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Microsoft\x20Windows
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=My_volume_label
+ ID_FS_LABEL_ENC=My\x20volume\x20label
+ ID_FS_LOGICAL_VOLUME_ID=My\x20volume\x20label
+diff --git a/tests/expected/blkid/low-probe-udf-multi-genisoimage-0 b/tests/expected/blkid/low-probe-udf-multi-genisoimage-0
+index f598baaa0..5eeb78d33 100644
+--- a/tests/expected/blkid/low-probe-udf-multi-genisoimage-0
++++ b/tests/expected/blkid/low-probe-udf-multi-genisoimage-0
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=genisoimage
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=first_session
+ ID_FS_LABEL_ENC=first\x20session
+ ID_FS_LOGICAL_VOLUME_ID=first\x20session
+diff --git a/tests/expected/blkid/low-probe-udf-multi-genisoimage-417 b/tests/expected/blkid/low-probe-udf-multi-genisoimage-417
+index bb4d8c72f..5d2c7843f 100644
+--- a/tests/expected/blkid/low-probe-udf-multi-genisoimage-417
++++ b/tests/expected/blkid/low-probe-udf-multi-genisoimage-417
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=genisoimage
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=second_session
+ ID_FS_LABEL_ENC=second\x20session
+ ID_FS_LOGICAL_VOLUME_ID=second\x20session
+diff --git a/tests/expected/blkid/low-probe-udf-multi-genisoimage-834 b/tests/expected/blkid/low-probe-udf-multi-genisoimage-834
+index bc4dcba65..aa7a1630a 100644
+--- a/tests/expected/blkid/low-probe-udf-multi-genisoimage-834
++++ b/tests/expected/blkid/low-probe-udf-multi-genisoimage-834
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=genisoimage
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=third_session
+ ID_FS_LABEL_ENC=third\x20session
+ ID_FS_LOGICAL_VOLUME_ID=third\x20session
+diff --git a/tests/expected/blkid/low-probe-udf-multi-mkudffs-0 b/tests/expected/blkid/low-probe-udf-multi-mkudffs-0
+index 07557d7ca..a1a234e89 100644
+--- a/tests/expected/blkid/low-probe-udf-multi-mkudffs-0
++++ b/tests/expected/blkid/low-probe-udf-multi-mkudffs-0
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=first_session
+ ID_FS_LABEL_ENC=first\x20session
+ ID_FS_LOGICAL_VOLUME_ID=first\x20session
+diff --git a/tests/expected/blkid/low-probe-udf-multi-mkudffs-320 b/tests/expected/blkid/low-probe-udf-multi-mkudffs-320
+index 458cf3e23..84285894d 100644
+--- a/tests/expected/blkid/low-probe-udf-multi-mkudffs-320
++++ b/tests/expected/blkid/low-probe-udf-multi-mkudffs-320
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=second_session
+ ID_FS_LABEL_ENC=second\x20session
+ ID_FS_LOGICAL_VOLUME_ID=second\x20session
+diff --git a/tests/expected/blkid/low-probe-udf-multi-mkudffs-640 b/tests/expected/blkid/low-probe-udf-multi-mkudffs-640
+index 04cc4f11c..59c914280 100644
+--- a/tests/expected/blkid/low-probe-udf-multi-mkudffs-640
++++ b/tests/expected/blkid/low-probe-udf-multi-mkudffs-640
+@@ -1,5 +1,6 @@
+ ID_FS_APPLICATION_ID=Linux\x20mkudffs
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_LABEL=third_session
+ ID_FS_LABEL_ENC=third\x20session
+ ID_FS_LOGICAL_VOLUME_ID=third\x20session
+diff --git a/tests/expected/blkid/low-probe-ufs b/tests/expected/blkid/low-probe-ufs
+index 256f065d2..d771bc8d5 100644
+--- a/tests/expected/blkid/low-probe-ufs
++++ b/tests/expected/blkid/low-probe-ufs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=2048
++ID_FS_FSBLOCKSIZE=2048
+ ID_FS_TYPE=ufs
+ ID_FS_USAGE=filesystem
+ ID_FS_UUID=4b0e640aec56ac70
+diff --git a/tests/expected/blkid/low-probe-xfs b/tests/expected/blkid/low-probe-xfs
+index be9c4194a..0eb803f52 100644
+--- a/tests/expected/blkid/low-probe-xfs
++++ b/tests/expected/blkid/low-probe-xfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_FSLASTBLOCK=4096
+ ID_FS_FSSIZE=11862016
+ ID_FS_LABEL=test-xfs
+diff --git a/tests/expected/blkid/low-probe-xfs-v5 b/tests/expected/blkid/low-probe-xfs-v5
+index fd2cba933..7525b0888 100644
+--- a/tests/expected/blkid/low-probe-xfs-v5
++++ b/tests/expected/blkid/low-probe-xfs-v5
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_FSLASTBLOCK=5120
+ ID_FS_FSSIZE=17469440
+ ID_FS_LABEL=test-xfs-v5
+diff --git a/tests/expected/blkid/low-probe-zfs b/tests/expected/blkid/low-probe-zfs
+index 0e7af2866..f7e481b54 100644
+--- a/tests/expected/blkid/low-probe-zfs
++++ b/tests/expected/blkid/low-probe-zfs
+@@ -1,4 +1,5 @@
+ ID_FS_BLOCK_SIZE=512
++ID_FS_FSBLOCKSIZE=512
+ ID_FS_LABEL=tank
+ ID_FS_LABEL_ENC=tank
+ ID_FS_TYPE=zfs_member
+diff --git a/tests/expected/blkid/low-probe-zonefs b/tests/expected/blkid/low-probe-zonefs
+index cc15459a1..59c86f3fd 100644
+--- a/tests/expected/blkid/low-probe-zonefs
++++ b/tests/expected/blkid/low-probe-zonefs
+@@ -1,3 +1,4 @@
+ ID_FS_BLOCK_SIZE=4096
++ID_FS_FSBLOCKSIZE=4096
+ ID_FS_TYPE=zonefs
+ ID_FS_USAGE=filesystem
+-- 
+2.36.1
+
diff --git a/0030-libblkid-update-documentation-of-BLOCK_SIZE-tag.patch b/0030-libblkid-update-documentation-of-BLOCK_SIZE-tag.patch
new file mode 100644
index 0000000..31d7eb7
--- /dev/null
+++ b/0030-libblkid-update-documentation-of-BLOCK_SIZE-tag.patch
@@ -0,0 +1,32 @@
+From 5300d69be2919d0a50968377d23807831fdf3f71 Mon Sep 17 00:00:00 2001
+From: Andrey Albershteyn <aalbersh@redhat.com>
+Date: Fri, 27 May 2022 12:56:27 +0200
+Subject: libblkid: update documentation of BLOCK_SIZE tag
+
+The name BLOCK_SIZE is unfortunate. This tag doesn't represent
+commonly used file system block size but minimal block size
+accessible by file system (sector size).
+
+Upstream: http://github.com/util-linux/util-linux/commit/895f0b609
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2064810
+Signed-off-by: Andrey Albershteyn <aalbersh@redhat.com>
+---
+ libblkid/src/superblocks/superblocks.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/libblkid/src/superblocks/superblocks.c b/libblkid/src/superblocks/superblocks.c
+index 9cfa991fc..9c32bc9d5 100644
+--- a/libblkid/src/superblocks/superblocks.c
++++ b/libblkid/src/superblocks/superblocks.c
+@@ -80,7 +80,7 @@
+  *
+  * @BOOT_SYSTEM_ID: ISO9660 boot system identifier
+  *
+- * @BLOCK_SIZE: block size
++ * @BLOCK_SIZE: minimal block size accessible by file system
+  */
+ 
+ static int superblocks_probe(blkid_probe pr, struct blkid_chain *chn);
+-- 
+2.36.1
+
diff --git a/0031-cfdisk-don-t-use-NULL-in-printf-coverity-scan.patch b/0031-cfdisk-don-t-use-NULL-in-printf-coverity-scan.patch
new file mode 100644
index 0000000..69ec275
--- /dev/null
+++ b/0031-cfdisk-don-t-use-NULL-in-printf-coverity-scan.patch
@@ -0,0 +1,28 @@
+From da3add097b70160cd2c6bab0a4acb699df07ebe8 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 17 Mar 2022 10:48:33 +0100
+Subject: cfdisk: don't use NULL in printf [coverity scan]
+
+Upstream: http://github.com/util-linux/util-linux/commit/30cc5f5751698cccb625193f715f1a606a7f91b4
+Addresses: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2109459
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ disk-utils/cfdisk.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/disk-utils/cfdisk.c b/disk-utils/cfdisk.c
+index c1b28889f..36eb3f8c6 100644
+--- a/disk-utils/cfdisk.c
++++ b/disk-utils/cfdisk.c
+@@ -2080,7 +2080,7 @@ done:
+ 	}
+ 	free(cm);
+ 	DBG(UI, ul_debug("get parrtype done [type=%s] ", t ?
+-				fdisk_parttype_get_name(t) : NULL));
++				fdisk_parttype_get_name(t) : ""));
+ 	return t;
+ }
+ 
+-- 
+2.36.1
+
diff --git a/0032-zramctl-fix-compiler-warning-Werror-maybe-uninitiali.patch b/0032-zramctl-fix-compiler-warning-Werror-maybe-uninitiali.patch
new file mode 100644
index 0000000..a3563c8
--- /dev/null
+++ b/0032-zramctl-fix-compiler-warning-Werror-maybe-uninitiali.patch
@@ -0,0 +1,28 @@
+From cee4a7f69d853fcc574241d394edc5bcb91469a5 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Mon, 6 Jun 2022 16:19:16 +0200
+Subject: zramctl: fix compiler warning [-Werror=maybe-uninitialized]
+
+Upstream: http://github.com/util-linux/util-linux/commit/8883f037466a5534554d7d9114aceb740295ef20
+Addresses: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2109459
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ sys-utils/zramctl.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/sys-utils/zramctl.c b/sys-utils/zramctl.c
+index 003349fad..64d5fcd81 100644
+--- a/sys-utils/zramctl.c
++++ b/sys-utils/zramctl.c
+@@ -291,7 +291,7 @@ static struct path_cxt *zram_get_control(void)
+ 
+ static int zram_control_add(struct zram *z)
+ {
+-	int n;
++	int n = 0;
+ 	struct path_cxt *ctl;
+ 
+ 	if (!zram_has_control(z) || !(ctl = zram_get_control()))
+-- 
+2.36.1
+
diff --git a/0033-lib-path-make-ul_path_read_buffer-more-robust-coveri.patch b/0033-lib-path-make-ul_path_read_buffer-more-robust-coveri.patch
new file mode 100644
index 0000000..ce2ca44
--- /dev/null
+++ b/0033-lib-path-make-ul_path_read_buffer-more-robust-coveri.patch
@@ -0,0 +1,46 @@
+From f6fffc1a89e57b7d5dd4adf1ee6b2146e58ec411 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Thu, 17 Mar 2022 12:18:03 +0100
+Subject: lib/path: make ul_path_read_buffer() more robust [coverity scan]
+
+Make sure we never call buf[rc - 1] for rc=0.
+
+Upstream: http://github.com/util-linux/util-linux/commit/ea459dcf95d0bb04c816b71d2b85fbcd8cfc5ee4
+Addresses: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2109459
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ lib/path.c | 17 ++++++++++-------
+ 1 file changed, 10 insertions(+), 7 deletions(-)
+
+diff --git a/lib/path.c b/lib/path.c
+index 21f9bd1c4..ab034e110 100644
+--- a/lib/path.c
++++ b/lib/path.c
+@@ -666,14 +666,17 @@ int ul_path_readf_string(struct path_cxt *pc, char **str, const char *path, ...)
+ int ul_path_read_buffer(struct path_cxt *pc, char *buf, size_t bufsz, const char *path)
+ {
+ 	int rc = ul_path_read(pc, buf, bufsz - 1, path);
+-	if (rc < 0)
+-		return rc;
+ 
+-	/* Remove tailing newline (usual in sysfs) */
+-	if (rc > 0 && *(buf + rc - 1) == '\n')
+-		buf[--rc] = '\0';
+-	else
+-		buf[rc - 1] = '\0';
++	if (rc == 0)
++		buf[0] = '\0';
++
++	else if (rc > 0) {
++		/* Remove tailing newline (usual in sysfs) */
++		if (*(buf + rc - 1) == '\n')
++			buf[--rc] = '\0';
++		else
++			buf[rc - 1] = '\0';
++	}
+ 
+ 	return rc;
+ }
+-- 
+2.36.1
+
diff --git a/0034-lslogins-improve-for-static-analyzer.patch b/0034-lslogins-improve-for-static-analyzer.patch
new file mode 100644
index 0000000..ae0bd20
--- /dev/null
+++ b/0034-lslogins-improve-for-static-analyzer.patch
@@ -0,0 +1,27 @@
+From 53af90a8edf2e60342b477d28e0d802dc26f18b7 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Tue, 9 Aug 2022 12:35:05 +0200
+Subject: lslogins: improve for static analyzer
+
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2094216
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ login-utils/lslogins.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/login-utils/lslogins.c b/login-utils/lslogins.c
+index ff4386d1b..56431212d 100644
+--- a/login-utils/lslogins.c
++++ b/login-utils/lslogins.c
+@@ -852,7 +852,7 @@ static struct lslogins_user *get_user_info(struct lslogins_control *ctl, const c
+ 				while (p && *p == '!')
+ 					p++, i++;
+ 
+-				if (i != 0 && (!*p || valid_pwd(p)))
++				if (i != 0 && p && (!*p || valid_pwd(p)))
+ 					user->pwd_lock = STATUS_TRUE;
+ 			} else
+ 				user->pwd_lock = STATUS_UNKNOWN;
+-- 
+2.37.1
+
diff --git a/0035-tests-add-udevadm-settle-to-loop-overlap-test.patch b/0035-tests-add-udevadm-settle-to-loop-overlap-test.patch
new file mode 100644
index 0000000..ac4fa70
--- /dev/null
+++ b/0035-tests-add-udevadm-settle-to-loop-overlap-test.patch
@@ -0,0 +1,48 @@
+From 723438ad02928d9614439def99b36e0758f62d26 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Fri, 12 Aug 2022 08:30:49 +0200
+Subject: tests: add udevadm settle to loop overlap test
+
+Addresses: https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2117203
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ tests/ts/libmount/loop-overlay | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/tests/ts/libmount/loop-overlay b/tests/ts/libmount/loop-overlay
+index 62874a182..c27f60d0f 100755
+--- a/tests/ts/libmount/loop-overlay
++++ b/tests/ts/libmount/loop-overlay
+@@ -43,22 +43,29 @@ dd if="$IMG" of="$IMG" oflag=append bs=1024k count=5 conv=notrunc &>/dev/null
+ 
+ echo "second should fail" >>$TS_OUTPUT
+ $TS_CMD_MOUNT -oloop "$IMG" "$TS_MOUNTPOINT-1" >> $TS_OUTPUT 2>> $TS_ERRLOG
++udevadm settle
+ $TS_CMD_MOUNT -oloop,offset=$OFFSET "$IMG" "$TS_MOUNTPOINT-2" 2>&1 \
+        | sed 's/:.*:/: <target>/; s/for .*/for <source>/' >> $TS_OUTPUT
+ $TS_CMD_UMOUNT "$TS_MOUNTPOINT-1" >> $TS_OUTPUT 2>> $TS_ERRLOG
++udevadm settle
+ 
+ echo "should succeed" >>$TS_OUTPUT
+ $TS_CMD_MOUNT -oloop,sizelimit=$OFFSET "$IMG" "$TS_MOUNTPOINT-1" >> $TS_OUTPUT 2>> $TS_ERRLOG
++udevadm settle
+ $TS_CMD_MOUNT -oloop,offset=$OFFSET "$IMG" "$TS_MOUNTPOINT-2" >> $TS_OUTPUT 2>> $TS_ERRLOG
++udevadm settle
+ $TS_CMD_UMOUNT "$TS_MOUNTPOINT-1" >> $TS_OUTPUT 2>> $TS_ERRLOG
+ $TS_CMD_UMOUNT "$TS_MOUNTPOINT-2" >> $TS_OUTPUT 2>> $TS_ERRLOG
++udevadm settle
+ 
+ echo "both should fail" >>$TS_OUTPUT
+ LOOPDEV=$($TS_CMD_LOSETUP --show -f --offset 1 --sizelimit $OFFSET "$IMG")
++udevadm settle
+ $TS_CMD_MOUNT -oloop,sizelimit=$OFFSET "$IMG" "$TS_MOUNTPOINT-1" 2>&1 \
+ 	| sed 's/:.*:/: <target>/; s/for .*/for <source>/' >> $TS_OUTPUT
+ $TS_CMD_MOUNT -oloop,offset=$OFFSET "$IMG" "$TS_MOUNTPOINT-2" 2>&1 \
+ 	| sed 's/:.*:/: <target>/; s/for .*/for <source>/' >> $TS_OUTPUT
++udevadm settle
+ $TS_CMD_LOSETUP --detach $LOOPDEV
+ 
+ ts_log "Success"
+-- 
+2.37.2
+
diff --git a/0036-lslogins-support-more-password-methods.patch b/0036-lslogins-support-more-password-methods.patch
new file mode 100644
index 0000000..8c81fab
--- /dev/null
+++ b/0036-lslogins-support-more-password-methods.patch
@@ -0,0 +1,161 @@
+From a1dfd3c737f7dad832b0f6ec975bcc5c9cc80ffe Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak@redhat.com>
+Date: Wed, 24 Aug 2022 12:20:25 +0200
+Subject: lslogins: support more password methods
+
+* detect more hashing methods
+
+* don't care about hash size
+
+* follow crypt(5) when check for valid chars
+
+Addresses: https://bugzilla.redhat.com/show_bug.cgi?id=2094216
+Upstream: http://github.com/util-linux/util-linux/commit/2b9373e06243d5adf93d627916a5421b34a7e63f
+Reported-by: Radka Skvarilova <rskvaril@redhat.com>
+Signed-off-by: Karel Zak <kzak@redhat.com>
+---
+ login-utils/lslogins.c | 66 +++++++++++++++++++++++++++---------------
+ 1 file changed, 42 insertions(+), 24 deletions(-)
+
+diff --git a/login-utils/lslogins.c b/login-utils/lslogins.c
+index 56431212d..22e3cd23e 100644
+--- a/login-utils/lslogins.c
++++ b/login-utils/lslogins.c
+@@ -598,7 +598,7 @@ static int get_nprocs(const uid_t uid)
+ }
+ #endif
+ 
+-static const char *get_pwd_method(const char *str, const char **next, unsigned int *sz)
++static const char *get_pwd_method(const char *str, const char **next)
+ {
+ 	const char *p = str;
+ 	const char *res = NULL;
+@@ -606,32 +606,50 @@ static const char *get_pwd_method(const char *str, const char **next, unsigned i
+ 	if (!p || *p++ != '$')
+ 		return NULL;
+ 
+-	if (sz)
+-		*sz = 0;
+-
+ 	switch (*p) {
+ 	case '1':
+ 		res = "MD5";
+-		if (sz)
+-			*sz = 22;
+ 		break;
+ 	case '2':
+-		p++;
+-		if (*p == 'a' || *p == 'y')
++		switch(*(p+1)) {
++		case 'a':
++		case 'y':
++			p++;
+ 			res = "Blowfish";
++			break;
++		case 'b':
++			p++;
++			res = "bcrypt";
++			break;
++		}
++		break;
++	case '3':
++		res = "NT";
+ 		break;
+ 	case '5':
+ 		res = "SHA-256";
+-		if (sz)
+-			*sz = 43;
+ 		break;
+ 	case '6':
+ 		res = "SHA-512";
+-		if (sz)
+-			*sz = 86;
++		break;
++	case '7':
++		res = "scrypt";
++		break;
++	case 'y':
++		res = "yescrypt";
++		break;
++	case 'g':
++		if (*(p + 1) == 'y') {
++			p++;
++			res = "gost-yescrypt";
++		}
++		break;
++	case '_':
++		res = "bsdicrypt";
+ 		break;
+ 	default:
+-		return NULL;
++		res = "unknown";
++		break;
+ 	}
+ 	p++;
+ 
+@@ -642,7 +660,10 @@ static const char *get_pwd_method(const char *str, const char **next, unsigned i
+ 	return res;
+ }
+ 
+-#define is_valid_pwd_char(x)	(isalnum((unsigned char) (x)) || (x) ==  '.' || (x) == '/')
++#define is_invalid_pwd_char(x)	(isspace((unsigned char) (x)) || \
++				 (x) == ':' || (x) == ';' || (x) == '*' || \
++				 (x) == '!' || (x) == '\\')
++#define is_valid_pwd_char(x)	(isascii((unsigned char) (x)) && !is_invalid_pwd_char(x))
+ 
+ /*
+  * This function do not accept empty passwords or locked accouns.
+@@ -650,17 +671,16 @@ static const char *get_pwd_method(const char *str, const char **next, unsigned i
+ static int valid_pwd(const char *str)
+ {
+ 	const char *p = str;
+-	unsigned int sz = 0, n;
+ 
+ 	if (!str || !*str)
+ 		return 0;
+ 
+ 	/* $id$ */
+-	if (get_pwd_method(str, &p, &sz) == NULL)
++	if (get_pwd_method(str, &p) == NULL)
+ 		return 0;
++
+ 	if (!p || !*p)
+ 		return 0;
+-
+ 	/* salt$ */
+ 	for (; *p; p++) {
+ 		if (*p == '$') {
+@@ -670,17 +690,15 @@ static int valid_pwd(const char *str)
+ 		if (!is_valid_pwd_char(*p))
+ 			return 0;
+ 	}
++
+ 	if (!*p)
+ 		return 0;
+-
+ 	/* encrypted */
+-	for (n = 0; *p; p++, n++) {
+-		if (!is_valid_pwd_char(*p))
++	for (; *p; p++) {
++		if (!is_valid_pwd_char(*p)) {
+ 			return 0;
++		}
+ 	}
+-
+-	if (sz && n != sz)
+-		return 0;
+ 	return 1;
+ }
+ 
+@@ -863,7 +881,7 @@ static struct lslogins_user *get_user_info(struct lslogins_control *ctl, const c
+ 
+ 				while (p && (*p == '!' || *p == '*'))
+ 					p++;
+-				user->pwd_method = get_pwd_method(p, NULL, NULL);
++				user->pwd_method = get_pwd_method(p, NULL);
+ 			} else
+ 				user->pwd_method = NULL;
+ 			break;
+-- 
+2.37.2
+
diff --git a/STAGE1-util-linux b/STAGE1-util-linux
new file mode 100644
index 0000000..f492ecb
--- /dev/null
+++ b/STAGE1-util-linux
@@ -0,0 +1,12 @@
+srpm util-linux
+mcd $BUILDDIR/$1
+cat <<EOF > config.cache
+ax_cv_have_tls=yes
+scanf_cv_alloc_modifier=ms
+EOF
+$SRC/${1}-*/configure $TCONFIGARGS --without-ncurses --without-tinfo \
+   --prefix=/usr --libexecdir=/usr/lib${SUFFIX} --libdir=/usr/lib${SUFFIX} \
+   --disable-wall --cache-file=config.cache --without-python --without-systemd
+notparallel
+make $J V=1
+make $J install DESTDIR=${ROOTFS}
diff --git a/adjtime b/adjtime
new file mode 100644
index 0000000..3127bd0
--- /dev/null
+++ b/adjtime
@@ -0,0 +1,2 @@
+0.0 0 0.0
+0
diff --git a/gating.yaml b/gating.yaml
new file mode 100644
index 0000000..648918d
--- /dev/null
+++ b/gating.yaml
@@ -0,0 +1,6 @@
+--- !Policy
+product_versions:
+  - rhel-9
+decision_context: osci_compose_gate
+rules:
+  - !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
diff --git a/sources b/sources
new file mode 100644
index 0000000..c333d0f
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (util-linux-2.37.4.tar.xz) = ada2629b0a8e83ea83513e04f7b1ccceb3b8ab82acd119c5d8389d1abc48c92d0b591f39fb34b1fd65db3ab630f03a672a9f3dacf1a6e4f124bdb083fc1be6d7
diff --git a/tests/tests.yml b/tests/tests.yml
new file mode 100644
index 0000000..e8f651e
--- /dev/null
+++ b/tests/tests.yml
@@ -0,0 +1,57 @@
+# Test which run in classic and docker environemnt
+- hosts: localhost
+  tags:
+  - classic
+  - container
+  - atomic
+  vars:
+    # standard-test-basic directory for tests are relative to {{ tenv_workdir }}
+    tenv_workdir: /var/test
+  pre_tasks:
+  - import_role:
+      name: standard-test-source
+    vars:
+      fetch_only: True
+
+  - name: Copy files including source to test environment
+    synchronize:
+      src: "{{ playbook_dir }}/.."
+      dest: "{{ tenv_workdir }}"
+      mode: push
+      ssh_args: "-o UserKnownHostsFile=/dev/null"
+  roles:
+  - role: standard-test-beakerlib
+    tests:
+    - various
+    required_packages:
+    - util-linux
+    - util-linux-user
+  - role: standard-test-basic
+    required_packages:
+    - util-linux
+    - util-linux-user
+    - coreutils
+    - bzip2
+    - xz
+    - bc
+    - device-mapper
+    - iproute
+    - mdadm
+    - e2fsprogs
+    - binutils
+    - procps-ng
+    - sed
+    - gawk
+    - file
+    - git
+    - rpm-build
+    tests:
+    - prepare-source:
+        dir: ./
+        run: rpmbuild -bp {{tenv_workdir}}/*.spec --nodeps --define "_sourcedir {{tenv_workdir}}" --define "_builddir {{tenv_workdir}}/source"
+    - flatten-source:
+        dir: ./
+        run: shopt -s dotglob; mv {{tenv_workdir}}/source/*/* {{tenv_workdir}}/source
+    - upstream:
+        dir: upstream
+        run: ./runtest.sh
diff --git a/tests/upstream/runtest.sh b/tests/upstream/runtest.sh
new file mode 100755
index 0000000..a6fbb9b
--- /dev/null
+++ b/tests/upstream/runtest.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+# Copyright (C) 2019 Karel Zak <kzak@redhat.com>
+
+srcdir="../source"
+testdir="${srcdir}/tests"
+
+echo "srcdir:  $srcdir"
+echo "testdir: $testdir"
+
+if [ ! -x "${testdir}/run.sh" ]; then
+	echo "upstream tests not found"
+	exit 1
+fi
+
+# We don't compile the tests, but it still needs some hints.
+#
+echo > ${srcdir}/config.h
+echo "#define HAVE_WIDECHAR 1"              >> ${srcdir}/config.h
+echo "#define HAVE_LINUX_NET_NAMESPACE_H 1" >> ${srcdir}/config.h
+
+# Remove stuff we don't have in RHEL
+#
+rm -rf ${testdir}/ts/misc/line
+
+
+version_tests=$(cat ${srcdir}/.version)
+version_system=$(rpm -q util-linux)
+
+echo
+echo "Used versions: "
+echo "       upstream tests: $version_tests"
+echo " installed util-linux: $version_system"
+echo
+
+# Run upstream tests
+#
+${testdir}/run.sh --use-system-commands --noskip-commands --show-diff
+
+exit $?
diff --git a/tests/various/Makefile b/tests/various/Makefile
new file mode 100644
index 0000000..2357934
--- /dev/null
+++ b/tests/various/Makefile
@@ -0,0 +1,64 @@
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+#
+#   Makefile of /CoreOS/util-linux/various
+#   Description: This test groups small sanity and regression tests for util-linux
+#   Author: Miroslav Vadkerti <mvadkert@redhat.com>
+#
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+#
+#   Copyright (c) 2013 Red Hat, Inc. All rights reserved.
+#
+#   This copyrighted material is made available to anyone wishing
+#   to use, modify, copy, or redistribute it subject to the terms
+#   and conditions of the GNU General Public License version 2.
+#
+#   This program is distributed in the hope that it will be
+#   useful, but WITHOUT ANY WARRANTY; without even the implied
+#   warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+#   PURPOSE. See the GNU General Public License for more details.
+#
+#   You should have received a copy of the GNU General Public
+#   License along with this program; if not, write to the Free
+#   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+#   Boston, MA 02110-1301, USA.
+#
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+export TEST=/CoreOS/util-linux/Sanity/various
+export TESTVERSION=1.0
+
+BUILT_FILES=
+
+FILES=$(METADATA) runtest.sh Makefile PURPOSE
+
+.PHONY: all install download clean
+
+run: $(FILES) build
+	./runtest.sh
+
+build: $(BUILT_FILES)
+	test -x runtest.sh || chmod a+x runtest.sh
+
+clean:
+	rm -f *~ $(BUILT_FILES)
+
+
+include /usr/share/rhts/lib/rhts-make.include
+
+$(METADATA): Makefile
+	@echo "Owner:           Miroslav Vadkerti <mvadkert@redhat.com>" > $(METADATA)
+	@echo "Name:            $(TEST)" >> $(METADATA)
+	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)
+	@echo "Path:            $(TEST_DIR)" >> $(METADATA)
+	@echo "Description:     This test groups small sanity and regression tests for util-linux" >> $(METADATA)
+	@echo "Type:            Sanity" >> $(METADATA)
+	@echo "TestTime:        10m" >> $(METADATA)
+	@echo "RunFor:          util-linux" >> $(METADATA)
+	@echo "Requires:        util-linux util-linux-user" >> $(METADATA)
+	@echo "Priority:        Normal" >> $(METADATA)
+	@echo "License:         GPLv2" >> $(METADATA)
+	@echo "Confidential:    no" >> $(METADATA)
+	@echo "Destructive:     no" >> $(METADATA)
+	@echo "Releases:        -RHEL3 -RHEL4 -RHEL5Server -RHEL5Client -RHEL6" >> $(METADATA)
+
+	rhts-lint $(METADATA)
diff --git a/tests/various/PURPOSE b/tests/various/PURPOSE
new file mode 100644
index 0000000..b4de79a
--- /dev/null
+++ b/tests/various/PURPOSE
@@ -0,0 +1,3 @@
+PURPOSE of /CoreOS/util-linux/various
+Description: This test groups small sanity and regression tests for util-linux
+Author: Miroslav Vadkerti <mvadkert@redhat.com>
diff --git a/tests/various/runtest.sh b/tests/various/runtest.sh
new file mode 100755
index 0000000..32871f4
--- /dev/null
+++ b/tests/various/runtest.sh
@@ -0,0 +1,52 @@
+#!/bin/bash
+# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+#
+#   runtest.sh of /CoreOS/util-linux/various
+#   Description: This test groups small sanity and regression tests for util-linux
+#   Author: Miroslav Vadkerti <mvadkert@redhat.com>
+#
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+#
+#   Copyright (c) 2013 Red Hat, Inc. All rights reserved.
+#
+#   This copyrighted material is made available to anyone wishing
+#   to use, modify, copy, or redistribute it subject to the terms
+#   and conditions of the GNU General Public License version 2.
+#
+#   This program is distributed in the hope that it will be
+#   useful, but WITHOUT ANY WARRANTY; without even the implied
+#   warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+#   PURPOSE. See the GNU General Public License for more details.
+#
+#   You should have received a copy of the GNU General Public
+#   License along with this program; if not, write to the Free
+#   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+#   Boston, MA 02110-1301, USA.
+#
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+# Include Beaker environment
+#. /usr/bin/rhts-environment.sh || exit 1
+. /usr/share/beakerlib/beakerlib.sh || exit 1
+
+PACKAGE="util-linux"
+
+rlJournalStart
+    rlPhaseStartSetup
+        rlAssertRpm $PACKAGE
+    rlPhaseEnd
+
+    rlPhaseStartTest "return code of chfn should be always 1 in case failure"
+        rlRun "chfn -f a:b" 1
+        rlRun "chfn -o a:b" 1
+        rlRun "chfn -p a:b" 1
+        rlRun "chfn -h a:b" 1
+        rlRun "chfn -x a:b" 1
+        rlRun "chfn -f a -o b -p c -h d unknown-user" 1
+    rlPhaseEnd
+
+    rlPhaseStartCleanup
+    rlPhaseEnd
+rlJournalPrintText
+rlJournalEnd
diff --git a/util-linux-chsh-chfn.pamd b/util-linux-chsh-chfn.pamd
new file mode 100644
index 0000000..2dbc0aa
--- /dev/null
+++ b/util-linux-chsh-chfn.pamd
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth       sufficient   pam_rootok.so
+auth       include      system-auth
+account    include      system-auth
+password   include      system-auth
+session    include      system-auth
diff --git a/util-linux-login.pamd b/util-linux-login.pamd
new file mode 100644
index 0000000..517b798
--- /dev/null
+++ b/util-linux-login.pamd
@@ -0,0 +1,16 @@
+#%PAM-1.0
+auth       substack     system-auth
+auth       include      postlogin
+account    required     pam_nologin.so
+account    include      system-auth
+password   include      system-auth
+# pam_selinux.so close should be the first session rule
+session    required     pam_selinux.so close
+session    required     pam_loginuid.so
+# pam_selinux.so open should only be followed by sessions to be executed in the user context
+session    required     pam_selinux.so open
+session    required     pam_namespace.so
+session    optional     pam_keyinit.so force revoke
+session    include      system-auth
+session    include      postlogin
+-session   optional     pam_ck_connector.so
diff --git a/util-linux-remote.pamd b/util-linux-remote.pamd
new file mode 100644
index 0000000..100ec98
--- /dev/null
+++ b/util-linux-remote.pamd
@@ -0,0 +1,15 @@
+#%PAM-1.0
+auth       substack     password-auth
+auth       include      postlogin
+account    required     pam_nologin.so
+account    include      password-auth
+password   include      password-auth
+# pam_selinux.so close should be the first session rule
+session    required     pam_selinux.so close
+session    required     pam_loginuid.so
+# pam_selinux.so open should only be followed by sessions to be executed in the user context
+session    required     pam_selinux.so open
+session    required     pam_namespace.so
+session    optional     pam_keyinit.so force revoke
+session    include      password-auth
+session    include      postlogin
diff --git a/util-linux-runuser-l.pamd b/util-linux-runuser-l.pamd
new file mode 100644
index 0000000..7a9a48c
--- /dev/null
+++ b/util-linux-runuser-l.pamd
@@ -0,0 +1,5 @@
+#%PAM-1.0
+auth		include		runuser
+session		optional	pam_keyinit.so force revoke
+-session	optional	pam_systemd.so
+session		include		runuser
diff --git a/util-linux-runuser.pamd b/util-linux-runuser.pamd
new file mode 100644
index 0000000..37f0e84
--- /dev/null
+++ b/util-linux-runuser.pamd
@@ -0,0 +1,5 @@
+#%PAM-1.0
+auth		sufficient	pam_rootok.so
+session		optional	pam_keyinit.so revoke
+session		required	pam_limits.so
+session		required	pam_unix.so
diff --git a/util-linux-su-l.pamd b/util-linux-su-l.pamd
new file mode 100644
index 0000000..656a139
--- /dev/null
+++ b/util-linux-su-l.pamd
@@ -0,0 +1,6 @@
+#%PAM-1.0
+auth		include		su
+account		include		su
+password	include		su
+session		optional	pam_keyinit.so force revoke
+session		include		su
diff --git a/util-linux-su.pamd b/util-linux-su.pamd
new file mode 100644
index 0000000..5733201
--- /dev/null
+++ b/util-linux-su.pamd
@@ -0,0 +1,15 @@
+#%PAM-1.0
+auth		required	pam_env.so
+auth		sufficient	pam_rootok.so
+# Uncomment the following line to implicitly trust users in the "wheel" group.
+#auth		sufficient	pam_wheel.so trust use_uid
+# Uncomment the following line to require a user to be in the "wheel" group.
+#auth		required	pam_wheel.so use_uid
+auth		substack	system-auth
+auth		include		postlogin
+account		sufficient	pam_succeed_if.so uid = 0 use_uid quiet
+account		include		system-auth
+password	include		system-auth
+session		include		system-auth
+session		include		postlogin
+session		optional	pam_xauth.so
diff --git a/util-linux.spec b/util-linux.spec
new file mode 100644
index 0000000..70740b3
--- /dev/null
+++ b/util-linux.spec
@@ -0,0 +1,3241 @@
+### Header
+Summary: A collection of basic system utilities
+Name: util-linux
+Version: 2.37.4
+Release: 9%{?dist}
+License: GPLv2 and GPLv2+ and LGPLv2+ and BSD with advertising and Public Domain
+URL: http://en.wikipedia.org/wiki/Util-linux
+
+### Macros
+%define upstream_version %{version}
+%define upstream_major %(eval echo %{version} | %{__sed} -e 's/\([[:digit:]]*\)\.\([[:digit:]]*\)\.[[:digit:]]*$/\1.\2/')
+
+%define compldir %{_datadir}/bash-completion/completions/
+
+%define pypkg python3
+%define pyver 3
+
+### Dependencies
+BuildRequires: make
+BuildRequires: audit-libs-devel >= 1.0.6
+BuildRequires: gettext-devel
+BuildRequires: libselinux-devel
+BuildRequires: ncurses-devel
+BuildRequires: readline-devel
+BuildRequires: pam-devel
+BuildRequires: zlib-devel
+BuildRequires: popt-devel
+BuildRequires: libutempter-devel
+Buildrequires: systemd-devel
+BuildRequires: systemd
+Buildrequires: libuser-devel
+BuildRequires: libcap-ng-devel
+BuildRequires: %{pypkg}-devel
+BuildRequires: gcc
+BuildRequires: git
+BuildRequires: rubygem-asciidoctor
+%ifarch ppc64le
+BuildRequires: librtas-devel
+%endif
+
+# enable if make changes to build-system
+#BuildRequires: autoconf
+#BuildRequires: automake
+#BuildRequires: libtool
+#BuildRequires: bison
+
+### Sources
+Source0: ftp://ftp.kernel.org/pub/linux/utils/util-linux/v%{upstream_major}/util-linux-%{upstream_version}.tar.xz
+Source1: util-linux-login.pamd
+Source2: util-linux-remote.pamd
+Source3: util-linux-chsh-chfn.pamd
+Source4: uuidd-tmpfiles.conf
+Source5: adjtime
+Source12: util-linux-su.pamd
+Source13: util-linux-su-l.pamd
+Source14: util-linux-runuser.pamd
+Source15: util-linux-runuser-l.pamd
+
+### Obsoletes & Conflicts & Provides
+Conflicts: initscripts < 9.79-4
+Conflicts: bash-completion < 1:2.1-1
+# su(1) and runuser(1) merged into util-linux v2.22
+Conflicts: coreutils < 8.20
+# eject has been merged into util-linux v2.22
+Obsoletes: eject <= 2.1.5
+Provides: eject = 2.1.6
+# rfkill has been merged into util-linux v2.31
+Obsoletes: rfkill <= 0.5
+Provides: rfkill = 0.5
+# sulogin, utmpdump merged into util-linux v2.22;
+# last, lastb merged into util-linux v2.24
+Conflicts: sysvinit-tools < 2.88-14
+# rename from util-linux-ng back to util-linux
+Obsoletes: util-linux-ng < 2.19
+Provides: util-linux-ng = %{version}-%{release}
+Conflicts: filesystem < 3
+Provides: /sbin/nologin
+Provides: /sbin/findfs
+
+Requires(post): coreutils
+Requires: pam >= 1.1.3-7, /etc/pam.d/system-auth
+Requires: audit-libs >= 1.0.6
+Requires: libuuid = %{version}-%{release}
+Requires: libblkid = %{version}-%{release}
+Requires: libmount = %{version}-%{release}
+Requires: libsmartcols = %{version}-%{release}
+Requires: libfdisk = %{version}-%{release}
+Requires: util-linux-core = %{version}-%{release}
+
+
+### RHEL-9.0.0
+#
+# 151635 - makeing /var/log/lastlog
+Patch0: 0000-login-create-var-log-lastlog.patch
+# Add `/run/motd.d` to the hardcoded MOTD_FILE
+# https://github.com/coreos/console-login-helper-messages/issues/60
+Patch1: 0001-login-default-motd-file.patch
+# Integrate upstream tests
+Patch2: 0002-tests-make-.-run.sh-more-robust.patch
+Patch3: 0003-tests-make-mount-fstab-all-more-robust.patch
+Patch4: 0004-tests-make-eject-umount-tests-more-robust.patch
+# 2037212 - Complete Linux-PAM compliance for forked child in su and login
+Patch5: 0005-Complete-Linux-PAM-compliance-for-forked-child-in-su.patch
+# 2040366 - uuidd can't access lock/status file
+Patch6: 0006-uuidd-fix-open-lock-state-issue.patch
+# 2021462 - partitons detection broken on systems not including the parent name in partition name
+Patch7: 0007-sysfs-fallback-for-partitions-not-including-parent-n.patch
+# 2033622 - logger from util-linux incorrectly handles long messages
+Patch8: 0008-logger-fix-size-use-for-stdin.patch
+# 2057046 - wdctl not picking up reboot reason flag
+Patch9: 0009-wdctl-Workaround-reported-boot-status-bits-not-being.patch
+
+### RHEL-9.1.0
+#
+# 2094216 - lslogins reports incorrect "Password is locked" status
+Patch10: 0010-lslogins-remove-unexpected-debug-message.patch
+Patch11: 0011-lslogins-improve-prefixes-interpretation.patch
+Patch12: 0012-lslogins-fix-free-invalid-pointer.patch
+Patch13: 0013-login-utils-logindefs-fix-compiler-warning-Werror-fo.patch
+# 2092943 - uuidd time based UUIDs are without MAC address
+Patch14: 0014-uuidd-allow-AF_INET-in-systemd-service.patch
+Patch15: 0015-uuidd-remove-also-PrivateNetwork-yes-from-systemd-se.patch
+# 2078787 - Activity "lsirq -s column" produces wrong result i.e. not sorting properly. 
+Patch16: 0016-lsirq-improve-sort-IRQ.patch
+Patch17: 0017-irqtop-fix-compiler-warning-Werror-format-truncation.patch
+# 2076829 - dmesg new option "--since" is not working if timestamp format is not provided
+Patch18: 0018-dmesg-fix-since-and-until.patch
+# 2074486 - Command (wipefs -a) to erase all available signatures against read only rom return 0 with dmesg error
+Patch19: 0019-libblkid-check-fsync-return-code.patch
+# 2064810 - RFE: complete libblkid FSSIZE implementation
+Patch20: 0020-libblkid-add-interface-for-FSSIZE-field.patch
+Patch21: 0021-libblkid-implement-FSSIZE-calculation-for-XFS.patch
+Patch22: 0022-blkid-add-FSSIZE-tag-with-tests-for-XFS.patch
+Patch23: 0023-libblkid-fix-FSSIZE-docs.patch
+Patch24: 0024-libblkid-add-FSLASTBLOCK-field-interface-showing-are.patch
+Patch25: 0025-libblkid-add-FSLASTBLOCK-implementation-for-xfs-ext-.patch
+Patch26: 0026-blkid-add-image-for-btrfs-testing.patch
+Patch27: 0027-blkid-add-tests-for-FSLASTBLOCK-tag.patch
+Patch28: 0028-libblkid-merge-FS-flags-into-one-FSINFO.patch
+Patch29: 0029-libblkid-add-FSBLOCKSIZE-tag.patch
+Patch30: 0030-libblkid-update-documentation-of-BLOCK_SIZE-tag.patch
+# 2109459 - fix compiler warnings/errors
+Patch31: 0031-cfdisk-don-t-use-NULL-in-printf-coverity-scan.patch
+Patch32: 0032-zramctl-fix-compiler-warning-Werror-maybe-uninitiali.patch
+Patch33: 0033-lib-path-make-ul_path_read_buffer-more-robust-coveri.patch
+# 2094216 - lslogins reports incorrect "Password is locked" status
+Patch34: 0034-lslogins-improve-for-static-analyzer.patch
+# 2117203 - RHEL-9.1: loop-overlay test failed
+Patch35: 0035-tests-add-udevadm-settle-to-loop-overlap-test.patch
+# 2094216 - lslogins reports incorrect "Password is locked" status
+Patch36: 0036-lslogins-support-more-password-methods.patch
+
+
+%description
+The util-linux package contains a large variety of low-level system
+utilities that are necessary for a Linux system to function. Among
+others, Util-linux contains the fdisk configuration tool and the login
+program.
+
+
+%package -n util-linux-core
+Summary: The most essential utilities from the util-linux suite.
+License: GPLv2 and GPLv2+ and LGPLv2+ and BSD with advertising and Public Domain
+Provides: /bin/dmesg
+Provides: /bin/kill
+Provides: /bin/more
+Provides: /bin/mount
+Provides: /bin/umount
+Provides: /sbin/blkid
+Provides: /sbin/blockdev
+Provides: /sbin/fsck
+# hardlink has been merged into util-linux v2.34
+Obsoletes: hardlink <= 1:1.3-9
+Provides: hardlink = 1:1.3-9
+Requires: libuuid = %{version}-%{release}
+Requires: libblkid = %{version}-%{release}
+Requires: libmount = %{version}-%{release}
+Requires: libsmartcols = %{version}-%{release}
+# old versions of e2fsprogs contain fsck, uuidgen
+Conflicts: e2fsprogs < 1.41.8-5
+
+%description -n util-linux-core
+This is a very basic set of Linux utilities that is necessary on
+minimal installations.
+
+
+%package -n libfdisk
+Summary: Partitioning library for fdisk-like programs.
+License: LGPLv2+
+Requires: libblkid = %{version}-%{release}
+Requires: libuuid = %{version}-%{release}
+
+%description -n libfdisk
+This is library for fdisk-like programs, part of util-linux.
+
+
+%package -n libfdisk-devel
+Summary:  Partitioning library for fdisk-like programs.
+License: LGPLv2+
+Requires: libfdisk = %{version}-%{release}
+Requires: pkgconfig
+
+%description -n libfdisk-devel
+This is development library and headers for fdisk-like programs,
+part of util-linux.
+
+
+%package -n libsmartcols
+Summary: Formatting library for ls-like programs.
+License: LGPLv2+
+
+%description -n libsmartcols
+This is library for ls-like terminal programs, part of util-linux.
+
+
+%package -n libsmartcols-devel
+Summary: Formatting library for ls-like programs.
+License: LGPLv2+
+Requires: libsmartcols = %{version}-%{release}
+Requires: pkgconfig
+
+%description -n libsmartcols-devel
+This is development library and headers for ls-like terminal programs,
+part of util-linux.
+
+
+%package -n libmount
+Summary: Device mounting library
+License: LGPLv2+
+Requires: libblkid = %{version}-%{release}
+Requires: libuuid = %{version}-%{release}
+Conflicts: filesystem < 3
+
+%description -n libmount
+This is the device mounting library, part of util-linux.
+
+
+%package -n libmount-devel
+Summary: Device mounting library
+License: LGPLv2+
+Requires: libmount = %{version}-%{release}
+Requires: pkgconfig
+
+%description -n libmount-devel
+This is the device mounting development library and headers,
+part of util-linux.
+
+
+%package -n libblkid
+Summary: Block device ID library
+License: LGPLv2+
+Requires: libuuid = %{version}-%{release}
+Conflicts: filesystem < 3
+Requires(post): coreutils
+
+%description -n libblkid
+This is block device identification library, part of util-linux.
+
+
+%package -n libblkid-devel
+Summary: Block device ID library
+License: LGPLv2+
+Requires: libblkid = %{version}-%{release}
+Requires: pkgconfig
+
+%description -n libblkid-devel
+This is the block device identification development library and headers,
+part of util-linux.
+
+
+%package -n libuuid
+Summary: Universally unique ID library
+License: BSD
+Conflicts: filesystem < 3
+
+%description -n libuuid
+This is the universally unique ID library, part of util-linux.
+
+The libuuid library generates and parses 128-bit universally unique
+id's (UUID's).  A UUID is an identifier that is unique across both
+space and time, with respect to the space of all UUIDs.  A UUID can
+be used for multiple purposes, from tagging objects with an extremely
+short lifetime, to reliably identifying very persistent objects
+across a network.
+
+See also the "uuid" package, which is a separate implementation.
+
+%package -n libuuid-devel
+Summary: Universally unique ID library
+License: BSD
+Requires: libuuid = %{version}-%{release}
+Requires: pkgconfig
+
+%description -n libuuid-devel
+This is the universally unique ID development library and headers,
+part of util-linux.
+
+The libuuid library generates and parses 128-bit universally unique
+id's (UUID's).  A UUID is an identifier that is unique across both
+space and time, with respect to the space of all UUIDs.  A UUID can
+be used for multiple purposes, from tagging objects with an extremely
+short lifetime, to reliably identifying very persistent objects
+across a network.
+
+See also the "uuid-devel" package, which is a separate implementation.
+
+
+%package -n uuidd
+Summary: Helper daemon to guarantee uniqueness of time-based UUIDs
+Requires: libuuid = %{version}-%{release}
+License: GPLv2
+Requires: systemd
+Requires(pre): shadow-utils
+Requires(post): systemd-units
+Requires(preun): systemd-units
+
+%description -n uuidd
+The uuidd package contains a userspace daemon (uuidd) which guarantees
+uniqueness of time-based UUID generation even at very high rates on
+SMP systems.
+
+
+%package -n %{pypkg}-libmount
+Summary: Python bindings for the libmount library
+Requires: libmount = %{version}-%{release}
+Requires: libblkid = %{version}-%{release}
+License: LGPLv2+
+
+%description -n %{pypkg}-libmount
+The libmount-python package contains a module that permits applications
+written in the Python programming language to use the interface
+supplied by the libmount library to work with mount tables (fstab,
+mountinfo, etc) and mount filesystems.
+
+
+%package -n util-linux-user
+Summary: libuser based util-linux utilities
+Requires: util-linux = %{version}-%{release}
+License: GPLv2
+
+%description -n util-linux-user
+chfn and chsh utilities with dependence on libuser
+
+
+%prep
+%autosetup -p1 -Sgit -n %{name}-%{upstream_version}
+
+%build
+unset LINGUAS || :
+
+export CFLAGS="-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 $RPM_OPT_FLAGS"
+export SUID_CFLAGS="-fpie"
+export SUID_LDFLAGS="-pie -Wl,-z,relro -Wl,-z,now"
+export DAEMON_CFLAGS="$SUID_CFLAGS"
+export DAEMON_LDFLAGS="$SUID_LDFLAGS"
+%configure \
+	--with-systemdsystemunitdir=%{_unitdir} \
+	--disable-silent-rules \
+	--disable-bfs \
+	--disable-pg \
+	--enable-chfn-chsh \
+	--enable-usrdir-path \
+	--enable-write \
+	--disable-raw \
+	--enable-hardlink \
+	--enable-fdformat \
+	--enable-asciidoc \
+	--with-python=%{pyver} \
+	--with-systemd \
+	--with-udev \
+	--with-selinux \
+	--with-audit \
+	--with-utempter \
+	--disable-makeinstall-chown \
+%ifarch s390 s390x
+	--disable-hwclock \
+	--disable-fdformat
+%endif
+
+# build util-linux
+%make_build
+
+%check
+#to run tests use "--with check"
+%if %{?_with_check:1}%{!?_with_check:0}
+make check
+%endif
+
+
+%install
+rm -rf ${RPM_BUILD_ROOT}
+mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
+mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man{1,6,8,5}
+mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}
+mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/{pam.d,security/console.apps}
+mkdir -p ${RPM_BUILD_ROOT}/usr/lib/tmpfiles.d
+
+# install util-linux
+%make_install
+
+# And a dirs uuidd needs that the makefiles don't create
+install -m 644 %{SOURCE4} ${RPM_BUILD_ROOT}/usr/lib/tmpfiles.d/uuidd.conf
+install -d ${RPM_BUILD_ROOT}/run/uuidd
+install -d ${RPM_BUILD_ROOT}/var/lib/libuuid
+
+# /etc/adjtime
+install -m 644 %{SOURCE5} ${RPM_BUILD_ROOT}%{_sysconfdir}/adjtime
+
+# libtool junk
+rm -rf ${RPM_BUILD_ROOT}%{_libdir}/*.la
+rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.la
+rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.a
+
+%ifarch %{sparc}
+rm -rf ${RPM_BUILD_ROOT}%{_bindir}/sunhostid
+cat << E-O-F > ${RPM_BUILD_ROOT}%{_bindir}/sunhostid
+#!/bin/sh
+# this should be _bindir/sunhostid or somesuch.
+# Copyright 1999 Peter Jones, <pjones@redhat.com> .
+# GPL and all that good stuff apply.
+(
+idprom=\`cat /proc/openprom/idprom\`
+echo \$idprom|dd bs=1 skip=2 count=2
+echo \$idprom|dd bs=1 skip=27 count=6
+echo
+) 2>/dev/null
+E-O-F
+chmod 755 ${RPM_BUILD_ROOT}%{_bindir}/sunhostid
+%endif
+
+# PAM settings
+{
+	pushd ${RPM_BUILD_ROOT}%{_sysconfdir}/pam.d
+	install -m 644 %{SOURCE1} ./login
+	install -m 644 %{SOURCE2} ./remote
+	install -m 644 %{SOURCE3} ./chsh
+	install -m 644 %{SOURCE3} ./chfn
+	install -m 644 %{SOURCE12} ./su
+	install -m 644 %{SOURCE13} ./su-l
+	install -m 644 %{SOURCE14} ./runuser
+	install -m 644 %{SOURCE15} ./runuser-l
+	popd
+}
+
+%ifnarch s390 s390x
+ln -sf hwclock ${RPM_BUILD_ROOT}%{_sbindir}/clock
+echo ".so man8/hwclock.8" > ${RPM_BUILD_ROOT}%{_mandir}/man8/clock.8
+%endif
+
+# unsupported on SPARCs
+%ifarch %{sparc}
+for I in /sbin/sfdisk \
+	%{_mandir}/man8/sfdisk.8* \
+	/sbin/cfdisk \
+	%{_mandir}/man8/cfdisk.8*; do
+	
+	rm -f $RPM_BUILD_ROOT$I
+done
+%endif
+
+ln -sf ../proc/self/mounts %{buildroot}/etc/mtab
+
+# remove static libs
+rm -f $RPM_BUILD_ROOT%{_libdir}/lib{uuid,blkid,mount,smartcols,fdisk}.a
+
+# remove unsupported tools (--disable-* not avalable by ./configure)
+rm -f ${RPM_BUILD_ROOT}%{_bindir}/uclampset
+rm -f ${RPM_BUILD_ROOT}%{compldir}/uclampset
+rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/uclampset*
+
+# temporary remove to avoid conflicts with bash-completion pkg
+rm -f $RPM_BUILD_ROOT%{compldir}/{mount,umount}
+
+# find MO files
+%find_lang %name
+
+# the files section supports only one -f option...
+mv %{name}.lang %{name}.files
+
+# create list of setarch(8) symlinks
+find  $RPM_BUILD_ROOT%{_bindir}/ -regextype posix-egrep -type l \
+	-regex ".*(linux32|linux64|s390|s390x|i386|ppc|ppc64|ppc32|sparc|sparc64|sparc32|sparc32bash|mips|mips64|mips32|ia64|x86_64|uname26)$" \
+	-printf "%{_bindir}/%f\n" >> %{name}.files
+
+find  $RPM_BUILD_ROOT%{_mandir}/man8 -regextype posix-egrep  \
+	-regex ".*(linux32|linux64|s390|s390x|i386|ppc|ppc64|ppc32|sparc|sparc64|sparc32|sparc32bash|mips|mips64|mips32|ia64|x86_64|uname26)\.8.*" \
+	-printf "%{_mandir}/man8/%f*\n" >> %{name}.files
+
+
+%post -n util-linux-core
+if [ ! -L /etc/mtab ]; then
+	ln -sf ../proc/self/mounts /etc/mtab || :
+fi
+
+%post -n libblkid
+### Move blkid cache to /run
+[ -d /run/blkid ] || mkdir -p /run/blkid
+for I in /etc/blkid.tab /etc/blkid.tab.old \
+         /etc/blkid/blkid.tab /etc/blkid/blkid.tab.old; do
+
+	if [ -f "$I" ]; then
+		mv "$I" /run/blkid/ || :
+	fi
+done
+
+%pre -n uuidd
+getent group uuidd >/dev/null || groupadd -r uuidd
+getent passwd uuidd >/dev/null || \
+useradd -r -g uuidd -d /var/lib/libuuid -s /sbin/nologin \
+    -c "UUID generator helper daemon" uuidd
+exit 0
+
+# Please, keep uuidd running after installation! Note that systemd_post is
+# "systemctl preset" and it enable/disable service only.
+%post -n uuidd
+%systemd_post uuidd.service
+if [ $1 -eq 1 ] && [ -x /usr/bin/systemctl ]; then
+	# install
+	/bin/systemctl start uuidd.service > /dev/null 2>&1 || :
+fi
+
+%preun -n uuidd
+%systemd_preun uuidd.socket
+%systemd_preun uuidd.service
+
+%postun -n uuidd
+%systemd_postun_with_restart uuidd.socket
+%systemd_postun_with_restart uuidd.service
+
+%triggerpostun -- util-linux < 2.35.1-7
+if [ $1 -gt 1 ] && [ -x /usr/bin/systemctl ] ; then
+        # Enable fstrim.timer for upgrades to F32
+        /usr/bin/systemctl --no-reload preset fstrim.timer || :
+fi
+
+%files -f %{name}.files
+%doc README NEWS AUTHORS
+%doc Documentation/deprecated.txt 
+%{!?_licensedir:%global license %%doc}
+%license Documentation/licenses/*
+%doc misc-utils/getopt-*.{bash,tcsh}
+
+%config(noreplace)	%{_sysconfdir}/pam.d/login
+%config(noreplace)	%{_sysconfdir}/pam.d/remote
+%config(noreplace)	%{_sysconfdir}/pam.d/su
+%config(noreplace)	%{_sysconfdir}/pam.d/su-l
+%config(noreplace)	%{_sysconfdir}/pam.d/runuser
+%config(noreplace)	%{_sysconfdir}/pam.d/runuser-l
+
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/adjtime
+
+%attr(4755,root,root)	%{_bindir}/su
+%attr(755,root,root)	%{_bindir}/login
+%attr(2755,root,tty)	%{_bindir}/write
+
+%{_unitdir}/fstrim.*
+
+%{_bindir}/cal
+%{_bindir}/chmem
+%{_bindir}/choom
+%{_bindir}/col
+%{_bindir}/colcrt
+%{_bindir}/colrm
+%{_bindir}/column
+%{_bindir}/eject
+%{_bindir}/fallocate
+%{_bindir}/fincore
+%{_bindir}/getopt
+%{_bindir}/hexdump
+%{_bindir}/irqtop
+%{_bindir}/isosize
+%{_bindir}/last
+%{_bindir}/lastb
+%{_bindir}/look
+%{_bindir}/lsblk
+%{_bindir}/lscpu
+%{_bindir}/lsipc
+%{_bindir}/lsirq
+%{_bindir}/lslocks
+%{_bindir}/lslogins
+%{_bindir}/lsmem
+%{_bindir}/lsns
+%{_bindir}/mcookie
+%{_bindir}/mesg
+%{_bindir}/namei
+%{_bindir}/prlimit
+%{_bindir}/rename
+%{_bindir}/rev
+%{_bindir}/script
+%{_bindir}/scriptlive
+%{_bindir}/scriptreplay
+%{_bindir}/setarch
+%{_bindir}/setpriv
+%{_bindir}/setterm
+%{_bindir}/ul
+%{_bindir}/utmpdump
+%{_bindir}/uuidgen
+%{_bindir}/uuidparse
+%{_bindir}/wall
+%{_bindir}/wdctl
+%{_bindir}/whereis
+%{_mandir}/man1/cal.1*
+%{_mandir}/man1/choom.1*
+%{_mandir}/man1/col.1*
+%{_mandir}/man1/colcrt.1*
+%{_mandir}/man1/colrm.1*
+%{_mandir}/man1/column.1*
+%{_mandir}/man1/eject.1*
+%{_mandir}/man1/fallocate.1*
+%{_mandir}/man1/fincore.1*
+%{_mandir}/man1/getopt.1*
+%{_mandir}/man1/hexdump.1*
+%{_mandir}/man1/irqtop.1*
+%{_mandir}/man1/last.1*
+%{_mandir}/man1/lastb.1*
+%{_mandir}/man1/login.1*
+%{_mandir}/man1/look.1*
+%{_mandir}/man1/lscpu.1*
+%{_mandir}/man1/lsipc.1*
+%{_mandir}/man1/lsirq.1*
+%{_mandir}/man1/lslogins.1*
+%{_mandir}/man1/lsmem.1*
+%{_mandir}/man1/mcookie.1*
+%{_mandir}/man1/mesg.1*
+%{_mandir}/man1/namei.1*
+%{_mandir}/man1/prlimit.1*
+%{_mandir}/man1/rename.1*
+%{_mandir}/man1/rev.1*
+%{_mandir}/man1/runuser.1*
+%{_mandir}/man1/script.1*
+%{_mandir}/man1/scriptlive.1*
+%{_mandir}/man1/scriptreplay.1*
+%{_mandir}/man1/setpriv.1*
+%{_mandir}/man1/setterm.1*
+%{_mandir}/man1/su.1*
+%{_mandir}/man1/ul.1*
+%{_mandir}/man1/utmpdump.1.gz
+%{_mandir}/man1/uuidgen.1*
+%{_mandir}/man1/uuidparse.1*
+%{_mandir}/man1/wall.1*
+%{_mandir}/man1/whereis.1*
+%{_mandir}/man1/write.1*
+%{_mandir}/man5/fstab.5*
+%{_mandir}/man5/terminal-colors.d.5*
+%{_mandir}/man8/addpart.8*
+%{_mandir}/man8/blkdiscard.8*
+%{_mandir}/man8/blkzone.8*
+%{_mandir}/man8/chcpu.8*
+%{_mandir}/man8/chmem.8*
+%{_mandir}/man8/ctrlaltdel.8*
+%{_mandir}/man8/delpart.8*
+%{_mandir}/man8/fdisk.8*
+%{_mandir}/man8/findfs.8*
+%{_mandir}/man8/fsck.cramfs.8*
+%{_mandir}/man8/fsck.minix.8*
+%{_mandir}/man8/fsfreeze.8*
+%{_mandir}/man8/fstrim.8*
+%{_mandir}/man8/isosize.8*
+%{_mandir}/man8/ldattach.8*
+%{_mandir}/man8/lsblk.8*
+%{_mandir}/man8/lslocks.8*
+%{_mandir}/man8/lsns.8*
+%{_mandir}/man8/mkfs.8*
+%{_mandir}/man8/mkfs.cramfs.8*
+%{_mandir}/man8/mkfs.minix.8*
+%{_mandir}/man8/nologin.8*
+%{_mandir}/man8/pivot_root.8*
+%{_mandir}/man8/readprofile.8*
+%{_mandir}/man8/resizepart.8*
+%{_mandir}/man8/rfkill.8*
+%{_mandir}/man8/rtcwake.8*
+%{_mandir}/man8/setarch.8*
+%{_mandir}/man8/sulogin.8.gz
+%{_mandir}/man8/swaplabel.8*
+%{_mandir}/man8/wdctl.8.gz
+%{_mandir}/man8/wipefs.8*
+%{_mandir}/man8/zramctl.8*
+%{_sbindir}/addpart
+%{_sbindir}/blkdiscard
+%{_sbindir}/blkzone
+%{_sbindir}/chcpu
+%{_sbindir}/ctrlaltdel
+%{_sbindir}/delpart
+%{_sbindir}/fdisk
+%{_sbindir}/findfs
+%{_sbindir}/fsck.cramfs
+%{_sbindir}/fsck.minix
+%{_sbindir}/fsfreeze
+%{_sbindir}/fstrim
+%{_sbindir}/ldattach
+%{_sbindir}/mkfs
+%{_sbindir}/mkfs.cramfs
+%{_sbindir}/mkfs.minix
+%{_sbindir}/nologin
+%{_sbindir}/pivot_root
+%{_sbindir}/readprofile
+%{_sbindir}/resizepart
+%{_sbindir}/rfkill
+%{_sbindir}/rtcwake
+%{_sbindir}/runuser
+%{_sbindir}/sulogin
+%{_sbindir}/swaplabel
+%{_sbindir}/wipefs
+%{_sbindir}/zramctl
+
+%{compldir}/addpart
+%{compldir}/blkdiscard
+%{compldir}/blkzone
+%{compldir}/cal
+%{compldir}/chcpu
+%{compldir}/chmem
+%{compldir}/col
+%{compldir}/colcrt
+%{compldir}/colrm
+%{compldir}/column
+%{compldir}/ctrlaltdel
+%{compldir}/delpart
+%{compldir}/eject
+%{compldir}/fallocate
+%{compldir}/fdisk
+%{compldir}/fincore
+%{compldir}/findfs
+%{compldir}/fsck.cramfs
+%{compldir}/fsck.minix
+%{compldir}/fsfreeze
+%{compldir}/fstrim
+%{compldir}/getopt
+%{compldir}/hexdump
+%{compldir}/irqtop
+%{compldir}/isosize
+%{compldir}/last
+%{compldir}/ldattach
+%{compldir}/look
+%{compldir}/lsblk
+%{compldir}/lscpu
+%{compldir}/lsipc
+%{compldir}/lsirq
+%{compldir}/lslocks
+%{compldir}/lslogins
+%{compldir}/lsmem
+%{compldir}/lsns
+%{compldir}/mcookie
+%{compldir}/mesg
+%{compldir}/mkfs
+%{compldir}/mkfs.cramfs
+%{compldir}/mkfs.minix
+%{compldir}/namei
+%{compldir}/pivot_root
+%{compldir}/prlimit
+%{compldir}/readprofile
+%{compldir}/rename
+%{compldir}/resizepart
+%{compldir}/rev
+%{compldir}/rfkill
+%{compldir}/rtcwake
+%{compldir}/runuser
+%{compldir}/script
+%{compldir}/scriptlive
+%{compldir}/scriptreplay
+%{compldir}/setarch
+%{compldir}/setpriv
+%{compldir}/setterm
+%{compldir}/su
+%{compldir}/swaplabel
+%{compldir}/ul
+%{compldir}/utmpdump
+%{compldir}/uuidgen
+%{compldir}/uuidparse
+%{compldir}/wall
+%{compldir}/wdctl
+%{compldir}/whereis
+%{compldir}/wipefs
+%{compldir}/write
+%{compldir}/zramctl
+
+%ifnarch s390 s390x
+%{_sbindir}/clock
+%{_sbindir}/fdformat
+%{_sbindir}/hwclock
+%{_mandir}/man8/fdformat.8*
+%{_mandir}/man8/hwclock.8*
+%{_mandir}/man8/clock.8*
+%{_mandir}/man5/adjtime_config.5*
+%{compldir}/fdformat
+%{compldir}/hwclock
+%endif
+
+%ifnarch %{sparc}
+%{_sbindir}/cfdisk
+%{_sbindir}/sfdisk
+%{_mandir}/man8/cfdisk.8*
+%{_mandir}/man8/sfdisk.8*
+%{compldir}/cfdisk
+%{compldir}/sfdisk
+%endif
+
+%ifarch %{sparc}
+%{_bindir}/sunhostid
+%endif
+
+
+%files -n util-linux-core
+%ghost %verify(not md5 size mtime) %config(noreplace,missingok) /etc/mtab
+%attr(4755,root,root)	%{_bindir}/mount
+%attr(4755,root,root)	%{_bindir}/umount
+%{_bindir}/chrt
+%{_bindir}/dmesg
+%{_bindir}/findmnt
+%{_bindir}/flock
+%{_bindir}/hardlink
+%{_bindir}/ionice
+%{_bindir}/ipcmk
+%{_bindir}/ipcrm
+%{_bindir}/ipcs
+%{_bindir}/kill
+%{_bindir}/logger
+%{_bindir}/more
+%{_bindir}/mountpoint
+%{_bindir}/nsenter
+%{_bindir}/renice
+%{_bindir}/setsid
+%{_bindir}/taskset
+%{_bindir}/unshare
+%{compldir}/blkid
+%{compldir}/blockdev
+%{compldir}/chrt
+%{compldir}/dmesg
+%{compldir}/findmnt
+%{compldir}/flock
+%{compldir}/fsck
+%{compldir}/hardlink
+%{compldir}/ionice
+%{compldir}/ipcmk
+%{compldir}/ipcrm
+%{compldir}/ipcs
+%{compldir}/logger
+%{compldir}/losetup
+%{compldir}/mkswap
+%{compldir}/more
+%{compldir}/mountpoint
+%{compldir}/nsenter
+%{compldir}/partx
+%{compldir}/renice
+%{compldir}/setsid
+%{compldir}/swapoff
+%{compldir}/swapon
+%{compldir}/taskset
+%{compldir}/unshare
+%{_mandir}/man1/chrt.1*
+%{_mandir}/man1/dmesg.1*
+%{_mandir}/man1/flock.1*
+%{_mandir}/man1/hardlink.1*
+%{_mandir}/man1/ionice.1*
+%{_mandir}/man1/ipcmk.1*
+%{_mandir}/man1/ipcrm.1*
+%{_mandir}/man1/ipcs.1*
+%{_mandir}/man1/kill.1*
+%{_mandir}/man1/logger.1*
+%{_mandir}/man1/more.1*
+%{_mandir}/man1/mountpoint.1*
+%{_mandir}/man1/nsenter.1*
+%{_mandir}/man1/renice.1*
+%{_mandir}/man1/setsid.1*
+%{_mandir}/man1/taskset.1*
+%{_mandir}/man1/unshare.1*
+%{_mandir}/man8/agetty.8*
+%{_mandir}/man8/blkid.8*
+%{_mandir}/man8/blockdev.8*
+%{_mandir}/man8/findmnt.8*
+%{_mandir}/man8/fsck.8*
+%{_mandir}/man8/losetup.8*
+%{_mandir}/man8/mkswap.8*
+%{_mandir}/man8/mount.8*
+%{_mandir}/man8/partx.8*
+%{_mandir}/man8/swapoff.8*
+%{_mandir}/man8/swapon.8*
+%{_mandir}/man8/switch_root.8*
+%{_mandir}/man8/umount.8*
+%{_sbindir}/agetty
+%{_sbindir}/blkid
+%{_sbindir}/blockdev
+%{_sbindir}/fsck
+%{_sbindir}/losetup
+%{_sbindir}/mkswap
+%{_sbindir}/partx
+%{_sbindir}/swapoff
+%{_sbindir}/swapon
+%{_sbindir}/switch_root
+
+
+%files -n util-linux-user
+%config(noreplace)	%{_sysconfdir}/pam.d/chfn
+%config(noreplace)	%{_sysconfdir}/pam.d/chsh
+%attr(4711,root,root)	%{_bindir}/chfn
+%attr(4711,root,root)	%{_bindir}/chsh
+%{_mandir}/man1/chfn.1*
+%{_mandir}/man1/chsh.1*
+%{compldir}/chfn
+%{compldir}/chsh
+
+
+%files -n uuidd
+%{!?_licensedir:%global license %%doc}
+%license Documentation/licenses/COPYING.GPL-2.0-or-later
+%{_mandir}/man8/uuidd.8*
+%{_sbindir}/uuidd
+%{_unitdir}/uuidd.*
+%dir %attr(2775, uuidd, uuidd) /var/lib/libuuid
+%dir %attr(2775, uuidd, uuidd) /run/uuidd
+%{compldir}/uuidd
+%{_tmpfilesdir}/uuidd.conf
+
+
+%files -n libfdisk
+%{!?_licensedir:%global license %%doc}
+%license Documentation/licenses/COPYING.LGPL-2.1-or-later libfdisk/COPYING
+%{_libdir}/libfdisk.so.*
+
+%files -n libfdisk-devel
+%{_libdir}/libfdisk.so
+%{_includedir}/libfdisk
+%{_libdir}/pkgconfig/fdisk.pc
+
+
+%files -n libsmartcols
+%{!?_licensedir:%global license %%doc}
+%license Documentation/licenses/COPYING.LGPL-2.1-or-later libsmartcols/COPYING
+%{_libdir}/libsmartcols.so.*
+
+%files -n libsmartcols-devel
+%{_libdir}/libsmartcols.so
+%{_includedir}/libsmartcols
+%{_libdir}/pkgconfig/smartcols.pc
+
+
+%files -n libmount
+%{!?_licensedir:%global license %%doc}
+%license Documentation/licenses/COPYING.LGPL-2.1-or-later libmount/COPYING
+%{_libdir}/libmount.so.*
+
+%files -n libmount-devel
+%{_libdir}/libmount.so
+%{_includedir}/libmount
+%{_libdir}/pkgconfig/mount.pc
+
+
+%files -n libblkid
+%doc libblkid/COPYING
+%{_libdir}/libblkid.so.*
+
+%files -n libblkid-devel
+%doc libblkid/COPYING
+%{_libdir}/libblkid.so
+%{_includedir}/blkid
+%{_mandir}/man3/libblkid.3*
+%{_libdir}/pkgconfig/blkid.pc
+
+
+%files -n libuuid
+%{!?_licensedir:%global license %%doc}
+%license Documentation/licenses/COPYING.BSD-3-Clause libuuid/COPYING
+%{_libdir}/libuuid.so.*
+
+%files -n libuuid-devel
+%{_libdir}/libuuid.so
+%{_includedir}/uuid
+%{_mandir}/man3/uuid.3*
+%{_mandir}/man3/uuid_clear.3*
+%{_mandir}/man3/uuid_compare.3*
+%{_mandir}/man3/uuid_copy.3*
+%{_mandir}/man3/uuid_generate.3*
+%{_mandir}/man3/uuid_generate_random.3*
+%{_mandir}/man3/uuid_generate_time.3*
+%{_mandir}/man3/uuid_generate_time_safe.3*
+%{_mandir}/man3/uuid_is_null.3*
+%{_mandir}/man3/uuid_parse.3*
+%{_mandir}/man3/uuid_time.3*
+%{_mandir}/man3/uuid_unparse.3*
+%{_libdir}/pkgconfig/uuid.pc
+
+%files -n %{pypkg}-libmount
+%{!?_licensedir:%global license %%doc}
+%license Documentation/licenses/COPYING.LGPL-2.1-or-later libmount/COPYING
+%{_libdir}/python*/site-packages/libmount/
+
+%changelog
+* Wed Aug 24 2022 Karel Zak <kzak@redhat.com> 2.37.4-9
+- improve lslogins pasword validator (related #2094216)
+
+* Mon Aug 15 2022 Karel Zak <kzak@redhat.com> 2.37.4-8
+- remove unnecessary patches (#2117203)
+
+* Fri Aug 12 2022 Karel Zak <kzak@redhat.com> 2.37.4-7
+- improve loop overlay test (#2117203)
+
+* Wed Aug 10 2022 Karel Zak <kzak@redhat.com> 2.37.4-6
+- fix #2094216 - lslogins reports incorrect "Password is locked" status
+- fix #2117203 - loop-overlay test failed
+
+* Fri Jul 22 2022 Karel Zak <kzak@redhat.com> 2.37.4-5
+- cleanup spec file build requiremnts
+
+* Thu Jul 21 2022 Karel Zak <kzak@redhat.com> 2.37.4-4
+- fix #2079652 - remove uclampset, unsupported by RHEL kernel
+- fix #2094216 - lslogins reports incorrect "Password is locked" status
+- fix #2092943 - uuidd time based UUIDs are without MAC address
+- fix #2074486 - wipefs to erase all available signatures against read only rom
+- fix #2064810 - RFE: complete libblkid FSSIZE implementation
+- fix #2078787 - Activity "lsirq -s column" produces wrong result i.e. not sorting properly. 
+- fix #2076829 - dmesg new option "--since" is not working if timestamp format is not provided
+- fix #2109459 - fix compiler warnings/errors
+
+* Thu Feb 24 2022 Karel Zak <kzak@redhat.com> 2.37.4-3
+- fix #2057046 - wdctl not picking up reboot reason flag
+
+* Thu Feb 17 2022 Karel Zak <kzak@redhat.com> 2.37.4-2
+- improve bugfix for #2047952, fix warnings from rpminspect
+
+* Wed Feb 16 2022 Karel Zak <kzak@redhat.com> 2.37.4-1
+- upgrade to v2.37.4 (fix CVE-2022-0563)
+
+* Mon Feb 07 2022 Karel Zak <kzak@redhat.com> 2.37.3-2
+- fix #2021462 - partitons detection broken on systems not including the parent name in partition name
+- fix #2033622 - logger from util-linux incorrectly handles long messages
+- fix #2000137 - pam_env bypassed for root user when using su
+- fix #2000477 - rpm -V setup fail on /var/log/lastlog
+- fix #2047952 - rpm -V / --verify reports bad user/group/mtime for /run/uuidd
+
+* Tue Jan 25 2022 Karel Zak <kzak@redhat.com> 2.37.3-1
+- upgrade to v2.37.3 (fix CVE-2021-3996, CVE-2021-3995)
+- fix #2040366 - uuidd can't access lock/status file
+
+* Thu Jan 06 2022 Karel Zak <kzak@redhat.com> 2.37.2-3
+- fix #2037212 - Complete Linux-PAM compliance for forked child in su and login
+
+* Mon Aug 23 2021 Karel Zak <kzak@redhat.com> - 2.37.2-2
+- cleanup previous rebase (fix #1969348)
+- integrate upstream tests to CI
+
+* Fri Aug 20 2021 Karel Zak <kzak@redhat.com> - 2.37.2-1
+- upgrade to v2.37.2 (fix #1969348)
+
+* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com>
+- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
+  Related: rhbz#1991688
+
+* Fri Jul 23 2021 Karel Zak <kzak@redhat.com> - 2.37.1-1
+- upgrade to v2.37.1 (fix #1984900, #1971989, and #1938894)
+- fix #1984771 - disable raw
+
+* Tue Jun  8 2021 Karel Zak <kzak@redhat.com> - 2.37-1
+- upgrade to v2.37
+- introduce util-linux-core subpackage
+
+* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com>
+- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
+
+* Fri Feb 12 2021 Karel Zak <kzak@redhat.com> - 2.36.2-1
+- upgrade to stable upstream 2.36.2
+  https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.36/v2.36.2-ReleaseNotes
+
+* Wed Jan 27 2021 Kelvin Fan <kfan@redhat.com> - 2.36.1-4
+- Add patch to add /run/motd.d to default MOTD_FILE in login(1)
+
+* Thu Jan 14 2021 Karel Zak <kzak@redhat.com> - 2.36.1-3
+- improve uuidd scriptlets (fix #1767553)
+
+* Thu Nov 19 2020 Karel Zak <kzak@redhat.com> - 2.36.1-2
+- remove unused patches
+- remove versions and seq.numbers from patch names
+- fix mount "symfollow" issue (upstream patch)
+
+* Mon Nov 16 2020 Karel Zak <kzak@redhat.com> - 2.36.1-1
+- upgrade to stable upstream 2.36.1
+
+* Thu Nov 12 2020 Tom Stellard <tstellar@redhat.com> - 2.36-4
+- Use make macros
+- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
+
+* Tue Sep 01 2020 Karel Zak <kzak@redhat.com> - 2.36-3
+- remove mountinfo workaround (unnecessary for kernel 5.8)
+- fix #1860461 - sfdisk regression creating simple 3 partition MBR disk
+
+* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.36-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
+* Thu Jul 23 2020 Karel Zak <kzak@redhat.com> - 2.36-1
+- upgrade to upstream release v2.36
+  https://www.kernel.org/pub/linux/utils/util-linux/v2.36/v2.36-ReleaseNotes
+- add irqtop and lsirq commands
+
+* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 2.35.2-2
+- Rebuilt for Python 3.9
+
+* Wed May 20 2020 Karel Zak <kzak@redhat.com> - 2.35.2-1
+- upgrade to upstream bug fix release 2.35.2
+  https://www.kernel.org/pub/linux/utils/util-linux/v2.35/v2.35.2-ReleaseNotes
+
+* Wed Apr 15 2020 Karel Zak <kzak@redhat.com> - 2.35.1-9
+- fix copy & past bug in specfile changelog
+
+* Wed Apr 15 2020 Karel Zak <kzak@redhat.com> - 2.35.1-8
+- fix #1822226 - remove pam_console dependency
+- fix #1823463 - hwclock unable to set system time
+
+* Tue Mar 24 2020 Kalev Lember <klember@redhat.com> - 2.35.1-7
+- Another attempt at enabling fstrim.timer on F32 upgrades (#1811506)
+
+* Thu Mar 19 2020 Karel Zak <kzak@redhat.com> - 2.35.1-6
+- fix #1811506 (triggerpostun)
+
+* Tue Feb 25 2020 Karel Zak <kzak@redhat.com> - 2.35.1-5
+- fix lsblk -P output for RAIDs, etc.
+
+* Thu Feb 06 2020 Karel Zak <kzak@redhat.com> - 2.35.1-4
+- add triggerpostun for fstrim.timer (#1785041, FESCo #2309)
+
+* Tue Feb 04 2020 Karel Zak <kzak@redhat.com> - 2.35.1-3
+- fix fstrim.service (util-linux github #948)
+
+* Tue Feb 04 2020 Karel Zak <kzak@redhat.com> - 2.35.1-2
+- fix sfdisk dump issue (util-linux github #949)
+
+* Mon Feb 03 2020 Karel Zak <kzak@redhat.com> - 2.35.1-1
+- upgrade to upstream bug fix release 2.35.1
+
+* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.35-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
+* Tue Jan 21 2020 Karel Zak <kzak@redhat.com> - 2.35-1
+- upgrade to v2.35
+
+* Thu Jan 9 2020 Karel Zak <kzak@redhat.com> - 2.35-0.5
+- upgrade to v2.35-rc2
+
+* Fri Dec 20 2019 Karel Zak <kzak@redhat.com> - 2.35-0.4
+- fix #1784536 - Segfaults in agetty during Cloud image testing
+
+* Fri Dec 20 2019 Karel Zak <kzak@redhat.com> - 2.35-0.3
+- upgrade to the upstream git snapshot (v2.35-rc1-20-g63f8c66af)
+- fix #1783066 - Fedora-Rawhide images do not boot
+
+* Thu Dec 12 2019 Adam Williamson <awilliam@redhat.com> - 2.35-0.2
+- Revert upstream commit 7ef86a0 to fix RHBZ #1783066
+
+* Wed Dec 11 2019 Karel Zak <kzak@redhat.com> - 2.35-0.1
+- upgrade to v2.35-rc1
+  https://www.kernel.org/pub/linux/utils/util-linux/v2.35/v2.35-ReleaseNotes
+
+* Fri Sep 13 2019 Karel Zak <kzak@redhat.com> - 2.34-6
+- fix https://github.com/systemd/systemd/issues/10872
+
+* Thu Sep 12 2019 Karel Zak <kzak@redhat.com> - 2.34-5
+- fix #1751290 - regression: lsblk not showing PKNAME in f31+
+
+* Thu Sep 05 2019 Karel Zak <kzak@redhat.com> - 2.34-4
+- add BuildRequires: readline for fdisks
+
+* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 2.34-3
+- Rebuilt for Python 3.8
+
+* Wed Jul 24 2019 Karel Zak <kzak@redhat.com> - 2.34-2
+- fix lscpu compilation on ppc
+
+* Fri Jun 14 2019 Karel Zak <kzak@redhat.com> - 2.34-1
+- upgrade to v2.34
+
+* Thu May 30 2019 Karel Zak <kzak@redhat.com> - 2.34-0.2
+- upgrade to v2.34-rc2
+
+* Tue Apr 30 2019 Karel Zak <kzak@redhat.com> - 2.34-0.1
+- add command hardlink(1) (merged into util-linux upstream)
+- upgrade to v2.34-rc1
+  http://www.kernel.org/pub/linux/utils/util-linux/v2.34/v2.34-ReleaseNotes
+
+* Tue Apr  9 2019 Karel Zak <kzak@redhat.com> - 2.33.2-1
+- upgrade to v2.33.2
+  https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.33/v2.33.2-ReleaseNotes
+
+* Thu Mar 07 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 2.33.1-4
+- Remove obsolete scriptlets
+
+* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.33.1-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
+
+* Mon Jan 14 2019 Björn Esser <besser82@fedoraproject.org> - 2.33.1-2
+- Rebuilt for libcrypt.so.2 (#1666033)
+
+* Wed Jan  9 2019 Karel Zak <kzak@redhat.com> - 2.33.1-1
+- upgrade to v2.33.1
+  https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.33/v2.33.1-ReleaseNotes
+
+* Thu Nov  1 2018 Karel Zak <kzak@redhat.com> - 2.33-0.1
+- Remove ldconfig scriptlet, now done via. transfiletrigger in glibc [James Antill]
+- upgrade to v2.33-rc2
+  http://www.kernel.org/pub/linux/utils/util-linux/v2.33/v2.33-ReleaseNotes
+
+* Mon Jul 16 2018 Karel Zak <kzak@redhat.com> - 2.32.1-1
+- upgrade to v2.32.1
+  http://www.kernel.org/pub/linux/utils/util-linux/v2.32/v2.32.1-ReleaseNotes
+
+* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.32-7
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
+
+* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2.32-6
+- Rebuilt for Python 3.7
+
+* Fri May 18 2018 Karel Zak <kzak@redhat.com> - 2.32-5
+- move /etc/adjtime config from initscripts to util-linux
+
+* Wed Apr 11 2018 Karel Zak <kzak@redhat.com> - 2.32-4
+- fix #1560642 - uuidd.service does not start
+
+* Tue Apr 10 2018 Karel Zak <kzak@redhat.com> - 2.32-3
+- remove unused build option --enable-libmount-force-mountinfo (it's default now)
+
+* Tue Mar 27 2018 Karel Zak <kzak@redhat.com> - 2.32-2
+- fix #1560283 - column does not properly handle spaces at beginning of tab-separated table columns
+
+* Wed Mar 21 2018 Karel Zak <kzak@redhat.com> - 2.32-1
+- upgrade to v2.32
+
+* Tue Feb 20 2018 Karel Zak <kzak@redhat.com> - 2.32-0.2
+- add BuildRequires gcc
+
+* Tue Feb 13 2018 Karel Zak <kzak@redhat.com> - 2.32-0.1
+- upgrade to v2.32-rc1
+  http://www.kernel.org/pub/linux/utils/util-linux/v2.32/v2.32-ReleaseNotes
+
+* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.31-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Sat Jan 20 2018 Björn Esser <besser82@fedoraproject.org> - 2.31-4
+- Rebuilt for switch to libxcrypt
+
+* Wed Jan 03 2018 Lumír Balhar <lbalhar@redhat.com> - 2.31-3
+- Fix directory ownership in python subpackage
+
+* Mon Oct 30 2017 Karel Zak <kzak@redhat.com> - 2.31-2
+- fix dmesg for multi-line records
+
+* Mon Oct 23 2017 Karel Zak <kzak@redhat.com> - 2.31-1
+- upgrade to final v2.31
+- move rfkill to sbin (for backward compatibility)
+
+* Mon Oct  9 2017 Karel Zak <kzak@redhat.com> - 2.31-0.4
+- fix build error
+
+* Mon Oct  9 2017 Karel Zak <kzak@redhat.com> - 2.31-0.3
+- upgrade to v2.31-rc2
+- enable rfkill
+
+* Mon Sep 25 2017 Karel Zak <kzak@redhat.com> - 2.31-0.2
+- temporary disable rfkill (fix #1494855)
+
+* Fri Sep 22 2017 Karel Zak <kzak@redhat.com> - 2.31-0.1
+- upgrade to v2.31-rc1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.31/v2.31-ReleaseNotes
+
+* Fri Sep 22 2017 Karel Zak <kzak@redhat.com> - 2.30.2-1
+- upgrade to v2.30.2
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.30/v2.30.2-ReleaseNotes
+
+* Mon Aug 14 2017 Karel Zak <kzak@redhat.com> - 2.30.1-5
+- make ln-s usage more robust
+
+* Fri Aug  4 2017 Karel Zak <kzak@redhat.com> - 2.30.1-4
+- fix post install script
+
+* Wed Aug  2 2017 Karel Zak <kzak@redhat.com> - 2.30.1-3
+- fix #1390191 - systemd read-only container produces errors
+
+* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.30.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Thu Jul 20 2017 Karel Zak <kzak@redhat.com> - 2.30.1-1
+- upgrade to v2.30.1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.30/v2.30.1-ReleaseNotes
+
+* Fri Jun  2 2017 Karel Zak <kzak@redhat.com> - 2.30-1
+- upgrade to v2.30
+
+* Wed May 17 2017 Karel Zak <kzak@redhat.com> - 2.30-0.1
+- upgrade to v2.30-rc1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.30/v2.30-ReleaseNotes
+
+* Fri Feb 24 2017 Karel Zak <kzak@redhat.com> - 2.29.2-1
+- upgrade to v2.29.2
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.29/v2.29.2-ReleaseNotes
+
+* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.29.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Fri Jan 20 2017 Karel Zak <kzak@redhat.com> - 2.29.1-1
+- upgrade to v2.29.1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.29/v2.29.1-ReleaseNotes
+
+* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 2.29-2
+- Rebuild for Python 3.6
+
+* Tue Nov  8 2016 Karel Zak <kzak@redhat.com> - 2.29-1
+- upgrade to v2.29
+
+* Wed Oct 19 2016 Karel Zak <kzak@redhat.com> - 2.29-0.2
+- upgrade to v2.29-rc2
+
+* Fri Sep 30 2016 Karel Zak <kzak@redhat.com> - 2.29-0.1
+- upgrade to v2.29-rc1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.29/v2.29-ReleaseNotes
+
+* Wed Sep  7 2016 Karel Zak <kzak@redhat.com> - 2.28.2-1
+- upgrade to stable 2.28.2
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.28/v2.28.2-ReleaseNotes
+
+* Thu Aug 18 2016 Karel Zak <kzak@redhat.com> - 2.28.1-1
+- upgrade to stable 2.28.1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.28/v2.28.1-ReleaseNotes
+
+* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.28-4
+- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
+
+* Mon Jun 13 2016 Karel Zak <kzak@redhat.com> - 2.28-3
+- fix #1234317 - CD / DVD are rarely automounted
+
+* Tue Apr 26 2016 Karel Zak <kzak@redhat.com> - 2.28-2
+- refresh login-lastlog-create.patch
+
+* Tue Apr 12 2016 Karel Zak <kzak@redhat.com> - 2.28-1
+- upgrade to stable v2.28
+
+* Wed Mar 30 2016 Karel Zak <kzak@redhat.com> - 2.28-0.3
+- fix libblkid
+
+* Tue Mar 29 2016 Karel Zak <kzak@redhat.com> - 2.28-0.2
+- upgrade to v2.28-rc2
+
+* Tue Mar 22 2016 Karel Zak <kzak@redhat.com> - 2.28-0.1
+- upgrade to v2.28-rc1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.28/v2.28-ReleaseNotes
+- add patch to fix broken swapon
+- add subpackage util-linux-user (utils with dependence on libuser)
+
+* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.27.1-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Mon Jan 18 2016 Karel Zak <kzak@redhat.com> - 2.27.1-4
+- fix #1299255 - boot.iso (from 20160117 Rawhide compose) incorrectly detected as minix FS
+
+* Wed Nov 18 2015 Karel Zak <kzak@redhat.com> - 2.27.1-3
+- fix #1259745 - Can't start installation in Rawhide or F23 recent development images
+
+* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.27.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
+
+* Mon Nov  2 2015 Karel Zak <kzak@redhat.com> - 2.27.1
+- upgrade to v2.27.1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.27/v2.27.1-ReleaseNotes
+
+* Mon Sep  7 2015 Karel Zak <kzak@redhat.com> - 2.27
+- upgrade to v2.27
+
+* Mon Aug 24 2015 Karel Zak <kzak@redhat.com> - 2.27-0.4
+- upgrade to v2.27-rc2
+
+* Thu Aug 13 2015 Karel Zak <kzak@redhat.com> - 2.27-0.3
+- improve version usage in source url
+
+* Wed Aug 12 2015 Karel Zak <kzak@redhat.com> - 2.27-0.2
+- fix #1251320 - rfe: please change login to not add /bin:/sbin to $PATH
+- apply patches from Lokesh Mandvekar to make spec file more portable
+
+* Fri Jul 31 2015 Karel Zak <kzak@redhat.com> - 2.27-0.1
+- upgrade to v2.27-rc1
+  http://ftp.kernel.org/pub/linux/utils/util-linux/v2.27/v2.27-ReleaseNotes
+- add lsipc
+
+* Thu Jul 16 2015 Karel Zak <kzak@redhat.com> - 2.26.2-3
+- fix dates in the spec file
+
+* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.26.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Thu Apr 30 2015 Karel Zak <kzak@redhat.com> - 2.26.2-1
+- upgrade to stable release 2.26.2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.26/v2.26.2-ReleaseNotes
+
+* Sat Feb 21 2015 Till Maas <opensource@till.name> - 2.26-2
+- Rebuilt for Fedora 23 Change
+  https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
+
+* Thu Feb 19 2015 Karel Zak <kzak@redhat.com> 2.26-1
+- upgrade to stable release 2.26
+
+* Tue Feb 10 2015 Karel Zak <kzak@redhat.com> 2.26-0.4
+- fix setarch build on PPC
+
+* Thu Feb 5 2015 Karel Zak <kzak@redhat.com> 2.26-0.3
+- upgrade to 2.26-rc2
+
+* Fri Jan 16 2015 Karel Zak <kzak@redhat.com> 2.26-0.2
+- fix 1182778 - remount causes ro / and /home on boot
+
+* Thu Jan 15 2015 Karel Zak <kzak@redhat.com> 2.26-0.1
+- upgrade to 2.26-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.26/v2.26-ReleaseNotes
+- build with -pie for uuidd
+- new command zramctl
+
+* Thu Nov 27 2014 Karel Zak <kzak@redhat.com> 2.25.2-2
+- fix #1168490 - CVE-2014-9114 util-linux: command injection flaw in blkid
+
+* Fri Oct 24 2014 Karel Zak <kzak@redhat.com> 2.25.2-1
+- upgrade to stable 2.25.2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.25/v2.25.2-ReleaseNotes
+
+* Wed Sep  3 2014 Karel Zak <kzak@redhat.com> 2.25.1-1
+- upgrade to stable 2.25.1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.25/v2.25.1-ReleaseNotes
+
+* Wed Aug 27 2014 Karel Zak <kzak@redhat.com> 2.25.1-0.1
+- upgrade to release 2.25.1-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.25/v2.25.1-ReleaseNotes
+
+* Mon Aug 18 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.25-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Wed Aug  6 2014 Tom Callaway <spot@fedoraproject.org> 2.25-3
+- fix license handling
+
+* Thu Jul 24 2014 Karel Zak <kzak@redhat.com> 2.25-2
+- remove fstrim unit files from uuidd subpackage
+
+* Tue Jul 22 2014 Karel Zak <kzak@redhat.com> 2.25-1
+- upgrade to stable release 2.25
+
+* Wed Jul 02 2014 Karel Zak <kzak@redhat.com> 2.25-0.3
+- upgrade to release 2.25-rc2
+
+* Wed Jun 25 2014 Peter Jones <pjones@redhat.com> - 2.25-0.2
+- Fix libblkid's squashfs probe return checking.
+  Related: rhbz#1112315
+
+* Thu Jun 19 2014 Karel Zak <kzak@redhat.com> 2.25-0.1
+- upgrade to release 2.25-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.25/v2.25-ReleaseNotes
+
+* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.24.2-6
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Wed May 28 2014 Kalev Lember <kalevlember@gmail.com> - 2.24.2-5
+- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4
+
+* Mon May 12 2014 Karel Zak <kzak@redhat.com> 2.24.2-4
+- fix #1094935 - script and/or trigger should not directly enable systemd units
+
+* Mon May 12 2014 Karel Zak <kzak@redhat.com> 2.24.2-3
+- fix #1090638 - remove pam_securetty.so from .pamd files
+
+* Wed May  7 2014 Karel Zak <kzak@redhat.com> 2.24.2-2
+- use systemd macroized scriptlets (#850355)
+
+* Thu Apr 24 2014 Karel Zak <kzak@redhat.com> 2.24.2-1
+- upgrade to stable release 2.24.2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.24/v2.24.2-ReleaseNotes
+
+* Thu Jan 30 2014 Karel Zak <kzak@redhat.com> 2.24.1-2
+- use rpm autosetup
+
+* Mon Jan 20 2014 Karel Zak <kzak@redhat.com> 2.24.1-1
+- upgrade to stable release 2.24.1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.24/v2.24.1-ReleaseNotes
+
+* Mon Nov 18 2013 Karel Zak <kzak@redhat.com> 2.24-2
+- fix #1031262 - lsblk -D segfault
+
+* Wed Oct 23 2013 Karel Zak <kzak@redhat.com> 2.24-1
+- upgrade to upstream release v2.24
+- remove nologin (merged upstream)
+- fix #1022217 - fdisk mishandles GPT corruption
+
+* Fri Sep 27 2013 Karel Zak <kzak@redhat.com> 2.24-0.1
+- upgrade to upstream release v2.24-rc1
+- add python3 libmount binding
+
+* Mon Sep  9 2013 Karel Zak <kzak@redhat.com> 2.23.2-4
+- fix #1005566 - recount_geometry: Process /usr/sbin/fdisk was killed by signal 8 (SIGFPE)
+- fix #1005194 - su generates incorrect log entries
+
+* Mon Sep  9 2013 Karel Zak <kzak@redhat.com> 2.23.2-3
+- refresh and rename patches
+- fix #987787 - Remove lastlogin from su
+- fix #950497 - problem umounting loop device
+- fix #921498 - multiple internal testsuite failures
+
+* Thu Aug  1 2013 Karel Zak <kzak@redhat.com> 2.23.2-2
+- fix 990083 - su doesn't work with pam_ecryptfs
+
+* Wed Jul 31 2013 Karel Zak <kzak@redhat.com> 2.23.2-1
+- upgrade to stable release 2.23.2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.23/v2.23.2-ReleaseNotes
+
+* Thu Jun 13 2013 Karel Zak <kzak@redhat.com> 2.23.1-3
+- fix #972457 - agetty idle I/O polling causes elevated CPU usage
+
+* Wed Jun  5 2013 Karel Zak <kzak@redhat.com> 2.23.1-2
+- fix #962145 - in.telnetd immediately closes connection
+
+* Tue May 28 2013 Karel Zak <kzak@redhat.com> 2.23.1-1
+- upgrade to 2.23.1
+- backport agetty --local-line path
+
+* Thu Apr 25 2013 Karel Zak <kzak@redhat.com> 2.23-1
+- upgrade to 2.23
+- add --with check to call make check
+
+* Mon Apr 15 2013 Karel Zak <kzak@redhat.com> 2.23-0.7
+- remove unused patches
+
+* Mon Apr 15 2013 Karel Zak <kzak@redhat.com> 2.23-0.6
+- remove floppy from util-linux
+
+* Fri Apr 12 2013 Karel Zak <kzak@redhat.com> 2.23-0.5
+- fix #948274 - interruption code 0x4003B in libmount.so.1.1.0
+
+* Wed Apr 10 2013 Karel Zak <kzak@redhat.com> 2.23-0.4
+- upgrade to the release 2.23-rc2
+
+* Wed Mar 27 2013 Karel Zak <kzak@redhat.com> 2.23-0.3
+- libblkid ntfs bugfix for build on s390
+
+* Wed Mar 27 2013 Karel Zak <kzak@redhat.com> 2.23-0.2
+- add upstream patches for to fix umount and mount.<type>
+
+* Fri Mar 22 2013 Karel Zak <kzak@redhat.com> 2.23-0.1
+- upgrade to the release 2.23-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.23/v2.23-ReleaseNotes
+- add nsenter and blkdiscard
+- remove tunelp
+
+* Wed Feb 20 2013 Karel Zak <kzak@redhat.com> 2.22.2-6
+- fix  #912778 - "runuser -l" doesn't register session to systemd
+
+* Tue Feb 19 2013 Karel Zak <kzak@redhat.com> 2.22.2-5
+- fix #902512 - Dependency failed for /home (and blkid fails to tell UUID)
+- refresh old patches
+
+* Wed Feb  6 2013 Karel Zak <kzak@redhat.com> 2.22.2-4
+- improve convertion to mtab symlink in post script
+- spec file cleanup (based on #894199)
+
+* Sun Feb  3 2013 Karel Zak <kzak@redhat.com> 2.22.2-3
+- fix #882305 - agetty: unstable /dev/tty* permissions
+- fix #885314 - hexdump segfault
+- fix #896447 - No newlines in piped "cal" command
+- fix libblkid cache usage (upstream patch)
+- fix #905008 - uuidd: /usr/sbin/uuidd has incorrect file permissions
+
+* Tue Jan 15 2013 Karel Zak <kzak@redhat.com> 2.22.2-2
+- fix #889888 - wipefs does not completely wipe btrfs volume
+
+* Thu Dec 13 2012 Karel Zak <kzak@redhat.com> 2.22.2-1
+- upgrade to upstream maintenance release 2.22.2
+
+* Mon Nov 19 2012 Karel Zak <kzak@redhat.com> 2.22.1-5
+- sources cleanup
+
+* Fri Nov 16 2012 Karel Zak <kzak@redhat.com> 2.22.1-4
+- fix #872787 - su: COMMAND not specified
+
+* Thu Nov  1 2012 Karel Zak <kzak@redhat.com> 2.22.1-3
+- backport upstream runuser(1)
+- enable su(1)
+
+* Thu Nov  1 2012 Karel Zak <kzak@redhat.com> 2.22.1-2
+- apply pathes from upstream stable/v2.22 branch
+- fix #865961 - wipefs -a should use O_EXCL
+
+* Wed Oct 10 2012 Karel Zak <kzak@redhat.com> 2.22.1-1
+- upgrade to the release 2.22.1
+
+* Wed Oct  3 2012 Karel Zak <kzak@redhat.com> 2.22-2
+- remove obsolete references to e2fsprogs
+
+* Thu Sep  6 2012 Karel Zak <kzak@redhat.com> 2.22-1
+- upgrade to the release 2.22
+- enable eject(1) from util-linux, obsolete original eject package
+- fix #853164 - setuid program should have full RELRO
+- fix #851230 - probe_ntfs: /usr/sbin/blkid was killed by SIGSEGV
+
+* Thu Aug 16 2012 Karel Zak <kzak@redhat.com> 2.22-0.1
+- upgrade to the release 2.22-rc2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.22/v2.22-ReleaseNotes
+- add sulogin, utmpdump, lslocks, wdctl
+
+* Fri Jul 27 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.21.2-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Wed Jun 13 2012 Karel Zak <kzak@redhat.com> 2.21.2-2
+- replace udev dependenceis with systemd
+
+* Fri May 25 2012 Karel Zak <kzak@redhat.com> 2.21.2-1
+- upgrade to bugfix release 2.21.2
+- fix #814699 - namei(1) incorrectly resolves relative symlinks
+- fix #820707 - Impossible to unmount nfsv4/krb5 mounts after network disconnect
+- fix #816877 - libmount does not close device fd before mount(2)
+- fix #822705 - unable to login after installing
+
+* Fri Mar 30 2012 Karel Zak <kzak@redhat.com> 2.21.1-1
+- upgrade to bugfix release 2.21.1
+
+* Fri Feb 24 2012 Karel Zak <kzak@redhat.com> 2.21-1
+- upgrade to release 2.21
+
+* Thu Feb 09 2012 Karel Zak <kzak@redhat.com> 2.21-0.2
+- fix #788703 - /run/blkid does not exist
+
+* Tue Feb 07 2012 Karel Zak <kzak@redhat.com> 2.21-0.1
+- upgrade to the release 2.21-rc2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.21/v2.21-ReleaseNotes
+- add {fsck,mkfs}.minix
+- add new command chcpu(8)
+- add new command prlimit(1)
+- enable raw(8) command
+- move 60-raw.rules from /etc from /usr/lib/udev/rules.d
+- move blkid cache from etc to /run/blkid
+
+* Wed Jan 25 2012 Harald Hoyer <harald@redhat.com> 2.20.1-5
+- install everything in /usr
+  https://fedoraproject.org/wiki/Features/UsrMove
+
+* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.20.1-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+
+* Tue Nov 22 2011 Karel Zak <kzak@redhat.com> 2.20.1-3
+- fix #748216 - util-linux requires pam >= 1.1.3-7
+- remove ddate(1)
+
+* Wed Oct 26 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.20.1-2
+- Rebuilt for glibc bug#747377
+
+* Thu Oct 20 2011 Karel Zak <kzak@redhat.com> 2.20.1-1
+- upgrade to the release 2.20.1
+  ftp://ftp.infradead.org/pub/util-linux/v2.20/v2.20.1-ReleaseNotes
+
+* Mon Aug 29 2011 Karel Zak <kzak@redhat.com> 2.20-1
+- upgrade to the release 2.20
+
+* Wed Aug 17 2011 Karel Zak <kzak@redhat.com> 2.20-0.2
+- upgrade to the release 2.20-rc2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.20/v2.20-rc2-ChangeLog
+
+* Tue Aug  2 2011 Karel Zak <kzak@redhat.com> 2.20-0.1
+- upgrade to the release 2.20-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.20/v2.20-ReleaseNotes
+
+* Mon Jul  4 2011 Karel Zak <kzak@redhat.com> 2.19.1-2
+- fix #716483 - /var/tmp --(BIND-mounted)--> /tmp disrupts/hangs bootup
+- fix #709681 - failure to mount if a mount point ends with a slash in /etc/fstab
+- fix #709319 - 'mount -a' mounts already mounted directories
+- fix kernel version parsing
+
+* Fri May  6 2011 Karel Zak <kzak@redhat.com> 2.19.1-1
+- upgrade to the release 2.19.1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/v2.19.1-ReleaseNotes
+
+* Wed Apr 20 2011 Karel Zak <kzak@redhat.com> 2.19.1-0.1
+- upgrade to the release 2.19.1-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/v2.19.1-rc1-ChangeLog
+
+* Mon Mar  7 2011 Karel Zak <kzak@redhat.com> 2.19-2
+- fix #682502 - Broken source URL to floppy tarball, new version available
+- upgrade to floppy-0.18
+
+* Thu Feb 10 2011 Karel Zak <kzak@redhat.com> 2.19-1
+- upgrade to the release 2.19
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/v2.19-ReleaseNotes
+- remove /sbin/mount.tmpfs -- integrated to mount(8)
+
+* Tue Feb  8 2011 Karel Zak <kzak@redhat.com> 2.19-0.6
+- fix #665062 - add support for the postlogin PAM stack to util-linux-ng
+
+* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.19-0.5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Tue Jan 25 2011 Karel Zak <kzak@redhat.com> 2.19-0.4
+- upgrade to the release 2.19-rc3
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/v2.19-rc3-ChangeLog
+
+* Tue Jan 25 2011 Karel Zak <kzak@redhat.com> 2.19-0.3
+- upgrade to the release 2.19-rc2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/v2.19-rc2-ChangeLog
+- fix #671893 - SELinux is preventing /bin/chown from 'setattr' accesses
+  on the file mounts.
+
+* Wed Jan 19 2011 Karel Zak <kzak@redhat.com> 2.19-0.2
+- clean up specfile (review #667416)
+
+* Wed Jan  5 2011 Karel Zak <kzak@redhat.com> 2.19-0.1
+- upgrade to the release 2.19-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux/v2.19/v2.19-ReleaseNotes
+
+* Tue Oct 26 2010 Karel Zak <kzak@redhat.com> 2.18-5
+- fix #645640 - new "-s" parameter parsing in agetty does not work
+- add -l (lock) support to fsck
+
+* Wed Aug 18 2010 Karel Zak <kzak@redhat.com> 2.18-4
+- fix #623685 - please extend agetty to not require a baud rate to be specified
+
+* Thu Aug  5 2010 Karel Zak <kzak@redhat.com> 2.18-3
+- fix #620924 - /sbin/mount.tmpfs uses not available /usr/bin/id
+
+* Mon Aug  2 2010 Karel Zak <kzak@redhat.com> 2.18-2
+- fix #615719 - tmpfs mount fails with 'user' option.
+- fix #598631 - shutdown, reboot, halt and C-A-D don't work
+- fix #618957 - ISO images listed in fstab are mounted twice at boot
+
+* Wed Jun 30 2010 Karel Zak <kzak@redhat.com> 2.18-1
+- upgrade to the final 2.18
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-ReleaseNotes
+ 
+* Fri Jun 18 2010 Karel Zak <kzak@redhat.com> 2.18-0.2
+- upgrade to 2.18-rc2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-rc2-ChangeLog
+
+* Tue Jun  8 2010 Karel Zak <kzak@redhat.com> 2.18-0.1
+- upgrade to the release 2.18-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-ReleaseNotes
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.18/v2.18-rc1-ChangeLog
+
+* Mon Apr 12 2010 Karel Zak <kzak@redhat.com> 2.17.2-1
+- fix #581252 - remounting tmpfs fails because of hidden rootcontext=
+- fix #580296 - "rtcwake" does miss the "off" option
+- fix #575734 - use microsecond resolution for blkid cache entries
+- upgrade to the bugfix release 2.17.2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.2-ReleaseNotes
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.2-ChangeLog
+- minor fixed in spec file
+
+* Thu Mar 11 2010 Karel Zak <kzak@redhat.com> 2.17.1-2
+- fix #533874 - libblkid should allow scanning of slow devices (eg. cdroms)
+
+* Mon Feb 22 2010 Karel Zak <kzak@redhat.com> 2.17.1-1
+- upgrade to the final 2.17.1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.1-ReleaseNotes
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17.1-ChangeLog
+
+* Tue Feb 16 2010 Karel Zak <kzak@redhat.com> 2.17.1-0.1
+- upgrade to 2.17.1-rc1
+
+* Tue Feb 16 2010 Karel Zak <kzak@redhat.com> 2.17-4
+- fix uuidd init script
+
+* Fri Feb 12 2010 Karel Zak <kzak@redhat.com> 2.17-3
+- fix #541402 - uuidd initscript lsb compliance
+
+* Fri Jan  8 2010 Karel Zak <kzak@redhat.com> 2.17-2
+- remove Provides: lib{uuid,blkid}-static (thanks to Michael Schwendt)
+- remove useless URL to sf.net
+
+* Fri Jan  8 2010 Karel Zak <kzak@redhat.com> 2.17-1
+- upgrade to the final 2.17
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17-ReleaseNotes
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17-ChangeLog
+- fix #545147 - util-linux-ng : Violation of the Packaging Guidelines
+  (remove uuid and blkid static libs)
+
+* Mon Dec 14 2009 Karel Zak <kzak@redhat.com> 2.17-0.6
+- minor fixes in spec file (fix URL, add Requires, add LGPLv2+)
+
+* Wed Dec  9 2009 Karel Zak <kzak@redhat.com> 2.17-0.5
+- upgrade to 2.17-rc2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17-rc2-ChangeLog
+
+* Mon Dec  7 2009 Karel Zak <kzak@redhat.com> 2.17-0.4
+- add clock.8 man page (manlink to hwclock)
+- add --help to mount.tmpfs
+
+* Mon Nov 23 2009 Karel Zak <kzak@redhat.com> 2.17-0.3
+- upgrade to 2.17-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.17/v2.17-rc1-ChangeLog
+
+* Tue Nov 10 2009 Karel Zak <kzak@redhat.com> 2.17-0.2.git10dfc39
+- upgrade to pre-release snapshot (official changelog not available yet, see
+  http://git.kernel.org/?p=utils/util-linux-ng/util-linux-ng.git for now)
+
+* Mon Oct 19 2009 Karel Zak <kzak@redhat.com> 2.17-0.1.git5e51568
+- upgrade to pre-release snapshot (official changelog not available yet, see
+  http://git.kernel.org/?p=utils/util-linux-ng/util-linux-ng.git for now)  
+- new commands: fallocate, unshare, wipefs
+- libblkid supports topology and partitions probing
+- remove support for --rmpart[s] from blockdev(8) (util-linux-ng-2.14-blockdev-rmpart.patch)
+- merged upstream:
+  util-linux-ng-2.14-sfdisk-dump.patch
+  util-linux-ng-2.16-blkid-swsuspend.patch
+  util-linux-ng-2.16-libblkid-compression.patch
+  util-linux-ng-2.16-libblkid-ext2.patch
+  util-linux-ng-2.16-switchroot-tty.patch
+
+* Mon Oct  5 2009 Karel Zak <kzak@redhat.com> 2.16-13
+- fix spec file
+
+* Fri Oct  2 2009 Karel Zak <kzak@redhat.com> 2.16-12
+- release++
+
+* Thu Oct  1 2009 Karel Zak <kzak@redhat.com> 2.16-11
+- fix #519237 - bash: cannot set terminal process group (-1): Inappropriate ioctl for device
+
+* Wed Sep 16 2009 Tomas Mraz <tmraz@redhat.com> - 2.16-10
+- use password-auth common PAM configuration instead of system-auth and
+  drop pam_console.so call from the remote PAM config file
+
+* Mon Sep 14 2009 Karel Zak <kzak@redhat.com> 2.16-9
+- fix #522718 - sfdisk -d /dev/xxx | sfdisk --force /dev/yyy fails when LANG is set
+- fix typo in swsuspend detection
+
+* Wed Aug 26 2009 Tomas Mraz <tmraz@redhat.com> - 2.16-8
+- rebuilt with new audit
+
+* Sun Aug 23 2009 Karel Zak <kzak@redhat.com> 2.16-7
+- fix #518572 - blkid requires ext2.ko to be decompressed on installation media
+
+* Thu Aug 13 2009 Karel Zak <kzak@redhat.com> 2.16-5
+- fix #513104 - blkid returns no fstype for ext2 device when ext2 module not loaded
+
+* Wed Aug  5 2009 Stepan Kasal <skasal@redhat.com> 2.16-4
+- set conflict with versions of e2fsprogs containing fsck
+
+* Thu Jul 30 2009 Karel Zak <kzak@redhat.com> 2.16-3
+- remove the mount.conf support (see #214891)
+
+* Mon Jul 27 2009 Karel Zak <kzak@redhat.com> 2.16-2
+- fix #214891 - add mount.conf and MTAB_LOCK_DIR= option
+
+* Sat Jul 25 2009 Karel Zak <kzak@redhat.com> 2.16-1
+- upgrade to 2.16
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.16/v2.16-ReleaseNotes
+- enable built-in libuuid (replacement for the old uuid stuff from e2fsprogs)
+- new commands switch_root, uuidgen and uuidd (subpackage)
+
+* Wed Jun 10 2009 Karel Zak <kzak@redhat.com> 2.15.1-1
+- upgrade to 2.15.1
+
+* Mon Jun  8 2009 Karel Zak <kzak@redhat.com> 2.15.1-0.2
+- set BuildRequires: e2fsprogs-devel
+- add Requires: e2fsprogs-devel to libblkid-devel
+
+* Thu Jun  4 2009 Karel Zak <kzak@redhat.com> 2.15.1-0.1
+- upgrade to 2.15.1-rc1
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.15/v2.15-ReleaseNotes
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.15/v2.15.1-rc1-ChangeLog 
+- merged patches:
+  util-linux-ng-2.14-login-remote.patch
+  util-linux-ng-2.14-fdisk-4k-I.patch
+  util-linux-ng-2.14-fdisk-4k-II.patch
+  util-linux-ng-2.14-fdisk-4k-III.patch
+  util-linux-ng-2.14-dmesg-r.patch
+  util-linux-ng-2.14-flock-segfaults.patch
+  util-linux-ng-2.14-renice-n.patch
+- new commands: lscpu, ipcmk
+- remove support for "managed" and "kudzu" mount options
+- cleanup spec file
+- enable built-in libblkid (replacement for the old blkid from e2fsprogs)
+
+* Thu Apr  2 2009 Karel Zak <kzak@redhat.com> 2.14.2-8
+- fix #490769 - post scriptlet failed (thanks to Dan Horak)
+ 
+* Fri Mar 20 2009 Karel Zak <kzak@redhat.com> 2.14.2-7
+- fix some nits in mount.tmpfs
+
+* Fri Mar 20 2009 Karel Zak <kzak@redhat.com> 2.14.2-6
+- fix #491175 - mount of tmpfs FSs fail at boot
+
+* Thu Mar 19 2009 Karel Zak <kzak@redhat.com> 2.14.2-5
+- fix #489672 - flock segfaults when file name is not given (upstream)
+- fix #476964 - Mount /var/tmp with tmpfs creates denials
+- fix #487227 - fdisk 4KiB hw sectors support (upstream)
+- fix #477303 - renice doesn't support -n option (upstream)
+
+* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.14.2-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
+
+* Fri Feb 20 2009 Karel Zak <kzak@redhat.com> 2.14.2-3
+- add -r option to dmesg(1)
+
+* Mon Feb  9 2009 Karel Zak <kzak@redhat.com> 2.14.2-2
+- fix typo in spec file
+
+* Mon Feb  9 2009 Karel Zak <kzak@redhat.com> 2.14.2-1
+- upgrade to stable 2.14.2
+  ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/v2.14/v2.14.2-ReleaseNotes
+
+* Thu Jan 22 2009 Karel Zak <kzak@redhat.com> 2.14.2-0.2
+- fix #480413 - util-linux-ng doesn't include scriptreplay
+- fix #479002 - remove dependency on ConsoleKit-libs
+- upgrade to 2.14.2-rc2
+
+* Mon Dec 22 2008 Karel Zak <kzak@redhat.com> 2.14.2-0.1
+- upgrade to 2.14.2-rc1
+- refresh old patches
+
+* Fri Nov 21 2008 Karel Zak <kzak@redhat.com> 2.14.1-5
+- fix #472502 - problem with fdisk and use +sectors for the end of partition
+
+* Mon Oct  6 2008 Karel Zak <kzak@redhat.com> 2.14.1-3
+- fix #465761 -  mount manpage is missing uid/gid mount options for tmpfs
+- refresh util-linux-ng-2.14-mount-file_t.patch (fuzz=0)
+
+* Wed Sep 10 2008 Karel Zak <kzak@redhat.com> 2.14.1-2
+- remove obsolete pam-console support
+
+* Wed Sep 10 2008 Karel Zak <kzak@redhat.com> 2.14.1-1
+- upgrade to stable 2.14.1
+
+* Thu Aug 14 2008 Karel Zak <kzak@redhat.com> 2.14.1-0.1
+- upgrade to 2.14.1-rc1
+- refresh old patches
+
+* Thu Jul 24 2008 Karel Zak <kzak@redhat.com> 2.14-3
+- update util-linux-ng-2.14-mount-file_t.patch to make
+  the SELinux warning optional (verbose mode is required)
+
+* Tue Jul  1 2008 Karel Zak <kzak@redhat.com> 2.14-2
+- fix #390691 - mount should check selinux context on mount, and warn on file_t
+
+* Mon Jun  9 2008 Karel Zak <kzak@redhat.com> 2.14-1
+- upgrade to stable util-linux-ng release
+
+* Mon May 19 2008 Karel Zak <kzak@redhat.com> 2.14-0.1
+- upgrade to 2.14-rc3
+- remove arch(8) (deprecated in favor of uname(1) or arch(1) from coreutils)
+- add a new command ldattach(8)
+- cfdisk(8) linked with libncursesw
+
+* Tue Apr 22 2008 Karel Zak <kzak@redhat.com> 2.13.1-9
+- fix audit log injection attack via login
+
+* Thu Apr 17 2008 Karel Zak <kzak@redhat.com> 2.13.1-8
+- fix location of the command raw(8)
+
+* Tue Apr 15 2008 Karel Zak <kzak@redhat.com> 2.13.1-7
+- fix 244383 - libblkid uses TYPE="swsuspend" for S1SUSPEND/S2SUSPEND
+
+* Wed Apr  2 2008 Karel Zak <kzak@redhat.com> 2.13.1-6
+- fix 439984 - backport mkswap -U
+
+* Wed Mar 26 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 2.13.1-5
+- clean up sparc conditionals
+
+* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.13.1-4
+- Autorebuild for GCC 4.3
+
+* Mon Jan 28 2008 Karel Zak <kzak@redhat.com> 2.13.1-3
+- upgrade to new upstream release
+- fix #427874 - util-linux-ng gets "excess command line argument" on update
+
+* Wed Jan  2 2008 Karel Zak <kzak@redhat.com> 2.13.1-2
+- update to upstream 2.13.1-rc2
+
+* Wed Dec 12 2007 Dan Walsh <dwalsh@redhat.com> 2.13.1-1
+- Fix pam files so that pam_keyinit happens after pam_selinux.so
+
+* Wed Dec 12 2007 Karel Zak <kzak@redhat.com> 2.13.1-0.2
+- remove viwp and vigr (in favour of shadow-utils)
+
+* Sun Dec  9 2007 Karel Zak <kzak@redhat.com> 2.13.1-0.1
+- update to the latest upstream stable branch
+  (commit: fda9d11739ee88c3b2f22a73f12ec019bd3b8335)
+
+* Wed Oct 31 2007 Karel Zak <kzak@redhat.com> 2.13-4
+- fix #354791 - blockdev command calls the blkpg ioctl with a wrong data structure
+
+* Tue Oct 16 2007 Karel Zak <kzak@redhat.com> 2.13-3
+- fix mount -L | -U segfault
+- fix script die on SIGWINCH
+
+* Thu Oct  4 2007 Karel Zak <kzak@redhat.com> 2.13-2
+- update to the latest upstream stable branch
+
+* Tue Aug 28 2007 Karel Zak <kzak@redhat.com> 2.13-1
+- upgrade to stable util-linux-ng release
+
+* Fri Aug 24 2007 Karel Zak <kzak@redhat.com> 2.13-0.59
+- add release number to util-linux Provides and increment setarch Obsoletes
+- fix #254114 - spec typo
+- upgrade to floppy-0.16
+- add BuildRequires: popt-devel
+
+* Wed Aug 22 2007 Jesse Keating <jkeating@redhat.com>  2.13-0.58
+- Obsolete a sufficiently high enough version of setarch
+
+* Mon Aug 20 2007 Karel Zak <kzak@redhat.com>  2.13-0.57
+- fix #253664 - util-linux-ng fails to build on sparc (patch by Dennis Gilmore)
+- rebase to new GIT snapshot
+
+* Mon Aug 20 2007 Karel Zak <kzak@redhat.com> 2.13-0.56
+- fix obsoletes field
+
+* Mon Aug 20 2007 Karel Zak <kzak@redhat.com> 2.13-0.55
+- util-linux-ng includes setarch(1), define relevat Obsoletes+Provides
+
+* Mon Aug 20 2007 Karel Zak <kzak@redhat.com> 2.13-0.54
+- port "blockdev --rmpart" patch from util-linux
+- use same Provides/Obsoletes setting like in util-linux
+
+* Wed Aug 15 2007 Karel Zak <kzak@redhat.com> 2.13-0.53
+- fix #252046 - review Request: util-linux-ng (util-linux replacement)
+
+* Mon Aug 13 2007 Karel Zak <kzak@redhat.com> 2.13-0.52
+- rebase to util-linux-ng (new util-linux upstream fork,
+		based on util-linux 2.13-pre7)
+- more than 70 Fedora/RHEL patches have been merged to upstream code
+
+* Fri Apr  6 2007 Karel Zak <kzak@redhat.com> 2.13-0.51
+- fix #150493 - hwclock --systohc sets clock 0.5 seconds slow
+- fix #220873 - starting RPC idmapd: Error: RPC MTAB does not exist.
+		(added rpc_pipefs to util-linux-2.13-umount-sysfs.patch)
+- fix #227903 - mount -f does not work with NFS-mounted
+
+* Sat Mar  3 2007 David Zeuthen <davidz@redhat.com> 2.13-0.50
+- include ConsoleKit session module by default (#229172)
+
+* Thu Jan 11 2007 Karel Zak <kzak@redhat.com> 2.13-0.49
+- fix #222293 - undocumented partx,addpart, delpart
+
+* Sun Dec 17 2006 Karel Zak <kzak@redhat.com> 2.13-0.48
+- fix paths in po/Makefile.in.in
+
+* Fri Dec 15 2006 Karel Zak <kzak@redhat.com> 2.13-0.47
+- fix #217240 - namei ignores non-directory components instead of saying "Not a directory"
+- fix #217241 - namei enforces symlink limits inconsistently
+
+* Thu Dec 14 2006 Karel Zak <kzak@redhat.com> 2.13-0.46
+- fix leaking file descriptor in the more command (patch by Steve Grubb)
+
+* Wed Dec 13 2006 Karel Zak <kzak@redhat.com> 2.13-0.45
+- use ncurses only
+- fix #218915 - fdisk -b 4K
+- upgrade to -pre7 release
+- fix building problem with raw0 patch
+- fix #217186 - /bin/sh: @MKINSTALLDIRS@: No such file or directory 
+  (port po/Makefile.in.in from gettext-0.16)
+- sync with FC6 and RHEL5:
+- fix #216489 - SCHED_BATCH option missing in chrt
+- fix #216712 - issues with raw device support ("raw0" is wrong device name)
+- fix #216760 - mount with context or fscontext option fails
+  (temporarily disabled the support for additional contexts -- not supported by kernel yet)
+- fix #211827 - Can't mount with additional contexts
+- fix #213127 - mount --make-unbindable does not work
+- fix #211749 - add -r option to losetup to create a read-only loop
+
+* Thu Oct 12 2006 Karel Zak <kzak@redhat.com> 2.13-0.44
+- fix #209911 - losetup.8 updated (use dm-crypt rather than deprecated cryptoloop)
+- fix #210338 - spurious error from '/bin/login -h $PHONENUMBER' (bug in IPv6 patch)
+- fix #208634 - mkswap "works" without warning on a mounted device
+
+* Sun Oct 01 2006 Jesse Keating <jkeating@redhat.com> - 2.13-0.43
+- rebuilt for unwind info generation, broken in gcc-4.1.1-21
+
+* Wed Sep 20 2006 Karel Zak <kzak@redhat.com> 2.13-0.42
+- remove obsolete NFS code and patches (we use /sbin/mount.nfs
+  and /sbin/umount.nfs from nfs-utils now)
+- move nfs.5 to nfs-utils
+
+* Fri Sep 15 2006 Karel Zak <kzak@redhat.com> 2.13-0.41
+- fix #205038 - mount not allowing sloppy option (exports "-s"
+  to external /sbin/mount.nfs(4) calls) 
+- fix minor bug in util-linux-2.13-mount-twiceloop.patch
+- fix #188193- util-linux should provide plugin infrastructure for HAL
+
+* Mon Aug 21 2006 Karel Zak <kzak@redhat.com> 2.13-0.40
+- fix Makefile.am in util-linux-2.13-mount-context.patch
+- fix #201343 - pam_securetty requires known user to work
+		(split PAM login configuration to two files)
+- fix #203358 - change location of taskset binary to allow for early affinity work
+
+* Fri Aug 11 2006 Karel Zak <kzak@redhat.com> 2.13-0.39
+- fix #199745 - non-existant simpleinit(8) mentioned in ctrlaltdel(8)
+
+* Thu Aug 10 2006 Dan Walsh <dwalsh@redhat.com> 2.13-0.38
+- Change keycreate line to happen after pam_selinux open call so it gets correct context
+
+* Thu Aug 10 2006 Karel Zak <kzak@redhat.com> 2.13-0.37
+- fix #176494 - last -i returns strange IP addresses (patch by Bill Nottingham)
+
+* Thu Jul 27 2006 Karel Zak <kzak@redhat.com> 2.13-0.36
+- fix #198300, #199557 - util-linux "post" scriptlet failure
+
+* Thu Jul 27 2006 Steve Dickson <steved@redhat.com> 2.13-0.35
+- Added the -o fsc flag to nfsmount.
+
+* Wed Jul 26 2006 Karel Zak <kzak@redhat.com> 2.13-0.34
+- rebuild
+
+* Tue Jul 18 2006 Karel Zak <kzak@redhat.com> 2.13-0.33
+- add Requires(post): libselinux
+
+* Mon Jul 17 2006 Karel Zak <kzak@redhat.com> 2.13-0.32
+- add IPv6 support to the login command (patch by Milan Zazrivec)
+- fix #198626 - add keyinit instructions to the login PAM script 
+  (patch by David Howells) 
+
+* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 2.13-0.31.1
+- rebuild
+
+* Tue Jul 11 2006 Karel Zak <kzak@redhat.com> 2.13-0.31
+- cleanup dependences for post and preun scriptlets
+
+* Mon Jul 10 2006 Karsten Hopp <karsten@redhat.de> 2.13-0.30
+- silence install in minimal buildroot without /var/log
+
+* Fri Jul  7 2006 Karel Zak <kzak@redhat.com> 2.13-0.29 
+- include the raw command for RHELs
+
+* Mon Jun 26 2006 Florian La Roche <laroche@redhat.com> 2.13-0.28
+- move install-info parts from postun to preun
+
+* Wed Jun 21 2006 Dan Walsh <dwalsh@RedHat.com> 2.13-0.27
+- Only execute chcon on machines with selinux enabled
+
+* Wed Jun 14 2006 Steve Dickson <steved@redhat.com> 2.13-0.26
+- Remove unneeded header files from nfsmount.c
+
+* Mon Jun 12 2006 Karel Zak <kzak@redhat.com> 2.13-0.25
+- fix #187014 - umount segfaults for normal user
+- fix #183446 - cal not UTF-8-aware
+- fix #186915 - mount does not translate SELIinux context options though libselinux
+- fix #185500 - Need man page entry for -o context= mount option
+- fix #152579 - missing info about /etc/mtab and /proc/mounts mismatch
+- fix #183890 - missing info about possible ioctl() and fcntl() problems on NFS filesystem
+- fix #191230 - using mount --move results in wrong data in /etc/mtab
+- added mount subtrees support
+- fdisk: wrong number of sectors for large disks (suse#160822)
+- merge fdisk-xvd (#182553) with new fdisk-isfull (#188981) patch 
+- fix #181549 - raw(8) manpage has old information about dd
+- remove asm/page.h usage
+
+* Wed May 24 2006 Dan Walsh <dwalsh@RedHat.com> 2.13-0.24
+- Remove requirement on restorecon, since we can do the same thing
+- with chcon/matchpathcon, and not add requirement on policycoreutils
+
+* Wed May 24 2006 Steve Dickson <steved@redhat.com> 2.13-0.23
+- Fixed bug in patch for bz183713 which cause nfs4 mounts to fail.
+
+* Tue May  2 2006 Steve Dickson <steved@redhat.com> 2.13-0.22
+- Added syslog logging to background mounts as suggested
+  by a customer.
+
+* Mon May  1 2006 Steve Dickson <steved@redhat.com> 2.13-0.21
+- fix #183713 - foreground mounts are not retrying as advertised
+- fix #151549 - Added 'noacl' mount flag
+- fix #169042 - Changed nfsmount to try udp before using tcp when rpc-ing
+		the remote rpc.mountd (iff -o tcp is not specified).
+		This drastically increases the total number of tcp mounts
+		that can happen at once (ala autofs).
+
+* Thu Mar  9 2006 Jesse Keating <jkeating@redhat.com> 2.13-0.20
+- Better calling of restorecon as suggested by Bill Nottingham
+- prereq restorecon to avoid ordering issues
+
+* Thu Mar  9 2006 Jesse Keating <jkeating@redhat.com> 2.13-0.19
+- restorecon /var/log/lastlog
+
+* Wed Mar  8 2006 Karel Zak <kzak@redhat.com> 2.13-0.17
+- fix #181782 - mkswap selinux relabeling (fix util-linux-2.13-mkswap-selinux.patch)
+
+* Wed Feb 22 2006 Karel Zak <kzak@redhat.com> 2.13-0.16
+- fix #181782 - mkswap should automatically add selinux label to swapfile
+- fix #180730 - col is exiting with 1 (fix util-linux-2.12p-col-EILSEQ.patch)
+- fix #181896 - broken example in schedutils man pages
+- fix #177331 - login omits pam_acct_mgmt & pam_chauthtok when authentication is skipped.
+- fix #177523 - umount -a should not unmount sysfs
+- fix #182553 - fdisk -l inside xen guest shows no disks
+
+* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 2.13-0.15.1
+- bump again for double-long bug on ppc(64)
+
+* Wed Feb  8 2006 Peter Jones <pjones@redhat.com> 2.13-0.15
+- add "blockdev --rmpart N <device>" and "blockdev --rmparts <device>"
+
+* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 2.13-0.14.1
+- rebuilt for new gcc4.1 snapshot and glibc changes
+
+* Thu Jan 19 2006 Steve Dickson <steved@redhat.com> 2.13-0.14
+- Updated the gssd_check() and idmapd_check(), used with
+  nfsv4 mounts, to looked for the correct file in /var/lock/subsys
+  which stops bogus warnings. 
+
+* Tue Jan  3 2006 Karel Zak <kzak@redhat.com> 2.13-0.13
+- fix #174676 - hwclock audit return code mismatch
+- fix #176441: col truncates data
+- fix #174111 - mount allows loopback devices to be mounted more than once to the same mount point
+- better wide chars usage in the cal command (based on the old 'moremisc' patch)
+
+* Mon Dec 12 2005 Karel Zak <kzak@redhat.com> 2.13-0.12
+- rebuilt
+
+* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
+- rebuilt
+
+* Fri Nov 25 2005 Karel Zak <kzak@redhat.com> 2.13-0.11.pre6
+- update to upstream version 2.13-pre6
+- fix #172203 - mount man page in RHEL4 lacks any info on cifs mount options
+
+* Mon Nov  7 2005 Karel Zak <kzak@redhat.com> 2.13-0.10.pre5
+- fix #171337 - mkfs.cramfs doesn't work correctly with empty files
+
+* Fri Oct 28 2005 Karel Zak <kzak@redhat.com> 2.13-0.9.pre5
+- rebuild
+
+* Wed Oct 26 2005 Karel Zak <kzak@redhat.com> 2.13-0.8.pre5
+- updated version of the patch for hwclock audit
+
+* Thu Oct 20 2005 Karel Zak <kzak@redhat.com> 2.13-0.7.pre5
+- fix #171337 - mkfs.cramfs dies creating installer image
+
+* Thu Oct 20 2005 Karel Zak <kzak@redhat.com> 2.13-0.6.pre5
+- update to upstream 2.13pre5
+- remove separated cramfs1.1 (already in upstream package)
+- remove odd symlink /usr/bin/mkcramfs -> ../../sbin/mkfs.cramfs
+- fix #170171 - ipcs -lm always report "max total shared memory (kbytes) = 0"
+
+* Mon Oct 17 2005 Karel Zak <kzak@redhat.com> 2.13-0.5.pre4
+* fix #170564 - add audit message to login
+
+* Fri Oct  7 2005 Karel Zak <kzak@redhat.com> 2.13-0.4.pre4
+- fix #169628 - /usr/bin/floppy doesn't work with /dev/fd0
+- fix #168436 - login will attempt to run if it has no read/write access to its terminal
+- fix #168434 - login's timeout can fail - needs to call siginterrupt(SIGALRM,1)
+- fix #165253 - losetup missing option -a [new feature]
+- update PAM files (replace pam_stack with new "include" PAM directive)
+- remove kbdrate from src.rpm
+- update to 2.13pre4
+
+* Fri Oct  7 2005 Steve Dickson <steved@redhat.com> 2.13-0.3.pre3
+- fix #170110 - Documentation for 'rsize' and 'wsize' NFS mount options
+		is misleading
+
+* Fri Sep  2 2005 Karel Zak <kzak@redhat.com> 2.13-0.3.pre2
+- fix #166923 - hwclock will not run on a non audit-enabled kernel
+- fix #159410 - mkswap(8) claims max swap area size is 2 GB
+- fix #165863 - swsusp swaps should be reinitialized
+- change /var/log/lastlog perms to 0644
+
+* Tue Aug 16 2005 Karel Zak <kzak@redhat.com> 2.13-0.2.pre2
+- /usr/share/misc/getopt/* -move-> /usr/share/doc/util-linux-2.13/getopt-*
+- the arch command marked as deprecated
+- removed: elvtune, rescuept and setfdprm
+- removed: man8/sln.8 (moved to man-pages, see #10601)
+- removed REDAME.pg and README.reset
+- .spec file cleanup
+- added schedutils (commands: chrt, ionice and taskset)
+
+* Tue Jul 12 2005 Karel Zak <kzak@redhat.com> 2.12p-9.7
+- fix #159339 - util-linux updates for new audit system
+- fix #158737 - sfdisk warning for large partitions, gpt
+- fix #150912 - Add ocfs2 support
+- NULL is better than zero at end of execl()
+
+* Thu Jun 16 2005 Karel Zak <kzak@redhat.com> 2.12p-9.5
+- fix #157656 - CRM 546998: Possible bug in vipw, changes permissions of /etc/shadow and /etc/gshadow
+- fix #159339 - util-linux updates for new audit system (pam_loginuid.so added to util-linux-selinux.pamd)
+- fix #159418 - sfdisk unusable - crashes immediately on invocation
+- fix #157674 - sync option on VFAT mount destroys flash drives
+- fix .spec file /usr/sbin/{hwclock,clock} symlinks
+
+* Wed May  4 2005 Jeremy Katz <katzj@redhat.com> - 2.12p-9.3
+- rebuild against new libe2fsprogs (and libblkid) to fix cramfs auto-detection
+
+* Mon May  2 2005 Karel Zak <kzak@redhat.com> 2.12p-9.2
+- rebuild
+
+* Mon May  2 2005 Karel Zak <kzak@redhat.com> 2.12p-9
+- fix #156597 - look - doesn't work with separators
+
+* Mon Apr 25 2005 Karel Zak <kzak@redhat.com> 2.12p-8
+- fix #154498 - util-linux login & pam session
+- fix #155293 - man 5 nfs should include vers as a mount option
+- fix #76467 - At boot time, fsck chokes on LVs listed by label in fstab
+- new Source URL
+- added note about ATAPI IDE floppy to fdformat.8
+- fix #145355 - Man pages for fstab and fstab-sync in conflict
+
+* Tue Apr  5 2005 Karel Zak <kzak@redhat.com> 2.12p-7
+- enable build with libblkid from e2fsprogs-devel
+- remove workaround for duplicated labels
+
+* Thu Mar 31 2005 Steve Dickson <SteveD@RedHat.com> 2.12p-5
+- Fixed nfs mount to rollback correctly.
+
+* Fri Mar 25 2005 Karel Zak <kzak@redhat.com> 2.12p-4
+- added /var/log/lastlog to util-linux (#151635)
+- disabled 'newgrp' in util-linux (enabled in shadow-utils) (#149997, #151613)
+- improved mtab lock (#143118)
+- fixed ipcs typo (#151156)
+- implemented mount workaround for duplicated labels (#116300)
+
+* Wed Mar 16 2005 Elliot Lee <sopwith@redhat.com> 2.12p-3
+- rebuilt
+
+* Fri Feb 25 2005 Steve Dickson <SteveD@RedHat.com> 2.12p-2
+- Changed nfsmount to only use reserve ports when necessary
+  (bz# 141773) 
+
+* Thu Dec 23 2004 Elliot Lee <sopwith@redhat.com> 2.12p-1
+- Update to util-linux-2.12p. This changes swap header format
+  from - you may need to rerun mkswap if you did a clean install of
+  FC3.
+
+* Fri Dec 10 2004 Elliot Lee <sopwith@redhat.com> 2.12j-1
+- Update to util-linux-2.12j
+
+* Tue Dec  7 2004 Steve Dickson <SteveD@RedHat.com> 2.12a-20
+- Corrected a buffer overflow problem with nfs mounts.
+  (bz# 141733) 
+
+* Wed Dec 01 2004 Elliot Lee <sopwith@redhat.com> 2.12a-19
+- Patches for various bugs.
+
+* Mon Nov 29 2004 Steve Dickson <SteveD@RedHat.com> 2.12a-18
+- Made NFS mounts adhere to the IP protocol if specified on
+  command line as well as made NFS umounts adhere to the
+  current IP protocol. Fix #140016
+
+* Thu Oct 14 2004 Elliot Lee <sopwith@redhat.com> 2.12a-16
+- Add include_raw macro, build with it off for Fedora
+
+* Wed Oct 13 2004 Stephen C. Tweedie <sct@redhat.com> - 2.12a-15
+- Add raw patch to allow binding of devices not yet in /dev
+
+* Wed Oct 13 2004 John (J5) Palmieri <johnp@redhat.com> 2.12a-14
+- Add David Zeuthen's patch to enable the pamconsole flag #133941
+
+* Wed Oct 13 2004 Stephen C. Tweedie <sct@redhat.com> 2.12a-13
+- Restore raw utils (bugzilla #130016)
+
+* Mon Oct 11 2004 Phil Knirsch <pknirsch@redhat.com> 2.12a-12
+- Add the missing remote entry in pam.d
+
+* Wed Oct  6 2004 Steve Dickson <SteveD@RedHat.com>
+- Rechecked in some missing NFS mounting code.
+
+* Wed Sep 29 2004 Elliot Lee <sopwith@redhat.com> 2.12a-10
+- Make swaplabel support work with swapon -a -e
+
+* Tue Sep 28 2004 Steve Dickson <SteveD@RedHat.com>
+- Updated the NFS and NFS4 code to the latest CITI patch set
+  (in which they incorporate a number of our local patches).
+
+* Wed Sep 15 2004 Nalin Dahybhai <nalin@redhat.com> 2.12a-8
+- Fix #132196 - turn on SELinux support at build-time.
+
+* Wed Sep 15 2004 Phil Knirsch <pknirsch@redhat.com> 2.12a-7
+- Fix #91174 with pamstart.patch
+
+* Tue Aug 31 2004 Elliot Lee <sopwith@redhat.com> 2.12a-6
+- Fix #16415, #70616 with rdevman.patch
+- Fix #102566 with loginman.patch
+- Fix #104321 with rescuept.patch (just use plain lseek - we're in _FILE_OFFSET_BITS=64 land now)
+- Fix #130016 - remove raw.
+- Re-add agetty (replacing it with mgetty is too much pain, and mgetty is much larger)
+
+* Thu Aug 26 2004 Steve Dickson <SteveD@RedHat.com>
+- Made the NFS security checks more explicit to avoid confusion
+  (an upstream fix)
+- Also removed a compilation warning
+
+* Wed Aug 11 2004 Alasdair Kergon <agk@redhat.com>
+- Remove unused mount libdevmapper inclusion.
+
+* Wed Aug 11 2004 Alasdair Kergon <agk@redhat.com>
+- Add device-mapper mount-by-label support
+- Fix segfault in mount-by-label when a device without a label is present.
+
+* Wed Aug 11 2004 Steve Dickson <SteveD@RedHat.com>
+- Updated nfs man page to show that intr are on by
+  default for nfs4
+
+* Thu Aug 05 2004 Jindrich Novy <jnovy@redhat.com>
+- modified warning causing heart attack for >16 partitions, #107824
+
+* Fri Jul 09 2004 Elliot Lee <sopwith@redhat.com> 2.12a-3
+- Fix #126623, #126572
+- Patch cleanup
+- Remove agetty (use mgetty, agetty is broken)
+
+* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
+- rebuilt
+
+* Thu Jun 03 2004 Elliot Lee <sopwith@redhat.com> 2.12a-1
+- Update to 2.12a
+- Fix #122448
+
+* Thu May 13 2004 Dan Walsh <dwalsh@RedHat.com> 2.12-19
+- Change pam_selinux to run last
+
+* Tue May 04 2004 Elliot Lee <sopwith@redhat.com> 2.12-18
+- Fix #122448 (autofs issues)
+
+* Fri Apr 23 2004 Elliot Lee <sopwith@redhat.com> 2.12-17
+- Fix #119157 by editing the patch
+- Add patch145 to fix #119986
+
+* Fri Apr 16 2004 Elliot Lee <sopwith@redhat.com> 2.12-16
+- Fix #118803
+
+* Tue Mar 23 2004 Jeremy Katz <katzj@redhat.com> 2.12-15
+- mkcramfs: use PAGE_SIZE for default blocksize (#118681)
+
+* Sat Mar 20 2004 <SteveD@RedHat.com>
+- Updated the nfs-mount.patch to correctly 
+  handle the mounthost option and to ignore 
+  servers that do not set auth flavors
+
+* Tue Mar 16 2004 Dan Walsh <dwalsh@RedHat.com> 2.12-13
+- Fix selinux ordering or pam for login
+
+* Tue Mar 16 2004 <SteveD@RedHat.com>
+- Make RPC error messages displayed with -v argument
+- Added two checks to the nfs4 path what will print warnings
+  when rpc.idmapd and rpc.gssd are not running
+- Ping NFS v4 servers before diving into kernel
+- Make v4 mount interruptible which also make the intr option on by default 
+
+* Sat Mar 13 2004  <SteveD@RedHat.com>
+- Reworked how the rpc.idmapd and rpc.gssd checks were
+  done due to review comments from upstream.
+- Added rpc_strerror() so the '-v' flag will show RPC errors.
+
+* Sat Mar 13 2004  <SteveD@RedHat.com>
+- Added two checks to the nfs4 path what will print warnings
+  when rpc.idmapd and rpc.gssd are not running.
+
+* Thu Mar 11 2004 <SteveD@RedHat.com>
+- Reworked and updated the nfsv4 patches.
+
+* Wed Mar 10 2004 Dan Walsh <dwalsh@RedHat.com>
+- Bump version
+
+* Wed Mar 10 2004 Steve Dickson <SteveD@RedHat.com>
+- Tried to make nfs error message a bit more meaninful
+- Cleaned up some warnings
+
+* Sun Mar  7 2004 Steve Dickson <SteveD@RedHat.com> 
+- Added pesudo flavors for nfsv4 mounts.
+- Added BuildRequires: libselinux-devel and Requires: libselinux
+  when WITH_SELINUX is set. 
+
+* Fri Feb 27 2004 Dan Walsh <dwalsh@redhat.com> 2.12-5
+- check for 2.6.3 kernel in mount options
+
+* Mon Feb 23 2004 Elliot Lee <sopwith@redhat.com> 2.12-4
+- Remove /bin/kill for #116100
+
+* Fri Feb 20 2004 Dan Walsh <dwalsh@redhat.com> 2.12-3
+- rebuilt
+
+* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
+- rebuilt
+
+* Thu Feb 12 2004 Elliot Lee <sopwith@redhat.com> 2.12-1
+- Final 2.12 has been out for ages - might as well use it.
+
+* Wed Jan 28 2004 Steve Dickson <SteveD@RedHat.com> 2.12pre-4
+- Added mount patches that have NFS version 4 support
+
+* Mon Jan 26 2004 Elliot Lee <sopwith@redhat.com> 2.12pre-3
+- Provides: mount losetup
+
+* Mon Jan 26 2004 Dan Walsh <dwalsh@redhat.com> 2.12pre-2
+- Add multiple to /etc/pam.d/login for SELinux
+
+* Thu Jan 15 2004 Elliot Lee <sopwith@redhat.com> 2.12pre-1
+- 2.12pre-1
+- Merge mount/losetup packages into the main package (#112324)
+- Lose separate 
+
+* Mon Nov 3 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-35.sel
+- remove selinux code from login and use pam_selinux
+
+* Thu Oct 30 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-34.sel
+- turn on selinux
+
+* Fri Oct 24 2003 Elliot Lee <sopwith@redhat.com> 2.11y-34
+- Add BuildRequires: texinfo (from a bug# I don't remember)
+- Fix #90588 with mountman patch142.
+
+* Mon Oct 6 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-33
+- turn off selinux
+
+* Thu Sep 25 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-32.sel
+- turn on selinux
+- remove context selection
+
+* Fri Sep 19 2003 Elliot Lee <sopwith@redhat.com> 2.11y-31
+- Add patch140 (alldevs) to fix #101772. Printing the total size of
+  all devices was deemed a lower priority than having all devices
+  (e.g. /dev/ida/c0d9) displayed.
+
+* Fri Sep 12 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-31
+- turn off selinux
+
+* Fri Sep 12 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-30.sel
+- turn on selinux
+
+* Fri Sep 5 2003 Elliot Lee <sopwith@redhat.com> 2.11y-28
+- Fix #103004, #103954
+
+* Fri Sep 5 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-27
+- turn off selinux
+
+* Thu Sep 4 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-26.sel
+- build with selinux
+
+* Mon Aug 11 2003 Elliot Lee <sopwith@redhat.com> 2.11y-25
+- Use urandom instead for mkcramfs
+
+* Tue Jul 29 2003 Dan Walsh <dwalsh@redhat.com> 2.11y-24
+- add SELINUX 2.5 support
+
+* Wed Jul 23 2003 Elliot Lee <sopwith@redhat.com> 2.11y-22
+- #100433 patch
+
+* Sat Jun 14 2003 Elliot Lee <sopwith@redhat.com> 2.11y-20
+- #97381 patch
+
+* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
+- rebuilt
+
+* Mon Apr 21 2003 Elliot Lee <sopwith@redhat.com> 2.11y-17
+- Change patch128 to improve ipcs -l
+
+* Fri Apr 11 2003 Elliot Lee <sopwith@redhat.com> 2.11y-16
+- Fix #85407
+
+* Fri Apr 11 2003 Elliot Lee <sopwith@redhat.com> 2.11y-15
+- Change patch128 to util-linux-2.11f-ipcs-84243-86285.patch to get all
+ipcs fixes
+
+* Thu Apr 10 2003 Matt Wilson <msw@redhat.com> 2.11y-14
+- fix last login date display on AMD64 (#88574)
+
+* Mon Apr  7 2003 Jeremy Katz <katzj@redhat.com> 2.11y-13
+- include sfdisk on ppc
+
+* Fri Mar 28 2003 Jeremy Katz <katzj@redhat.com> 2.11y-12
+- add patch from msw to change mkcramfs blocksize with a command line option
+
+* Tue Mar 25 2003 Phil Knirsch <pknirsch@redhat.com> 2.11y-11
+- Fix segfault on s390x due to wrong usage of BLKGETSIZE.
+
+* Thu Mar 13 2003 Elliot Lee <sopwith@redhat.com> 2.11y-10
+- Really apply the ipcs patch. Doh.
+
+* Mon Feb 24 2003 Elliot Lee <sopwith@redhat.com>
+- rebuilt
+
+* Wed Feb 19 2003 Elliot Lee <sopwith@redhat.com> 2.11y-8
+- ipcs-84243.patch to fix #84243
+
+* Thu Feb 13 2003 Yukihiro Nakai <ynakai@redhat.com> 2.11y-7
+- Update moremisc patch to fix swprintf()'s minimum field (bug #83361).
+
+* Mon Feb 03 2003 Elliot Lee <sopwith@redhat.com> 2.11y-6
+- Fix mcookie segfault on many 64-bit architectures (bug #83345).
+
+* Mon Feb 03 2003 Tim Waugh <twaugh@redhat.com> 2.11y-5
+- Fix underlined multibyte characters (bug #83376).
+
+* Sun Feb 02 2003 Florian La Roche <Florian.LaRoche@redhat.de>
+- rebuild to have again a s390 rpm
+- disable some more apps for mainframe
+
+* Wed Jan 29 2003 Elliot Lee <sopwith@redhat.com> 2.11y-4
+- util-linux-2.11y-umask-82552.patch
+
+* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
+- rebuilt
+
+* Mon Jan 13 2003 Elliot Lee <sopwith@redhat.com> 2.11y-2
+- Fix #81069, #75421
+
+* Mon Jan 13 2003 Elliot Lee <sopwith@redhat.com> 2.11y-1
+- Update to 2.11y
+- Fix #80953
+- Update patch0, patch107, patch117, patch120 for 2.11y
+- Remove patch60, patch61, patch207, patch211, patch212, patch119, patch121
+- Remove patch122, patch200
+
+* Wed Oct 30 2002 Elliot Lee <sopwith@redhat.com> 2.11w-2
+- Remove some crack/unnecessary patches while submitting stuff upstream.
+- Build with -D_FILE_OFFSET_BITS=64
+
+* Tue Oct 29 2002 Elliot Lee <sopwith@redhat.com> 2.11w-1
+- Update to 2.11w, resolve patch conflicts
+
+* Tue Oct 08 2002 Phil Knirsch <pknirsch@redhat.com> 2.11r-10hammer.3
+- Extended util-linux-2.11b-s390x patch to work again.
+
+* Thu Oct 03 2002 Elliot Lee <sopwith@redhat.com> 2.11r-10hammer.2
+- Add patch122 for hwclock on x86_64
+
+* Thu Sep 12 2002 Than Ngo <than@redhat.com> 2.11r-10hammer.1
+- Fixed pam config files
+
+* Wed Sep 11 2002 Bernhard Rosenkraenzer <bero@redhat.com> 2.11r-10hammer
+- Port to hammer
+
+* Fri Aug 30 2002 Elliot Lee <sopwith@redhat.com> 2.11r-10
+- Patch120 (hwclock) to fix #72140
+- Include isosize util
+
+* Wed Aug 7 2002  Elliot Lee <sopwith@redhat.com> 2.11r-9
+- Patch120 (skipraid2) to fix #70353, because the original patch was 
+totally useless.
+
+* Fri Aug 2 2002  Elliot Lee <sopwith@redhat.com> 2.11r-8
+- Patch119 (fdisk-add-primary) from #67898
+
+* Wed Jul 24 2002 Elliot Lee <sopwith@redhat.com> 2.11r-7
+- Really add the gptsize patch, instead of what I think the patch says.
+(+1)
+
+* Tue Jul 23 2002 Elliot Lee <sopwith@redhat.com> 2.11r-6
+- Add the sp[n].size part of the patch from #69603
+
+* Mon Jul 22 2002 Florian La Roche <Florian.LaRoche@redhat.de>
+- adjust mainframe patches
+
+* Tue Jul  2 2002 Bill Nottingham <notting@redhat.com> 2.11r-4
+- only require usermode if we're shipping kbdrate here
+
+* Fri Jun 28 2002 Trond Eivind Glomsrod <teg@redhat.com> 2.11r-3
+- Port the large swap patch to new util-linux... the off_t changes 
+  now in main aren't sufficient
+
+* Thu Jun 27 2002 Elliot Lee <sopwith@redhat.com> 2.11r-2
+- Remove swapondetect (patch301) until it avoids possible false positives.
+
+* Thu Jun 27 2002 Elliot Lee <sopwith@redhat.com> 2.11r-1
+- Update to 2.11r, wheeee
+- Remove unused patches
+
+* Thu Jun 27 2002 Elliot Lee <sopwith@redhat.com> 2.11n-19
+- Make a note here that this package was the source of the single change 
+contained in util-linux-2.11f-18 (in 7.2/Alpha), and also contains the 
+rawman patch from util-linux-2.11f-17.1 (in 2.1AS).
+- Package has no runtime deps on slang, so remove the BuildRequires: 
+slang-devel.
+
+* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
+- automated rebuild
+
+* Thu Jun 20 2002 Elliot Lee <sopwith@redhat.com> 2.11n-17
+- Fix teg's swapondetect patch to not print out the usage message when 
+'swapon -a -e' is run. (#66690) (edit existing patch)
+- Apply hjl's utmp handling patch (#66950) (patch116)
+- Fix fdisk man page notes on IDE disk partition limit (#64013) (patch117)
+- Fix mount.8 man page notes on vfat shortname option (#65628) (patch117)
+- Fix possible cal overflow with widechars (#67090) (patch117)
+
+* Tue Jun 11 2002 Trond Eivind Glomsrod <teg@redhat.com> 2.11n-16
+- support large swap partitions
+- add '-d' option to autodetect available swap partitions
+
+* Thu May 23 2002 Tim Powers <timp@redhat.com>
+- automated rebuild
+
+* Wed May 15 2002 Elliot Lee <sopwith@redhat.com> 2.11n-14
+- Remove kbdrate (again).
+
+* Mon Apr 29 2002 Florian La Roche <Florian.LaRoche@redhat.de>
+- adjust mainframe patches to apply to current rpm
+- do not include fdisk until it is fixed to work on mainframe
+
+* Mon Apr 01 2002 Elliot Lee <sopwith@redhat.com> 2.11n-12
+- Don't strip binaries - rpm does it for us.
+
+* Sun Mar 31 2002 Elliot Lee <sopwith@redhat.com> 2.11n-11
+- Apply patch115 from ejb@ql.org for bug #61868
+
+* Wed Mar 27 2002 Elliot Lee <sopwith@redhat.com> 2.11n-10
+- Finish fixing #60675 (ipcrm man page), updated the patch.
+- Fix #61203 (patch114 - dumboctal.patch).
+
+* Tue Mar 12 2002 Elliot Lee <sopwith@redhat.com> 2.11n-9
+- Update ctty3 patch to ignore SIGHUP while dropping controlling terminal
+
+* Fri Mar 08 2002 Elliot Lee <sopwith@redhat.com> 2.11n-8
+- Update ctty3 patch to drop controlling terminal before forking.
+
+* Fri Mar 08 2002 Elliot Lee <sopwith@redhat.com> 2.11n-7
+  Fix various bugs:
+- Add patch110 (skipraid) to properly skip devices that are part of a RAID array.
+- Add patch111 (mkfsman) to update the mkfs man page's "SEE ALSO" section.
+- remove README.cfdisk
+- Include partx
+- Fix 54741 and related bugs for good(hah!) with patch113 (ctty3)
+
+* Wed Mar 06 2002 Elliot Lee <sopwith@redhat.com> 2.11n-6
+- Put kbdrate in, add usermode dep.
+
+* Tue Feb 26 2002 Elliot Lee <sopwith@redhat.com> 2.11n-5
+- Fix #60363 (tweak raw.8 man page, make rawdevices.8 symlink).
+
+* Mon Jan 28 2002 Bill Nottingham <notting@redhat.com> 2.11n-4
+- remove kbdrate (fixes kbd conflict)
+
+* Fri Dec 28 2001 Elliot Lee <sopwith@redhat.com> 2.11n-3
+- Add util-linux-2.11n-ownerumount.patch (#56593)
+- Add patch102 (util-linux-2.11n-colrm.patch) to fix #51887
+- Fix #53452 nits.
+- Fix #56953 (remove tunelp on s390)
+- Fix #56459, and in addition switch to using sed instead of perl.
+- Fix #58471
+- Fix #57300
+- Fix #37436
+- Fix #32132
+
+* Wed Dec 26 2001 Elliot Lee <sopwith@redhat.com> 2.11n-1
+- Update to 2.11n
+- Merge mount/losetup back in.
+
+* Tue Dec 04 2001 Elliot Lee <sopwith@redhat.com> 2.11f-17
+- Add patch38 (util-linux-2.11f-ctty2.patch) to ignore SIGINT/SIGTERM/SIGQUIT in the parent, so that ^\ won't break things.
+
+* Fri Nov 09 2001 Elliot Lee <sopwith@redhat.com> 2.11f-16
+- Merge patches 36, 75, 76, and 77 into patch #37, to attempt resolve all the remaining issues with #54741.
+
+* Wed Oct 24 2001 Florian La Roche <Florian.LaRoche@redhat.de>
+- add nologin man-page for s390/s390x
+
+* Wed Oct 24 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.11f-14
+- Don't build kbdrate on s390/s390x
+- Don't make the pivot_root.8 man page executable(!)
+
+* Tue Oct 23 2001 Elliot Lee <sopwith@redhat.com> 2.11f-13
+- Patch/idea #76 from HJL, fixes bug #54741 (race condition in login 
+acquisition of controlling terminal).
+
+* Thu Oct 11 2001 Bill Nottingham <notting@redhat.com>
+- fix permissions problem with vipw & shadow files, again (doh!)
+
+* Tue Oct 09 2001 Erik Troan <ewt@redhat.com>
+- added patch from Olaf Kirch to fix possible pwent structure overwriting
+
+* Fri Sep 28 2001 Elliot Lee <sopwith@redhat.com> 2.11f-10
+- fdisk patch from arjan
+
+* Sun Aug 26 2001 Elliot Lee <sopwith@redhat.com> 2.11f-9
+- Don't include cfdisk, since it appears to be an even bigger pile of junk than fdisk? :)
+
+* Wed Aug  1 2001 Tim Powers <timp@redhat.com>
+- don't require usermode
+
+* Mon Jul 30 2001 Elliot Lee <sopwith@redhat.com> 2.11f-7
+- Incorporate kbdrate back in.
+
+* Mon Jul 30 2001 Bill Nottingham <notting@redhat.com>
+- revert the patch that calls setsid() in login that we had reverted
+  locally but got integrated upstream (#46223)
+
+* Tue Jul 24 2001 Florian La Roche <Florian.LaRoche@redhat.de>
+- correct s390x patch
+
+* Mon Jul 23 2001 Elliot Lee <sopwith@redhat.com>
+- Add my megapatch (various bugs)
+- Include pivot_root (#44828)
+
+* Thu Jul 12 2001 Bill Nottingham <notting@redhat.com>
+- make shadow files 0400, not 0600
+
+* Wed Jul 11 2001 Bill Nottingham <notting@redhat.com>
+- fix permissions problem with vipw & shadow files
+
+* Mon Jun 18 2001 Florian La Roche <Florian.LaRoche@redhat.de>
+- update to 2.11f, remove any merged patches
+- add s390x patches for somewhat larger swap
+
+* Thu Jun 14 2001 Erik Troan <ewt@redhat.com>
+- added --verbose patch to mkcramfs; it's much quieter by default now
+
+* Tue May 22 2001 Erik Troan <ewt@redhat.com>
+- removed warning about starting partitions on cylinder 0 -- swap version2
+  makes it unnecessary
+
+* Wed May  9 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.11b-2
+- Fix up s390x support
+
+* Mon May  7 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.11b-1
+- Fix up login for real (a console session should be the controlling tty)
+  by reverting to 2.10s code (#36839, #36840, #39237)
+- Add man page for agetty (#39287)
+- 2.11b, while at it
+
+* Fri Apr 27 2001 Preston Brown <pbrown@redhat.com> 2.11a-4
+- /sbin/nologin from OpenBSD added.
+
+* Fri Apr 20 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.11a-3
+- Fix up login - exiting immediately even if the password is correct
+  is not exactly a nice feature.
+- Make definite plans to kill people who update login without checking
+  if the new version works ;)
+
+* Tue Apr 17 2001 Erik Troan <ewt@redhat.com>
+- upgraded to 2.11a (kbdrate moved to kbd, among other things)
+- turned off ALLOW_VCS_USE
+- modified mkcramfs to not use a large number of file descriptors
+- include mkfs.bfs
+
+* Sun Apr  8 2001 Matt Wilson <msw@redhat.com>
+- changed Requires: kernel >= 2.2.12-7 to Conflicts: kernel < 2.2.12-7
+  (fixes a initscripts -> util-linux -> kernel -> initscripts prereq loop)
+
+* Tue Mar 20 2001 Matt Wilson <msw@redhat.com>
+- patched mkcramfs to use the PAGE_SIZE from asm/page.h instead of hard
+  coding 4096 (fixes mkcramfs on alpha...)
+
+* Mon Mar 19 2001 Matt Wilson <msw@redhat.com>
+- added mkcramfs (from linux/scripts/mkcramfs)
+
+* Mon Feb 26 2001 Tim Powers <timp@redhat.com>
+- fixed bug #29131, where ipc.info didn't have an info dir entry,
+  added the dir entry to ipc.texi (Patch58)
+
+* Fri Feb 23 2001 Preston Brown <pbrown@redhat.com>
+- use lang finder script
+- install info files
+
+* Thu Feb 08 2001 Erik Troan <ewt@redhat.com>
+- reverted login patch; seems to cause problems
+- added agetty
+
+* Wed Feb 07 2001 Erik Troan <ewt@redhat.com>
+- updated kill man page
+- added patch to fix vipw race
+- updated vipw to edit /etc/shadow and /etc/gshadow, if appropriate
+- added patch to disassociate login from tty, session, and pgrp
+
+* Tue Feb 06 2001 Erik Troan <ewt@redhat.com>
+- fixed problem w/ empty extended partitions
+- added patch to fix the date in the more man page
+- set OPT to pass optimization flags to make rather then RPM_OPT_FLAG
+- fixed fdisk -l /Proc/partitions parsing
+- updated to 2.10s
+
+* Tue Jan 23 2001 Preston Brown <pbrown@redhat.com>
+- danish translations added
+
+* Mon Jan 15 2001 Nalin Dahyabhai <nalin@redhat.com>
+- fix segfault in login in btmp patch (#24025)
+
+* Mon Dec 11 2000 Oliver Paukstadt <oliver.paukstadt@millenux.com>
+- ported to s390
+
+* Wed Nov 01 2000 Florian La Roche <Florian.LaRoche@redhat.de>
+- update to 2.10p
+- update patch37 to newer fdisk version
+
+* Mon Oct  9 2000 Jeff Johnson <jbj@redhat.com>
+- update to 2.10o
+-  fdformat: fixed to work with kernel 2.4.0test6 (Marek Wojtowicz)
+-  login: not installed suid
+-  getopt: by default install aux files in /usr/share/misc
+- update to 2.10n:
+-  added blockdev.8
+-  change to elvtune (andrea)
+-  fixed overrun in agetty (vii@penguinpowered.com)
+-  shutdown: prefer umounting by mount point (rgooch)
+-  fdisk: added plan9
+-  fdisk: remove empty links in chain of extended partitions
+-  hwclock: handle both /dev/rtc and /dev/efirtc (Bill Nottingham)
+-  script: added -f (flush) option (Ivan Schreter)
+-  script: added -q (quiet) option (Per Andreas Buer)
+-  getopt: updated to version 1.1.0 (Frodo Looijaard)
+-  Czech messages (Jiri Pavlovsky)
+- login.1 man page had not /var/spool/mail path (#16998).
+- sln.8 man page (but not executable) included (#10601).
+- teach fdisk 0xde(Dell), 0xee(EFI GPT), 0xef(EFI FAT) partitions (#17610).
+
+* Wed Aug 30 2000 Matt Wilson <msw@redhat.com>
+- rebuild to cope with glibc locale binary incompatibility, again
+
+* Mon Aug 14 2000 Jeff Johnson <jbj@redhat.com>
+- setfdprm should open with O_WRONLY, not 3.
+
+* Fri Aug 11 2000 Jeff Johnson <jbj@redhat.com>
+- fdformat should open with O_WRONLY, not 3.
+
+* Fri Jul 21 2000 Nalin Dahyabhai <nalin@redhat.com>
+- make 'look' look in /usr/share/dict
+
+* Fri Jul 21 2000 Bill Nottingham <notting@redhat.com>
+- put /usr/local/sbin:/usr/local/bin in root's path
+
+* Wed Jul 19 2000 Jakub Jelinek <jakub@redhat.com>
+- rebuild to cope with glibc locale binary incompatibility
+
+* Thu Jul 13 2000 Prospector <bugzilla@redhat.com>
+- automatic rebuild
+
+* Mon Jul 10 2000 Bill Nottingham <notting@redhat.com>
+- enable hwclock to use /dev/efirtc on ia64 (gettext is fun. :( )
+
+* Mon Jul  3 2000 Bill Nottingham <notting@redhat.com>
+- move cfdisk to /usr/sbin, it depends on /usr stuff
+- add rescuept
+
+* Fri Jun 23 2000 Bernhard Rosenkraenzer <bero@redhat.com>
+- point more at the correct path to vi (for "v"), Bug #10882
+
+* Sun Jun  4 2000 Jeff Johnson <jbj@redhat.com>
+- FHS packaging changes.
+
+* Thu Jun  1 2000 Nalin Dahyabhai <nalin@redhat.com>
+- modify PAM setup to use system-auth
+
+* Mon May  1 2000 Bill Nottingham <notting@redhat.com>
+- eek, where did login go? (specfile tweaks)
+
+* Mon Apr 17 2000 Bernhard Rosenkraenzer <bero@redhat.com>
+- 2.10k
+- fix compilation with current glibc
+
+* Tue Mar 21 2000 Bernhard Rosenkraenzer <bero@redhat.com>
+- 2.10h
+
+* Tue Mar  7 2000 Jeff Johnson <jbj@redhat.com>
+- rebuild for sparc baud rates > 38400.
+
+* Sat Mar  4 2000 Matt Wilson <msw@redhat.com>
+- use snprintf - not sprintf - when doing
+  sprintf ("%%s\n", _("Some string")) to avoid overflows and
+  segfaults.
+
+* Mon Feb 21 2000 Jeff Johnson <jbj@redhat.com>
+- raw control file was /dev/raw, now /dev/rawctl.
+- raw access files were /dev/raw*, now /dev/raw/raw*.
+
+* Thu Feb 17 2000 Erik Troan <ewt@redhat.com>
+- -v argument to mkswap wasn't working
+
+* Thu Feb 10 2000 Jakub Jelinek <jakub@redhat.com>
+- Recognize 0xfd on Sun disklabels as RAID
+
+* Tue Feb  8 2000 Bill Nottingham <notting@redhat.com>
+- more lives in /bin, and was linked against /usr/lib/libnurses. Bad.
+
+* Thu Feb 03 2000 Jakub Jelinek <jakub@redhat.com>
+- update to 2.10f
+- fix issues in the new realpath code, avoid leaking memory
+
+* Tue Feb 01 2000 Cristian Gafton <gafton@redhat.com>
+- rebuild to fix dependencies
+- add NFSv3 patches
+
+* Fri Jan 28 2000 Bill Nottingham <notting@redhat.com>
+- don't require csh
+
+* Mon Jan 24 2000 Nalin Dahyabhai <nalin@redhat.com>
+- update to 2.10e
+- add rename
+
+* Thu Jan 20 2000 Jeff Johnson <jbj@redhat.com>
+- strip newlines in logger input.
+
+* Mon Jan 10 2000 Jeff Johnson <jbj@redhat.com>
+- rebuild with correct ncurses libs.
+
+* Tue Dec  7 1999 Matt Wilson <msw@redhat.com>
+- updated to util-linux 2.10c
+- deprecated IMAP login mail notification patch17
+- deprecated raw patch22
+- depricated readprofile patch24
+
+* Tue Dec  7 1999 Bill Nottingham <notting@redhat.com>
+- add patch for readprofile
+
+* Thu Nov 18 1999 Michael K. Johnson <johnsonm@redhat.com>
+- tunelp should come from util-linux
+
+* Tue Nov  9 1999 Jakub Jelinek <jakub@redhat.com>
+- kbdrate cannot use /dev/port on sparc.
+
+* Wed Nov  3 1999 Jakub Jelinek <jakub@redhat.com>
+- fix kbdrate on sparc.
+
+* Wed Oct 27 1999 Bill Nottingham <notting@redhat.com>
+- ship hwclock on alpha.
+
+* Tue Oct  5 1999 Bill Nottingham <notting@redhat.com>
+- don't ship symlinks to rdev if we don't ship rdev.
+
+* Tue Sep 07 1999 Cristian Gafton <gafton@redhat.com>
+- add rawIO support from sct
+
+* Mon Aug 30 1999 Preston Brown <pbrown@redhat.com>
+- don't display "new mail" message when the only piece of mail is from IMAP
+
+* Fri Aug 27 1999 Michael K. Johnson <johnsonm@redhat.com>
+- kbdrate is now a console program
+
+* Thu Aug 26 1999 Jeff Johnson <jbj@redhat.com>
+- hostid is now in sh-utils. On sparc, install hostid as sunhostid (#4581).
+- update to 2.9w:
+-  Updated mount.8 (Yann Droneaud)
+-  Improved makefiles
+-  Fixed flaw in fdisk
+
+* Tue Aug 10 1999 Jeff Johnson <jbj@redhat.com>
+- tsort is now in textutils.
+
+* Wed Aug  4 1999 Bill Nottingham <notting@redhat.com>
+- turn off setuid bit on login. Again. :(
+
+* Tue Aug  3 1999 Peter Jones, <pjones@redhat.com>
+- hostid script for sparc (#3803).
+
+* Tue Aug 03 1999 Christian 'Dr. Disk' Hechelmann <drdisk@tc-gruppe.de>
+- added locale message catalogs to %%file
+- added patch for non-root build
+- vigr.8 and /usr/lib/getopt  man-page was missing from file list
+- /etc/fdprm really is a config file
+
+* Fri Jul 23 1999 Jeff Johnson <jbj@redhat.com>
+- update to 2.9v:
+- cfdisk no longer believes the kernel's HDGETGEO
+	(and may be able to partition a 2 TB disk)
+
+* Fri Jul 16 1999 Jeff Johnson <jbj@redhat.com>
+- update to 2.9u:
+- Czech more.help and messages (Jiri Pavlovsky)
+- Japanese messages (Daisuke Yamashita)
+- fdisk fix (Klaus G. Wagner)
+- mount fix (Hirokazu Takahashi)
+- agetty: enable hardware flow control (Thorsten Kranzkowski)
+- minor cfdisk improvements
+- fdisk no longer accepts a default device
+- Makefile fix
+
+* Tue Jul  6 1999 Jeff Johnson <jbj@redhat.com>
+- update to 2.9t:
+- national language support for hwclock
+- Japanese messages (both by Daisuke Yamashita)
+- German messages and some misc i18n fixes (Elrond)
+- Czech messages (Jiri Pavlovsky)
+- wall fixed for /dev/pts/xx ttys
+- make last and wall use getutent() (Sascha Schumann)
+	[Maybe this is bad: last reading all of wtmp may be too slow.
+	Revert in case people complain.]
+- documented UUID= and LABEL= in fstab.5
+- added some partition types
+- swapon: warn only if verbose
+
+* Fri Jun 25 1999 Jeff Johnson <jbj@redhat.com>
+- update to 2.9s.
+
+* Sat May 29 1999 Jeff Johnson <jbj@redhat.com>
+- fix mkswap sets incorrect bits on sparc64 (#3140).
+
+* Thu Apr 15 1999 Jeff Johnson <jbj@redhat.com>
+- on sparc64 random ioctls on clock interface cause kernel messages.
+
+* Thu Apr 15 1999 Jeff Johnson <jbj@redhat.com>
+- improved raid patch (H.J. Lu).
+
+* Wed Apr 14 1999 Michael K. Johnson <johnsonm@redhat.com>
+- added patch for smartraid controllers
+
+* Sat Apr 10 1999 Cristian Gafton <gafton@redhat.com>
+- fix logging problems caused by setproctitle and PAM interaction
+  (#2045)
+
+* Wed Mar 31 1999 Jeff Johnson <jbj@redhat.com>
+- include docs and examples for sfdisk (#1164)
+
+* Mon Mar 29 1999 Matt Wilson <msw@redhat.com>
+- rtc is not working properly on alpha, we can't use hwclock yet.
+
+* Fri Mar 26 1999 Cristian Gafton <gafton@redhat.com>
+- add patch to make mkswap more 64 bit friendly... Patch from
+  eranian@hpl.hp.com (ahem!)
+
+* Thu Mar 25 1999 Jeff Johnson <jbj@redhat.com>
+- include sfdisk (#1164)
+- fix write (#1784)
+- use positive logic in spec file (ifarch rather than ifnarch).
+- (re)-use 1st matching utmp slot if search by mypid not found.
+- update to 2.9o
+- lastb wants bad logins in wtmp clone /var/run/btmp (#884)
+
+* Thu Mar 25 1999 Jakub Jelinek <jj@ultra.linux.cz>
+- if hwclock is to be compiled on sparc,
+  it must actually work. Also, it should obsolete
+  clock, otherwise it clashes.
+- limit the swap size in mkswap for 2.2.1+ kernels
+  by the actual maximum size kernel can handle.
+- fix kbdrate on sparc, patch by J. S. Connell
+  <ankh@canuck.gen.nz>
+
+* Wed Mar 24 1999 Matt Wilson <msw@redhat.com>
+- added pam_console back into pam.d/login
+
+* Tue Mar 23 1999 Matt Wilson <msw@redhat.com>
+- updated to 2.9i
+- added hwclock for sparcs and alpha
+
+* Mon Mar 22 1999 Erik Troan <ewt@redhat.com>
+- added vigr to file list
+
+* Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com> 
+- auto rebuild in the new build environment (release 12)
+
+* Thu Mar 18 1999 Cristian Gafton <gafton@redhat.com>
+- remove most of the ifnarch arm stuff
+
+* Mon Mar 15 1999 Michael Johnson <johnsonm@redhat.com>
+- added pam_console.so to /etc/pam.d/login
+
+* Thu Feb  4 1999 Michael K. Johnson <johnsonm@redhat.com>
+- .perms patch to login to make it retain root in parent process
+  for pam_close_session to work correctly
+
+* Tue Jan 12 1999 Jeff Johnson <jbj@redhat.com>
+- strip fdisk in buildroot correctly (#718)
+
+* Mon Jan 11 1999 Cristian Gafton <gafton@redhat.com>
+- have fdisk compiled on sparc and arm
+
+* Mon Jan 11 1999 Erik Troan <ewt@redhat.com>
+- added beos partition type to fdisk
+
+* Wed Dec 30 1998 Cristian Gafton <gafton@redhat.com>
+- incorporate fdisk on all arches
+
+* Sat Dec  5 1998 Jeff Johnson <jbj@redhat.com>
+- restore PAM functionality at end of login (Bug #201)
+
+* Thu Dec 03 1998 Cristian Gafton <gafton@redhat.com>
+- patch top build on the arm without PAM and related utilities, for now.
+- build hwclock only on intel
+
+* Wed Nov 18 1998 Cristian Gafton <gafton@redhat.com>
+- upgraded to version 2.9
+
+* Thu Oct 29 1998 Bill Nottingham <notting@redhat.com>
+- build for Raw Hide (slang-1.2.2)
+- patch kbdrate wackiness so it builds with egcs
+
+* Tue Oct 13 1998 Erik Troan <ewt@redhat.com>
+- patched more to use termcap
+
+* Mon Oct 12 1998 Erik Troan <ewt@redhat.com>
+- added warning about alpha/bsd label starting cylinder
+
+* Mon Sep 21 1998 Erik Troan <ewt@redhat.com>
+- use sigsetjmp/siglongjmp in more rather then sig'less versions
+
+* Fri Sep 11 1998 Jeff Johnson <jbj@redhat.com>
+- explicit attrs for setuid/setgid programs
+
+* Thu Aug 27 1998 Cristian Gafton <gafton@redhat.com>
+- sln is now included in glibc
+
+* Sun Aug 23 1998 Jeff Johnson <jbj@redhat.com>
+- add cbm1581 floppy definitions (problem #787)
+
+* Mon Jun 29 1998 Jeff Johnson <jbj@redhat.com>
+- remove /etc/nologin at end of shutdown/halt.
+
+* Fri Jun 19 1998 Jeff Johnson <jbj@redhat.com>
+- add mount/losetup.
+
+* Thu Jun 18 1998 Jeff Johnson <jbj@redhat.com>
+- update to 2.8 with 2.8b clean up. hostid now defunct?
+
+* Mon Jun 01 1998 David S. Miller <davem@dm.cobaltmicro.com>
+- "more" now works properly on sparc
+
+* Sat May 02 1998 Jeff Johnson <jbj@redhat.com>
+- Fix "fdisk -l" fault on mounted cdrom. (prob #513)
+
+* Fri Apr 24 1998 Prospector System <bugs@redhat.com>
+- translations modified for de, fr, tr
+
+* Sat Apr 11 1998 Cristian Gafton <gafton@redhat.com>
+- manhattan rebuild
+
+* Mon Dec 29 1997 Erik Troan <ewt@redhat.com>
+- more didn't suspend properly on glibc
+- use proper tc*() calls rather then ioctl's
+
+* Sun Dec 21 1997 Cristian Gafton <gafton@redhat.com>
+- fixed a security problem in chfn and chsh accepting too 
+  long gecos fields
+
+* Fri Dec 19 1997 Mike Wangsmo <wanger@redhat.com>
+- removed "." from default path
+
+* Tue Dec 02 1997 Cristian Gafton <gafton@redhat.com>
+- added (again) the vipw patch
+
+* Wed Oct 22 1997 Michael Fulbright <msf@redhat.com>
+- minor cleanups for glibc 2.1
+
+* Fri Oct 17 1997 Michael Fulbright <msf@redhat.com>
+- added vfat32 filesystem type to list recognized by fdisk
+
+* Fri Oct 10 1997 Erik Troan <ewt@redhat.com>
+- don't build clock on the alpha 
+- don't install chkdupexe
+
+* Thu Oct 02 1997 Michael K. Johnson <johnsonm@redhat.com>
+- Update to new pam standard.
+- BuildRoot.
+
+* Thu Sep 25 1997 Cristian Gafton <gafton@redhat.com>
+- added rootok and setproctitle patches
+- updated pam config files for chfn and chsh
+
+* Tue Sep 02 1997 Erik Troan <ewt@redhat.com>
+- updated MCONFIG to automatically determine the architecture
+- added glibc header hacks to fdisk code
+- rdev is only available on the intel
+
+* Fri Jul 18 1997 Erik Troan <ewt@redhat.com>
+- update to util-linux 2.7, fixed login problems
+
+* Wed Jun 25 1997 Erik Troan <ewt@redhat.com>
+- Merged Red Hat changes into main util-linux source, updated package to
+  development util-linux (nearly 2.7).
+
+* Tue Apr 22 1997 Michael K. Johnson <johnsonm@redhat.com>
+- LOG_AUTH --> LOG_AUTHPRIV in login and shutdown
+
+* Mon Mar 03 1997 Michael K. Johnson <johnsonm@redhat.com>
+- Moved to new pam and from pam.conf to pam.d
+
+* Tue Feb 25 1997 Michael K. Johnson <johnsonm@redhat.com>
+- pam.patch differentiated between different kinds of bad logins.
+  In particular, "user does not exist" and "bad password" were treated
+  differently.  This was a minor security hole.
diff --git a/uuidd-tmpfiles.conf b/uuidd-tmpfiles.conf
new file mode 100644
index 0000000..4158c7d
--- /dev/null
+++ b/uuidd-tmpfiles.conf
@@ -0,0 +1 @@
+d /run/uuidd 2775 uuidd uuidd