From b4080e636ce415b8f31bccc92f03a4234a35cbb5 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Tue, 11 Aug 2015 19:41:05 +0100 Subject: [PATCH 01/44] * Tue Aug 11 2015 Andrew Price - 3.1.8-4 - gfs2-utils: Fix hang on withdraw - Install udev withdraw handler scripts --- gfs2-utils.spec | 14 +++- gfs2_utils_Fix_hang_on_withdraw.patch | 97 +++++++++++++++++++++++++++ 2 files changed, 110 insertions(+), 1 deletion(-) create mode 100644 gfs2_utils_Fix_hang_on_withdraw.patch diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 2d3801f..317796a 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.8 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -32,10 +32,12 @@ BuildRequires: check-devel Source: https://fedorahosted.org/released/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://fedorahosted.org/cluster/wiki/HomePage Patch0: fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic.patch +Patch1: gfs2_utils_Fix_hang_on_withdraw.patch %prep %setup -q -n gfs2-utils-%{version} %patch0 -p 1 -b .fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic +%patch1 -p 1 -b .gfs2_utils_Fix_hang_on_withdraw %build ./autogen.sh @@ -52,6 +54,10 @@ rm -f %{buildroot}/usr/sbin/gfs2_trace rm -f %{buildroot}/usr/sbin/gfs2_lockcapture rm -f %{buildroot}%{_mandir}/man8/gfs2_trace.8 rm -f %{buildroot}%{_mandir}/man8/gfs2_lockcapture.8 +# Install withdraw helper scripts +install -m 755 gfs2/scripts/gfs2_wd_udev.sh %{buildroot}%{_sbindir}/ +install -D -m 644 gfs2/scripts/82-gfs2-withdraw.rules \ + %{buildroot}%{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %description The gfs2-utils package contains a number of utilities for creating, @@ -68,10 +74,16 @@ file systems. %{_sbindir}/gfs2_convert %{_sbindir}/gfs2_edit %{_sbindir}/tunegfs2 +%{_sbindir}/gfs2_wd_udev.sh %{_mandir}/man8/*gfs2* %{_mandir}/man5/* +%{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Tue Aug 11 2015 Andrew Price - 3.1.8-4 +- gfs2-utils: Fix hang on withdraw +- Install udev withdraw handler scripts + * Wed Jun 17 2015 Fedora Release Engineering - 3.1.8-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild diff --git a/gfs2_utils_Fix_hang_on_withdraw.patch b/gfs2_utils_Fix_hang_on_withdraw.patch new file mode 100644 index 0000000..2d2f051 --- /dev/null +++ b/gfs2_utils_Fix_hang_on_withdraw.patch @@ -0,0 +1,97 @@ +commit 4e9a8f12b74d61314e79904a0f02e42e99a98493 +Author: Abhi Das +Date: Tue Aug 4 11:00:51 2015 -0500 + + gfs2-utils: Fix hang on withdraw + + Issuing a withdraw on a gfs2 filesystem causes a hang. When + gfs_controld was removed, the userspace functionality that + completes a withdraw operation went away. This causes gfs2 + kernel to hang waiting for a withdraw completion ack from + userspace. + + This patchset introduces a uevent-based shell script to do + the job that gfs_controld used to do on withdraw. An 'offline' + uevent triggers the execution of this script. This script + suspends the device associated with the filesystem and signals + a completed withdraw to the kernel. + + Resolves: rhbz#1225634 + Signed-off-by: Abhi Das + +diff --git a/README.build b/README.build +index f4ebe53..6487bae 100644 +--- a/README.build ++++ b/README.build +@@ -29,5 +29,14 @@ To install gfs2-utils, run: + + make install + ++The following scripts (located in gfs2/scripts) are used to complete ++the userland portion of the gfs2 withdraw feature using uevents. They ++are not installed by 'make install' and need to be installed manually ++or during rpm installation to the corresponding locations. ++ ++ 82-gfs2-withdraw.rules in /etc/udev/rules.d/ ++ gfs2_wd_udev.sh in /usr/sbin/ ++ + See also doc/README.contributing for details on submitting patches and + doc/README.tests for more details regarding the test suite. ++ +diff --git a/gfs2/scripts/82-gfs2-withdraw.rules b/gfs2/scripts/82-gfs2-withdraw.rules +new file mode 100644 +index 0000000..2228615 +--- /dev/null ++++ b/gfs2/scripts/82-gfs2-withdraw.rules +@@ -0,0 +1,2 @@ ++SUBSYSTEM=="gfs2", ACTION=="offline", RUN+="/bin/sh /usr/sbin/gfs2_wd_udev.sh" ++ +diff --git a/gfs2/scripts/Makefile.am b/gfs2/scripts/Makefile.am +index 62fb2fe..dde906f 100644 +--- a/gfs2/scripts/Makefile.am ++++ b/gfs2/scripts/Makefile.am +@@ -3,3 +3,8 @@ MAINTAINERCLEANFILES = Makefile.in + dist_sbin_SCRIPTS = \ + gfs2_lockcapture \ + gfs2_trace ++ ++noinst_SCRIPTS = \ ++ 82-gfs2-withdraw.rules \ ++ gfs2_wd_udev.sh ++ +diff --git a/gfs2/scripts/gfs2_wd_udev.sh b/gfs2/scripts/gfs2_wd_udev.sh +new file mode 100755 +index 0000000..ac3ce35 +--- /dev/null ++++ b/gfs2/scripts/gfs2_wd_udev.sh +@@ -0,0 +1,30 @@ ++#!/bin/sh ++# ++# Do not run this script manually. This script is called by udev on a gfs2 ++# withdraw uevent and is used to complete the withdraw action and notify the ++# kernel. ++# ++ ++# Sanity checks ++if [ "$SUBSYSTEM" != "gfs2" ] || [ "$LOCKPROTO" != "lock_dlm" ] || ++ [ -z "$DEVPATH" ] || [ "$ACTION" != "offline" ] ++then ++ exit 1 # Nothing to do here ++fi ++ ++# Try and suspend the device ++SYSFS_TOPDIR="/sys"$DEVPATH ++DM_NAME=$(cat "$SYSFS_TOPDIR/device/dm/name") ++DM_DEV="/dev/mapper/"$DM_NAME ++ ++if [ -z "$DM_DEV" ] ++then ++ /usr/bin/dmsetup suspend $DM_DEV ++fi ++ ++# Signal completion of withdraw ++WD_ACK="$SYSFS_TOPDIR/lock_module/withdraw" ++if [ -f "$WD_ACK" ] ++then ++ echo "1" > $WD_ACK ++fi From 6d1e4a09aebb8892537e47b4d8cb28cb612370ef Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Thu, 20 Aug 2015 16:11:44 +0100 Subject: [PATCH 02/44] * Thu Aug 20 2015 Andrew Price - 3.1.8-5 - Add patches to install the withdraw helper script properly: scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch scripts_install_the_withdraw_helper_script.patch scripts_install_the_withdraw_udev_rules_script.patch - Remove the obsolete udev script installation bits --- gfs2-utils.spec | 21 +++- ...s_install_the_withdraw_helper_script.patch | 27 ++++ ...stall_the_withdraw_udev_rules_script.patch | 72 +++++++++++ ...2_wd_udev_sh_to_gfs2_withdraw_helper.patch | 115 ++++++++++++++++++ 4 files changed, 229 insertions(+), 6 deletions(-) create mode 100644 scripts_install_the_withdraw_helper_script.patch create mode 100644 scripts_install_the_withdraw_udev_rules_script.patch create mode 100644 scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 317796a..37dd1fc 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.8 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -33,11 +33,17 @@ Source: https://fedorahosted.org/released/gfs2-utils/gfs2-utils-%{version}.tar.g URL: https://fedorahosted.org/cluster/wiki/HomePage Patch0: fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic.patch Patch1: gfs2_utils_Fix_hang_on_withdraw.patch +Patch2: scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch +Patch3: scripts_install_the_withdraw_helper_script.patch +Patch4: scripts_install_the_withdraw_udev_rules_script.patch %prep %setup -q -n gfs2-utils-%{version} %patch0 -p 1 -b .fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic %patch1 -p 1 -b .gfs2_utils_Fix_hang_on_withdraw +%patch2 -p 1 -b .scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper +%patch3 -p 1 -b .scripts_install_the_withdraw_helper_script +%patch4 -p 1 -b .scripts_install_the_withdraw_udev_rules_script %build ./autogen.sh @@ -54,10 +60,6 @@ rm -f %{buildroot}/usr/sbin/gfs2_trace rm -f %{buildroot}/usr/sbin/gfs2_lockcapture rm -f %{buildroot}%{_mandir}/man8/gfs2_trace.8 rm -f %{buildroot}%{_mandir}/man8/gfs2_lockcapture.8 -# Install withdraw helper scripts -install -m 755 gfs2/scripts/gfs2_wd_udev.sh %{buildroot}%{_sbindir}/ -install -D -m 644 gfs2/scripts/82-gfs2-withdraw.rules \ - %{buildroot}%{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %description The gfs2-utils package contains a number of utilities for creating, @@ -74,12 +76,19 @@ file systems. %{_sbindir}/gfs2_convert %{_sbindir}/gfs2_edit %{_sbindir}/tunegfs2 -%{_sbindir}/gfs2_wd_udev.sh +%{_sbindir}/gfs2_withdraw_helper %{_mandir}/man8/*gfs2* %{_mandir}/man5/* %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Aug 20 2015 Andrew Price - 3.1.8-5 +- Add patches to install the withdraw helper script properly: + scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch + scripts_install_the_withdraw_helper_script.patch + scripts_install_the_withdraw_udev_rules_script.patch +- Remove the obsolete udev script installation bits + * Tue Aug 11 2015 Andrew Price - 3.1.8-4 - gfs2-utils: Fix hang on withdraw - Install udev withdraw handler scripts diff --git a/scripts_install_the_withdraw_helper_script.patch b/scripts_install_the_withdraw_helper_script.patch new file mode 100644 index 0000000..de2d182 --- /dev/null +++ b/scripts_install_the_withdraw_helper_script.patch @@ -0,0 +1,27 @@ +commit fdded71f349ec5928a1422bc7edaa7f4f6c0be26 +Author: Andrew Price +Date: Tue Aug 18 12:48:50 2015 +0100 + + scripts: install the withdraw helper script + + Install gfs2_withdraw_helper into /usr/sbin in 'make install'. + + Signed-off-by: Andrew Price + +diff --git a/gfs2/scripts/Makefile.am b/gfs2/scripts/Makefile.am +index 51764fa..056aaa5 100644 +--- a/gfs2/scripts/Makefile.am ++++ b/gfs2/scripts/Makefile.am +@@ -2,9 +2,9 @@ MAINTAINERCLEANFILES = Makefile.in + + dist_sbin_SCRIPTS = \ + gfs2_lockcapture \ +- gfs2_trace ++ gfs2_trace \ ++ gfs2_withdraw_helper + + noinst_SCRIPTS = \ +- 82-gfs2-withdraw.rules \ +- gfs2_withdraw_helper ++ 82-gfs2-withdraw.rules + diff --git a/scripts_install_the_withdraw_udev_rules_script.patch b/scripts_install_the_withdraw_udev_rules_script.patch new file mode 100644 index 0000000..430ea5e --- /dev/null +++ b/scripts_install_the_withdraw_udev_rules_script.patch @@ -0,0 +1,72 @@ +commit 9aa261bd5e65beb757b0953ba43211fc29641952 +Author: Andrew Price +Date: Wed Aug 19 12:13:39 2015 +0100 + + scripts: install the withdraw udev rules script + + Add a --with-udevdir configure option and default to $prefix/lib/udev. + Note that we can't use $libdir for this as that will often be /usr/lib64 + and the udevdir is arch-independent. + + Also add the autoconf bits needed to install 82-gfs2-withdraw.rules into + $udevdir/rules.d + + Signed-off-by: Andrew Price + +diff --git a/README.build b/README.build +index acfde1b..d0a21c3 100644 +--- a/README.build ++++ b/README.build +@@ -31,10 +31,9 @@ To install gfs2-utils, run: + + The following scripts (located in gfs2/scripts) are used to complete + the userland portion of the gfs2 withdraw feature using uevents. They +-are not installed by 'make install' and need to be installed manually +-or during rpm installation to the corresponding locations. ++will be installed by 'make install' to these directories by default: + +- 82-gfs2-withdraw.rules in /etc/udev/rules.d/ ++ 82-gfs2-withdraw.rules in /usr/lib/udev/rules.d/ + gfs2_withdraw_helper in /usr/sbin/ + + See also doc/README.contributing for details on submitting patches and +diff --git a/configure.ac b/configure.ac +index de96e5a..35cafe6 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -110,6 +110,12 @@ if test -z "$ncurses_CFLAGS" && test -z "$ncurses_LIBS"; then + ncurses_LIBS=-lncurses + fi + ++AC_ARG_WITH([udevdir], ++ AS_HELP_STRING([--with-udevdir=DIR], ++ [udev directory containing rules.d [default=${prefix}/lib/udev]]), ++ [], [with_udevdir=\${prefix}/lib/udev]) ++AC_SUBST([udevdir], [$with_udevdir]) ++ + # Checks for header files. + AC_CHECK_HEADERS([fcntl.h libintl.h limits.h locale.h mntent.h stddef.h sys/file.h sys/ioctl.h sys/mount.h sys/time.h sys/vfs.h syslog.h termios.h]) + AC_CHECK_HEADER([linux/fs.h], [], [AC_MSG_ERROR([Unable to find linux/fs.h])]) +@@ -209,7 +215,9 @@ echo " Configure summary" + echo " ===================" + echo " prefix : $prefix" + echo " exec_prefix : $exec_prefix" ++echo " libdir : $libdir" + echo " sbindir : $sbindir" ++echo " udevdir : $udevdir" + echo " ------------------" + echo " debug build : $enable_debug" + echo " C unit tests : $have_check" +diff --git a/gfs2/scripts/Makefile.am b/gfs2/scripts/Makefile.am +index 056aaa5..d4bda04 100644 +--- a/gfs2/scripts/Makefile.am ++++ b/gfs2/scripts/Makefile.am +@@ -5,6 +5,6 @@ dist_sbin_SCRIPTS = \ + gfs2_trace \ + gfs2_withdraw_helper + +-noinst_SCRIPTS = \ ++udevrulesdir=@udevdir@/rules.d ++dist_udevrules_DATA = \ + 82-gfs2-withdraw.rules +- diff --git a/scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch b/scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch new file mode 100644 index 0000000..7f48867 --- /dev/null +++ b/scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch @@ -0,0 +1,115 @@ +commit bdb6bb67ee4532c2dfb65eeeebcec06bda99d4ff +Author: Andrew Price +Date: Tue Aug 18 12:35:52 2015 +0100 + + scripts: rename gfs2_wd_udev.sh to gfs2_withdraw_helper + + Makes the name more descriptive and consistent with the name of the udev + rules script. + + Signed-off-by: Andrew Price + +diff --git a/README.build b/README.build +index 6487bae..acfde1b 100644 +--- a/README.build ++++ b/README.build +@@ -35,7 +35,7 @@ are not installed by 'make install' and need to be installed manually + or during rpm installation to the corresponding locations. + + 82-gfs2-withdraw.rules in /etc/udev/rules.d/ +- gfs2_wd_udev.sh in /usr/sbin/ ++ gfs2_withdraw_helper in /usr/sbin/ + + See also doc/README.contributing for details on submitting patches and + doc/README.tests for more details regarding the test suite. +diff --git a/gfs2/scripts/82-gfs2-withdraw.rules b/gfs2/scripts/82-gfs2-withdraw.rules +index 2228615..2c9e0e8 100644 +--- a/gfs2/scripts/82-gfs2-withdraw.rules ++++ b/gfs2/scripts/82-gfs2-withdraw.rules +@@ -1,2 +1,2 @@ +-SUBSYSTEM=="gfs2", ACTION=="offline", RUN+="/bin/sh /usr/sbin/gfs2_wd_udev.sh" ++SUBSYSTEM=="gfs2", ACTION=="offline", RUN+="/bin/sh /usr/sbin/gfs2_withdraw_helper" + +diff --git a/gfs2/scripts/Makefile.am b/gfs2/scripts/Makefile.am +index dde906f..51764fa 100644 +--- a/gfs2/scripts/Makefile.am ++++ b/gfs2/scripts/Makefile.am +@@ -6,5 +6,5 @@ dist_sbin_SCRIPTS = \ + + noinst_SCRIPTS = \ + 82-gfs2-withdraw.rules \ +- gfs2_wd_udev.sh ++ gfs2_withdraw_helper + +diff --git a/gfs2/scripts/gfs2_wd_udev.sh b/gfs2/scripts/gfs2_wd_udev.sh +deleted file mode 100755 +index ac3ce35..0000000 +--- a/gfs2/scripts/gfs2_wd_udev.sh ++++ /dev/null +@@ -1,30 +0,0 @@ +-#!/bin/sh +-# +-# Do not run this script manually. This script is called by udev on a gfs2 +-# withdraw uevent and is used to complete the withdraw action and notify the +-# kernel. +-# +- +-# Sanity checks +-if [ "$SUBSYSTEM" != "gfs2" ] || [ "$LOCKPROTO" != "lock_dlm" ] || +- [ -z "$DEVPATH" ] || [ "$ACTION" != "offline" ] +-then +- exit 1 # Nothing to do here +-fi +- +-# Try and suspend the device +-SYSFS_TOPDIR="/sys"$DEVPATH +-DM_NAME=$(cat "$SYSFS_TOPDIR/device/dm/name") +-DM_DEV="/dev/mapper/"$DM_NAME +- +-if [ -z "$DM_DEV" ] +-then +- /usr/bin/dmsetup suspend $DM_DEV +-fi +- +-# Signal completion of withdraw +-WD_ACK="$SYSFS_TOPDIR/lock_module/withdraw" +-if [ -f "$WD_ACK" ] +-then +- echo "1" > $WD_ACK +-fi +diff --git a/gfs2/scripts/gfs2_withdraw_helper b/gfs2/scripts/gfs2_withdraw_helper +new file mode 100755 +index 0000000..ac3ce35 +--- /dev/null ++++ b/gfs2/scripts/gfs2_withdraw_helper +@@ -0,0 +1,30 @@ ++#!/bin/sh ++# ++# Do not run this script manually. This script is called by udev on a gfs2 ++# withdraw uevent and is used to complete the withdraw action and notify the ++# kernel. ++# ++ ++# Sanity checks ++if [ "$SUBSYSTEM" != "gfs2" ] || [ "$LOCKPROTO" != "lock_dlm" ] || ++ [ -z "$DEVPATH" ] || [ "$ACTION" != "offline" ] ++then ++ exit 1 # Nothing to do here ++fi ++ ++# Try and suspend the device ++SYSFS_TOPDIR="/sys"$DEVPATH ++DM_NAME=$(cat "$SYSFS_TOPDIR/device/dm/name") ++DM_DEV="/dev/mapper/"$DM_NAME ++ ++if [ -z "$DM_DEV" ] ++then ++ /usr/bin/dmsetup suspend $DM_DEV ++fi ++ ++# Signal completion of withdraw ++WD_ACK="$SYSFS_TOPDIR/lock_module/withdraw" ++if [ -f "$WD_ACK" ] ++then ++ echo "1" > $WD_ACK ++fi From 8ee10a8095dd817a913ae3e4b833e6b6534fda9f Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 3 Feb 2016 21:21:07 +0000 Subject: [PATCH 03/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 37dd1fc..881f74d 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.8 -Release: 5%{?dist} +Release: 6%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -82,6 +82,9 @@ file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Wed Feb 03 2016 Fedora Release Engineering - 3.1.8-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Thu Aug 20 2015 Andrew Price - 3.1.8-5 - Add patches to install the withdraw helper script properly: scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch From 0b214d7cb0000d382169aa2b5a1edd3b590df5b0 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Mon, 15 Feb 2016 20:39:08 +0000 Subject: [PATCH 04/44] * Mon Feb 15 2016 Andrew Price - 3.1.8-7 - libgfs2: Add support for dirent.de_rahead - gfs2_edit: Include dirent.de_rahead in directory listings - gfs2-utils: Add a check for the de_rahead field - libgfs2: Support the new dirent de_cookie field Resolves: bz#1307532 --- ...fs2_Add_support_for_dirent_de_rahead.patch | 43 +++++++ ...rent_de_rahead_in_directory_listings.patch | 32 ++++++ ..._Add_a_check_for_the_de_rahead_field.patch | 83 ++++++++++++++ ...pport_the_new_dirent_de_cookie_field.patch | 106 ++++++++++++++++++ gfs2-utils.spec | 18 ++- 5 files changed, 281 insertions(+), 1 deletion(-) create mode 100644 1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch create mode 100644 1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch create mode 100644 1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch create mode 100644 1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch diff --git a/1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch b/1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch new file mode 100644 index 0000000..23e9e44 --- /dev/null +++ b/1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch @@ -0,0 +1,43 @@ +commit 3141e81ae6eef9c2fa1de36929140ec122c70805 +Author: Andreas Gruenbacher +Date: Wed Sep 9 17:55:29 2015 +0200 + + libgfs2: Add support for dirent.de_rahead + + This field indicates how many blocks of metadata can be read ahead when reading + in the inode a directory entry points at. + + Signed-off-by: Andreas Gruenbacher + +diff --git a/gfs2/libgfs2/meta.c b/gfs2/libgfs2/meta.c +index 79de64d..70daec4 100644 +--- a/gfs2/libgfs2/meta.c ++++ b/gfs2/libgfs2/meta.c +@@ -428,6 +428,7 @@ F(de_hash, .flags = LGFS2_MFF_CHECK) + F(de_rec_len, .flags = LGFS2_MFF_BYTES) + F(de_name_len, .flags = LGFS2_MFF_BYTES) + F(de_type) ++F(de_rahead) + RF(__pad) + }; + +diff --git a/gfs2/libgfs2/ondisk.c b/gfs2/libgfs2/ondisk.c +index 4744337..7f34bd2 100644 +--- a/gfs2/libgfs2/ondisk.c ++++ b/gfs2/libgfs2/ondisk.c +@@ -415,6 +415,7 @@ void gfs2_dirent_in(struct gfs2_dirent *de, char *buf) + CPIN_16(de, str, de_rec_len); + CPIN_16(de, str, de_name_len); + CPIN_16(de, str, de_type); ++ CPIN_16(de, str, de_rahead); + } + + void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) +@@ -427,6 +428,7 @@ void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) + CPOUT_16(de, str, de_name_len); + CPOUT_16(de, str, de_type); + memset(str->__pad, 0, sizeof(str->__pad)); ++ CPOUT_16(de, str, de_rahead); + } + + void gfs2_leaf_in(struct gfs2_leaf *lf, struct gfs2_buffer_head *bh) diff --git a/1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch b/1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch new file mode 100644 index 0000000..9d3a4f0 --- /dev/null +++ b/1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch @@ -0,0 +1,32 @@ +commit dcd8296e142d3bd69e1a1bda2c096ed78fe4888f +Author: Andreas Gruenbacher +Date: Wed Sep 9 17:55:30 2015 +0200 + + gfs2_edit: Include dirent.de_rahead in directory listings + + When dumping a directory, for directory each entry, also print how many blocks + of metadata can be read ahead when reading in the inode the entry points at. + + Signed-off-by: Andreas Gruenbacher + +diff --git a/gfs2/edit/extended.c b/gfs2/edit/extended.c +index e5cb12c..b1826a1 100644 +--- a/gfs2/edit/extended.c ++++ b/gfs2/edit/extended.c +@@ -342,13 +342,14 @@ static int display_leaf(struct iinfo *ind) + strcpy(edit_fmt, "%llx"); + } + } +- print_gfs2("%d/%d [%08x] %lld/%lld (0x%llx/0x%llx): ", ++ print_gfs2("%d/%d [%08x] %lld/%lld (0x%llx/0x%llx) +%u: ", + total_dirents, d + 1, + ind->ii[0].dirent[d].dirent.de_hash, + ind->ii[0].dirent[d].dirent.de_inum.no_formal_ino, + ind->ii[0].dirent[d].block, + ind->ii[0].dirent[d].dirent.de_inum.no_formal_ino, +- ind->ii[0].dirent[d].block); ++ ind->ii[0].dirent[d].block, ++ (unsigned int)ind->ii[0].dirent[d].dirent.de_rahead); + } + print_inode_type(ind->ii[0].dirent[d].dirent.de_type); + print_gfs2(" %s", ind->ii[0].dirent[d].filename); diff --git a/1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch b/1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch new file mode 100644 index 0000000..37f6e7b --- /dev/null +++ b/1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch @@ -0,0 +1,83 @@ +commit 471bc208c8e29013b2abb66f36d6e6d9ef4e4337 +Author: Andrew Price +Date: Thu Sep 10 11:33:24 2015 +0100 + + gfs2-utils: Add a check for the de_rahead field + + gfs2_dirent.de_rahead first appeared in Linux 3.15. Support prior + versions by checking for de_rahead and using it conditionally. + + Signed-off-by: Andrew Price + +diff --git a/configure.ac b/configure.ac +index 35cafe6..a5418aa 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -125,6 +125,8 @@ AC_CHECK_HEADER([linux/gfs2_ondisk.h], [], [AC_MSG_ERROR([Unable to find linux/g + AC_CHECK_MEMBER([struct gfs2_sb.sb_uuid], [], [], [[#include ]]) + AC_CHECK_MEMBER([struct gfs2_leaf.lf_inode],[AC_DEFINE([GFS2_HAS_LEAF_HINTS],[],[Leaf block hints])], + [], [[#include ]]) ++AC_CHECK_MEMBER([struct gfs2_dirent.de_rahead],[AC_DEFINE([GFS2_HAS_DE_RAHEAD],[],[Dirent readahead field])], ++ [], [[#include ]]) + + # *FLAGS handling + ENV_CFLAGS="$CFLAGS" +diff --git a/gfs2/edit/extended.c b/gfs2/edit/extended.c +index b1826a1..a13827e 100644 +--- a/gfs2/edit/extended.c ++++ b/gfs2/edit/extended.c +@@ -349,7 +349,12 @@ static int display_leaf(struct iinfo *ind) + ind->ii[0].dirent[d].block, + ind->ii[0].dirent[d].dirent.de_inum.no_formal_ino, + ind->ii[0].dirent[d].block, +- (unsigned int)ind->ii[0].dirent[d].dirent.de_rahead); ++#ifdef GFS2_HAS_DE_RAHEAD ++ (unsigned int)ind->ii[0].dirent[d].dirent.de_rahead ++#else ++ 0 ++#endif ++ ); + } + print_inode_type(ind->ii[0].dirent[d].dirent.de_type); + print_gfs2(" %s", ind->ii[0].dirent[d].filename); +diff --git a/gfs2/libgfs2/meta.c b/gfs2/libgfs2/meta.c +index 70daec4..4f43af5 100644 +--- a/gfs2/libgfs2/meta.c ++++ b/gfs2/libgfs2/meta.c +@@ -428,8 +428,12 @@ F(de_hash, .flags = LGFS2_MFF_CHECK) + F(de_rec_len, .flags = LGFS2_MFF_BYTES) + F(de_name_len, .flags = LGFS2_MFF_BYTES) + F(de_type) ++#ifdef GFS2_HAS_DE_RAHEAD + F(de_rahead) ++RF(__pad2) ++#else + RF(__pad) ++#endif + }; + + #undef STRUCT +diff --git a/gfs2/libgfs2/ondisk.c b/gfs2/libgfs2/ondisk.c +index 7f34bd2..b9418c5 100644 +--- a/gfs2/libgfs2/ondisk.c ++++ b/gfs2/libgfs2/ondisk.c +@@ -415,7 +415,9 @@ void gfs2_dirent_in(struct gfs2_dirent *de, char *buf) + CPIN_16(de, str, de_rec_len); + CPIN_16(de, str, de_name_len); + CPIN_16(de, str, de_type); ++#ifdef GFS2_HAS_DE_RAHEAD + CPIN_16(de, str, de_rahead); ++#endif + } + + void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) +@@ -428,7 +430,9 @@ void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) + CPOUT_16(de, str, de_name_len); + CPOUT_16(de, str, de_type); + memset(str->__pad, 0, sizeof(str->__pad)); ++#ifdef GFS2_HAS_DE_RAHEAD + CPOUT_16(de, str, de_rahead); ++#endif + } + + void gfs2_leaf_in(struct gfs2_leaf *lf, struct gfs2_buffer_head *bh) diff --git a/1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch b/1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch new file mode 100644 index 0000000..4bf86bb --- /dev/null +++ b/1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch @@ -0,0 +1,106 @@ +commit da2bced4ff2a8fa9c95fde8071f2f164c0c1466a +Author: Andrew Price +Date: Mon Feb 15 12:42:51 2016 +0000 + + libgfs2: Support the new dirent de_cookie field + + Detect whether the new de_cookie field (kernel commit 471f3db27) is + present in struct gfs2_dirent in the configure script and update the + metadata description to support that field. + + It also seems that meta.c was not using the GFS2_HAS_* defines from + clusterautoconfig.h and that was causing a unit test to fail with + + gfs2_dirent: __pad: offset is 28, expected 26 + gfs2_dirent: size mismatch between struct 40 and fields 38 + + This commit adds an #include to fix that. + + Fixes Rawhide bz#1307532 + + Signed-off-by: Andrew Price + +diff --git a/configure.ac b/configure.ac +index 130cb01..f6174ff 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -127,6 +127,8 @@ AC_CHECK_MEMBER([struct gfs2_leaf.lf_inode],[AC_DEFINE([GFS2_HAS_LEAF_HINTS],[], + [], [[#include ]]) + AC_CHECK_MEMBER([struct gfs2_dirent.de_rahead],[AC_DEFINE([GFS2_HAS_DE_RAHEAD],[],[Dirent readahead field])], + [], [[#include ]]) ++AC_CHECK_MEMBER([struct gfs2_dirent.de_cookie],[AC_DEFINE([GFS2_HAS_DE_COOKIE],[],[Dirent cookie field])], ++ [], [[#include ]]) + + # *FLAGS handling + ENV_CFLAGS="$CFLAGS" +diff --git a/gfs2/libgfs2/meta.c b/gfs2/libgfs2/meta.c +index 4f43af5..90d5647 100644 +--- a/gfs2/libgfs2/meta.c ++++ b/gfs2/libgfs2/meta.c +@@ -1,6 +1,7 @@ + #include + #include + #include "libgfs2.h" ++#include "clusterautoconfig.h" + + #define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0])) + #define SYM(x) { x, #x }, +@@ -430,10 +431,15 @@ F(de_name_len, .flags = LGFS2_MFF_BYTES) + F(de_type) + #ifdef GFS2_HAS_DE_RAHEAD + F(de_rahead) +-RF(__pad2) ++#ifdef GFS2_HAS_DE_COOKIE ++F(de_cookie) ++RF(pad3) ++#else ++RF(pad2) ++#endif /* GFS2_HAS_DE_COOKIE */ + #else + RF(__pad) +-#endif ++#endif /* GFS2_HAS_DE_RAHEAD */ + }; + + #undef STRUCT +diff --git a/gfs2/libgfs2/ondisk.c b/gfs2/libgfs2/ondisk.c +index b9418c5..ea1f61f 100644 +--- a/gfs2/libgfs2/ondisk.c ++++ b/gfs2/libgfs2/ondisk.c +@@ -417,7 +417,15 @@ void gfs2_dirent_in(struct gfs2_dirent *de, char *buf) + CPIN_16(de, str, de_type); + #ifdef GFS2_HAS_DE_RAHEAD + CPIN_16(de, str, de_rahead); +-#endif ++#ifdef GFS2_HAS_DE_COOKIE ++ CPIN_32(de, str, de_cookie); ++ CPIN_08(de, str, pad3, 8); ++#else ++ CPIN_08(de, str, pad2, 12); ++#endif /* GFS2_HAS_DE_COOKIE */ ++#else ++ CPIN_08(de, str, __pad, 14); ++#endif /* GFS2_HAS_DE_RAHEAD */ + } + + void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) +@@ -429,10 +437,17 @@ void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) + CPOUT_16(de, str, de_rec_len); + CPOUT_16(de, str, de_name_len); + CPOUT_16(de, str, de_type); +- memset(str->__pad, 0, sizeof(str->__pad)); + #ifdef GFS2_HAS_DE_RAHEAD + CPOUT_16(de, str, de_rahead); +-#endif ++#ifdef GFS2_HAS_DE_COOKIE ++ CPOUT_32(de, str, de_cookie); ++ CPOUT_08(de, str, pad3, 8); ++#else ++ CPOUT_08(de, str, pad2, 12); ++#endif /* GFS2_HAS_DE_COOKIE */ ++#else ++ CPOUT_08(de, str, __pad, 14); ++#endif /* GFS2_HAS_DE_RAHEAD */ + } + + void gfs2_leaf_in(struct gfs2_leaf *lf, struct gfs2_buffer_head *bh) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 881f74d..47d4ea1 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.8 -Release: 6%{?dist} +Release: 7%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -36,6 +36,11 @@ Patch1: gfs2_utils_Fix_hang_on_withdraw.patch Patch2: scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch Patch3: scripts_install_the_withdraw_helper_script.patch Patch4: scripts_install_the_withdraw_udev_rules_script.patch +Patch5: 1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch +Patch6: 1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch +Patch7: 1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch +Patch8: 1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch + %prep %setup -q -n gfs2-utils-%{version} @@ -44,6 +49,10 @@ Patch4: scripts_install_the_withdraw_udev_rules_script.patch %patch2 -p 1 -b .scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper %patch3 -p 1 -b .scripts_install_the_withdraw_helper_script %patch4 -p 1 -b .scripts_install_the_withdraw_udev_rules_script +%patch5 -p 1 -b .1307532-1-libgfs2_Add_support_for_dirent_de_rahead +%patch6 -p 1 -b .1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings +%patch7 -p 1 -b .1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field +%patch8 -p 1 -b .1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field %build ./autogen.sh @@ -82,6 +91,13 @@ file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Mon Feb 15 2016 Andrew Price - 3.1.8-7 +- libgfs2: Add support for dirent.de_rahead +- gfs2_edit: Include dirent.de_rahead in directory listings +- gfs2-utils: Add a check for the de_rahead field +- libgfs2: Support the new dirent de_cookie field + Resolves: bz#1307532 + * Wed Feb 03 2016 Fedora Release Engineering - 3.1.8-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From 4593ae723dd92012470f21badbe485e9a43a157c Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Tue, 7 Jun 2016 13:23:02 +0100 Subject: [PATCH 05/44] * Tue Jun 07 2016 Andrew Price - 3.1.9-1 - New upstream release - Drop all patches - Add glocktop to the package --- .gitignore | 1 + ...fs2_Add_support_for_dirent_de_rahead.patch | 43 --- ...rent_de_rahead_in_directory_listings.patch | 32 -- ..._Add_a_check_for_the_de_rahead_field.patch | 83 ----- ...pport_the_new_dirent_de_cookie_field.patch | 106 ------ ...ecent_i_goal_fixes_with_simple_logic.patch | 304 ------------------ gfs2-utils.spec | 37 +-- gfs2_utils_Fix_hang_on_withdraw.patch | 97 ------ ...s_install_the_withdraw_helper_script.patch | 27 -- ...stall_the_withdraw_udev_rules_script.patch | 72 ----- ...2_wd_udev_sh_to_gfs2_withdraw_helper.patch | 115 ------- sources | 2 +- 12 files changed, 14 insertions(+), 905 deletions(-) delete mode 100644 1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch delete mode 100644 1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch delete mode 100644 1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch delete mode 100644 1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch delete mode 100644 fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic.patch delete mode 100644 gfs2_utils_Fix_hang_on_withdraw.patch delete mode 100644 scripts_install_the_withdraw_helper_script.patch delete mode 100644 scripts_install_the_withdraw_udev_rules_script.patch delete mode 100644 scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch diff --git a/.gitignore b/.gitignore index 0937feb..6f5f323 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /gfs2-utils-3.1.6.tar.gz /gfs2-utils-3.1.7.tar.gz /gfs2-utils-3.1.8.tar.gz +/gfs2-utils-3.1.9.tar.gz diff --git a/1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch b/1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch deleted file mode 100644 index 23e9e44..0000000 --- a/1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch +++ /dev/null @@ -1,43 +0,0 @@ -commit 3141e81ae6eef9c2fa1de36929140ec122c70805 -Author: Andreas Gruenbacher -Date: Wed Sep 9 17:55:29 2015 +0200 - - libgfs2: Add support for dirent.de_rahead - - This field indicates how many blocks of metadata can be read ahead when reading - in the inode a directory entry points at. - - Signed-off-by: Andreas Gruenbacher - -diff --git a/gfs2/libgfs2/meta.c b/gfs2/libgfs2/meta.c -index 79de64d..70daec4 100644 ---- a/gfs2/libgfs2/meta.c -+++ b/gfs2/libgfs2/meta.c -@@ -428,6 +428,7 @@ F(de_hash, .flags = LGFS2_MFF_CHECK) - F(de_rec_len, .flags = LGFS2_MFF_BYTES) - F(de_name_len, .flags = LGFS2_MFF_BYTES) - F(de_type) -+F(de_rahead) - RF(__pad) - }; - -diff --git a/gfs2/libgfs2/ondisk.c b/gfs2/libgfs2/ondisk.c -index 4744337..7f34bd2 100644 ---- a/gfs2/libgfs2/ondisk.c -+++ b/gfs2/libgfs2/ondisk.c -@@ -415,6 +415,7 @@ void gfs2_dirent_in(struct gfs2_dirent *de, char *buf) - CPIN_16(de, str, de_rec_len); - CPIN_16(de, str, de_name_len); - CPIN_16(de, str, de_type); -+ CPIN_16(de, str, de_rahead); - } - - void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) -@@ -427,6 +428,7 @@ void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) - CPOUT_16(de, str, de_name_len); - CPOUT_16(de, str, de_type); - memset(str->__pad, 0, sizeof(str->__pad)); -+ CPOUT_16(de, str, de_rahead); - } - - void gfs2_leaf_in(struct gfs2_leaf *lf, struct gfs2_buffer_head *bh) diff --git a/1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch b/1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch deleted file mode 100644 index 9d3a4f0..0000000 --- a/1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch +++ /dev/null @@ -1,32 +0,0 @@ -commit dcd8296e142d3bd69e1a1bda2c096ed78fe4888f -Author: Andreas Gruenbacher -Date: Wed Sep 9 17:55:30 2015 +0200 - - gfs2_edit: Include dirent.de_rahead in directory listings - - When dumping a directory, for directory each entry, also print how many blocks - of metadata can be read ahead when reading in the inode the entry points at. - - Signed-off-by: Andreas Gruenbacher - -diff --git a/gfs2/edit/extended.c b/gfs2/edit/extended.c -index e5cb12c..b1826a1 100644 ---- a/gfs2/edit/extended.c -+++ b/gfs2/edit/extended.c -@@ -342,13 +342,14 @@ static int display_leaf(struct iinfo *ind) - strcpy(edit_fmt, "%llx"); - } - } -- print_gfs2("%d/%d [%08x] %lld/%lld (0x%llx/0x%llx): ", -+ print_gfs2("%d/%d [%08x] %lld/%lld (0x%llx/0x%llx) +%u: ", - total_dirents, d + 1, - ind->ii[0].dirent[d].dirent.de_hash, - ind->ii[0].dirent[d].dirent.de_inum.no_formal_ino, - ind->ii[0].dirent[d].block, - ind->ii[0].dirent[d].dirent.de_inum.no_formal_ino, -- ind->ii[0].dirent[d].block); -+ ind->ii[0].dirent[d].block, -+ (unsigned int)ind->ii[0].dirent[d].dirent.de_rahead); - } - print_inode_type(ind->ii[0].dirent[d].dirent.de_type); - print_gfs2(" %s", ind->ii[0].dirent[d].filename); diff --git a/1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch b/1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch deleted file mode 100644 index 37f6e7b..0000000 --- a/1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch +++ /dev/null @@ -1,83 +0,0 @@ -commit 471bc208c8e29013b2abb66f36d6e6d9ef4e4337 -Author: Andrew Price -Date: Thu Sep 10 11:33:24 2015 +0100 - - gfs2-utils: Add a check for the de_rahead field - - gfs2_dirent.de_rahead first appeared in Linux 3.15. Support prior - versions by checking for de_rahead and using it conditionally. - - Signed-off-by: Andrew Price - -diff --git a/configure.ac b/configure.ac -index 35cafe6..a5418aa 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -125,6 +125,8 @@ AC_CHECK_HEADER([linux/gfs2_ondisk.h], [], [AC_MSG_ERROR([Unable to find linux/g - AC_CHECK_MEMBER([struct gfs2_sb.sb_uuid], [], [], [[#include ]]) - AC_CHECK_MEMBER([struct gfs2_leaf.lf_inode],[AC_DEFINE([GFS2_HAS_LEAF_HINTS],[],[Leaf block hints])], - [], [[#include ]]) -+AC_CHECK_MEMBER([struct gfs2_dirent.de_rahead],[AC_DEFINE([GFS2_HAS_DE_RAHEAD],[],[Dirent readahead field])], -+ [], [[#include ]]) - - # *FLAGS handling - ENV_CFLAGS="$CFLAGS" -diff --git a/gfs2/edit/extended.c b/gfs2/edit/extended.c -index b1826a1..a13827e 100644 ---- a/gfs2/edit/extended.c -+++ b/gfs2/edit/extended.c -@@ -349,7 +349,12 @@ static int display_leaf(struct iinfo *ind) - ind->ii[0].dirent[d].block, - ind->ii[0].dirent[d].dirent.de_inum.no_formal_ino, - ind->ii[0].dirent[d].block, -- (unsigned int)ind->ii[0].dirent[d].dirent.de_rahead); -+#ifdef GFS2_HAS_DE_RAHEAD -+ (unsigned int)ind->ii[0].dirent[d].dirent.de_rahead -+#else -+ 0 -+#endif -+ ); - } - print_inode_type(ind->ii[0].dirent[d].dirent.de_type); - print_gfs2(" %s", ind->ii[0].dirent[d].filename); -diff --git a/gfs2/libgfs2/meta.c b/gfs2/libgfs2/meta.c -index 70daec4..4f43af5 100644 ---- a/gfs2/libgfs2/meta.c -+++ b/gfs2/libgfs2/meta.c -@@ -428,8 +428,12 @@ F(de_hash, .flags = LGFS2_MFF_CHECK) - F(de_rec_len, .flags = LGFS2_MFF_BYTES) - F(de_name_len, .flags = LGFS2_MFF_BYTES) - F(de_type) -+#ifdef GFS2_HAS_DE_RAHEAD - F(de_rahead) -+RF(__pad2) -+#else - RF(__pad) -+#endif - }; - - #undef STRUCT -diff --git a/gfs2/libgfs2/ondisk.c b/gfs2/libgfs2/ondisk.c -index 7f34bd2..b9418c5 100644 ---- a/gfs2/libgfs2/ondisk.c -+++ b/gfs2/libgfs2/ondisk.c -@@ -415,7 +415,9 @@ void gfs2_dirent_in(struct gfs2_dirent *de, char *buf) - CPIN_16(de, str, de_rec_len); - CPIN_16(de, str, de_name_len); - CPIN_16(de, str, de_type); -+#ifdef GFS2_HAS_DE_RAHEAD - CPIN_16(de, str, de_rahead); -+#endif - } - - void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) -@@ -428,7 +430,9 @@ void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) - CPOUT_16(de, str, de_name_len); - CPOUT_16(de, str, de_type); - memset(str->__pad, 0, sizeof(str->__pad)); -+#ifdef GFS2_HAS_DE_RAHEAD - CPOUT_16(de, str, de_rahead); -+#endif - } - - void gfs2_leaf_in(struct gfs2_leaf *lf, struct gfs2_buffer_head *bh) diff --git a/1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch b/1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch deleted file mode 100644 index 4bf86bb..0000000 --- a/1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch +++ /dev/null @@ -1,106 +0,0 @@ -commit da2bced4ff2a8fa9c95fde8071f2f164c0c1466a -Author: Andrew Price -Date: Mon Feb 15 12:42:51 2016 +0000 - - libgfs2: Support the new dirent de_cookie field - - Detect whether the new de_cookie field (kernel commit 471f3db27) is - present in struct gfs2_dirent in the configure script and update the - metadata description to support that field. - - It also seems that meta.c was not using the GFS2_HAS_* defines from - clusterautoconfig.h and that was causing a unit test to fail with - - gfs2_dirent: __pad: offset is 28, expected 26 - gfs2_dirent: size mismatch between struct 40 and fields 38 - - This commit adds an #include to fix that. - - Fixes Rawhide bz#1307532 - - Signed-off-by: Andrew Price - -diff --git a/configure.ac b/configure.ac -index 130cb01..f6174ff 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -127,6 +127,8 @@ AC_CHECK_MEMBER([struct gfs2_leaf.lf_inode],[AC_DEFINE([GFS2_HAS_LEAF_HINTS],[], - [], [[#include ]]) - AC_CHECK_MEMBER([struct gfs2_dirent.de_rahead],[AC_DEFINE([GFS2_HAS_DE_RAHEAD],[],[Dirent readahead field])], - [], [[#include ]]) -+AC_CHECK_MEMBER([struct gfs2_dirent.de_cookie],[AC_DEFINE([GFS2_HAS_DE_COOKIE],[],[Dirent cookie field])], -+ [], [[#include ]]) - - # *FLAGS handling - ENV_CFLAGS="$CFLAGS" -diff --git a/gfs2/libgfs2/meta.c b/gfs2/libgfs2/meta.c -index 4f43af5..90d5647 100644 ---- a/gfs2/libgfs2/meta.c -+++ b/gfs2/libgfs2/meta.c -@@ -1,6 +1,7 @@ - #include - #include - #include "libgfs2.h" -+#include "clusterautoconfig.h" - - #define ARRAY_SIZE(x) (sizeof(x)/sizeof(x[0])) - #define SYM(x) { x, #x }, -@@ -430,10 +431,15 @@ F(de_name_len, .flags = LGFS2_MFF_BYTES) - F(de_type) - #ifdef GFS2_HAS_DE_RAHEAD - F(de_rahead) --RF(__pad2) -+#ifdef GFS2_HAS_DE_COOKIE -+F(de_cookie) -+RF(pad3) -+#else -+RF(pad2) -+#endif /* GFS2_HAS_DE_COOKIE */ - #else - RF(__pad) --#endif -+#endif /* GFS2_HAS_DE_RAHEAD */ - }; - - #undef STRUCT -diff --git a/gfs2/libgfs2/ondisk.c b/gfs2/libgfs2/ondisk.c -index b9418c5..ea1f61f 100644 ---- a/gfs2/libgfs2/ondisk.c -+++ b/gfs2/libgfs2/ondisk.c -@@ -417,7 +417,15 @@ void gfs2_dirent_in(struct gfs2_dirent *de, char *buf) - CPIN_16(de, str, de_type); - #ifdef GFS2_HAS_DE_RAHEAD - CPIN_16(de, str, de_rahead); --#endif -+#ifdef GFS2_HAS_DE_COOKIE -+ CPIN_32(de, str, de_cookie); -+ CPIN_08(de, str, pad3, 8); -+#else -+ CPIN_08(de, str, pad2, 12); -+#endif /* GFS2_HAS_DE_COOKIE */ -+#else -+ CPIN_08(de, str, __pad, 14); -+#endif /* GFS2_HAS_DE_RAHEAD */ - } - - void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) -@@ -429,10 +437,17 @@ void gfs2_dirent_out(struct gfs2_dirent *de, char *buf) - CPOUT_16(de, str, de_rec_len); - CPOUT_16(de, str, de_name_len); - CPOUT_16(de, str, de_type); -- memset(str->__pad, 0, sizeof(str->__pad)); - #ifdef GFS2_HAS_DE_RAHEAD - CPOUT_16(de, str, de_rahead); --#endif -+#ifdef GFS2_HAS_DE_COOKIE -+ CPOUT_32(de, str, de_cookie); -+ CPOUT_08(de, str, pad3, 8); -+#else -+ CPOUT_08(de, str, pad2, 12); -+#endif /* GFS2_HAS_DE_COOKIE */ -+#else -+ CPOUT_08(de, str, __pad, 14); -+#endif /* GFS2_HAS_DE_RAHEAD */ - } - - void gfs2_leaf_in(struct gfs2_leaf *lf, struct gfs2_buffer_head *bh) diff --git a/fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic.patch b/fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic.patch deleted file mode 100644 index 7411fd8..0000000 --- a/fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic.patch +++ /dev/null @@ -1,304 +0,0 @@ -commit f1028ec054f2d7f85a449b2bf0894e0435c01d6a -Author: Abhi Das -Date: Tue Apr 14 19:51:55 2015 -0500 - - fsck.gfs2: replace recent i_goal fixes with simple logic - - This patch reverses the recent set of i_goal fixes for fsck.gfs2. - This is because of two problems. - 1. It is not possible to determine if a valid block within the fs - is the correct goal block for a given inode. - 2. Conversely, given an inode, it is also not possible to accurately - determine what its goal block should be. - - The previous patches assumed that the last block of a file is its - goal block, but that is not true if the file is a directory or if - its blocks are not allocated sequentially. fsck.gfs2 would flag - these inodes incorrectly as having bad i_goal values. - - This patch takes a simple approach. It checks if the i_goal of a - given inode is out of bounds of the fs. If so, we can be certain - that it is wrong and we set it to the inode metadata block. This - is a safe starting point for gfs2 to determine where to allocate - from next. - - Resolves: rhbz#1186515 - Signed-off-by: Abhi Das - -diff --git a/gfs2/fsck/metawalk.c b/gfs2/fsck/metawalk.c -index f05fb51..4d5a660 100644 ---- a/gfs2/fsck/metawalk.c -+++ b/gfs2/fsck/metawalk.c -@@ -1428,8 +1428,7 @@ static int build_and_check_metalist(struct gfs2_inode *ip, osi_list_t *mlp, - */ - static int check_data(struct gfs2_inode *ip, struct metawalk_fxns *pass, - struct gfs2_buffer_head *bh, int head_size, -- uint64_t *last_block, uint64_t *blks_checked, -- uint64_t *error_blk) -+ uint64_t *blks_checked, uint64_t *error_blk) - { - int error = 0, rc = 0; - uint64_t block, *ptr; -@@ -1444,7 +1443,7 @@ static int check_data(struct gfs2_inode *ip, struct metawalk_fxns *pass, - - if (skip_this_pass || fsck_abort) - return error; -- *last_block = block = be64_to_cpu(*ptr); -+ block = be64_to_cpu(*ptr); - /* It's important that we don't call valid_block() and - bypass calling check_data on invalid blocks because that - would defeat the rangecheck_block related functions in -@@ -1548,15 +1547,12 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass) - struct gfs2_buffer_head *bh; - uint32_t height = ip->i_di.di_height; - int i, head_size; -- uint64_t blks_checked = 0, last_block = 0; -+ uint64_t blks_checked = 0; - int error, rc; - int metadata_clean = 0; - uint64_t error_blk = 0; - int hit_error_blk = 0; - -- if (!height && pass->check_i_goal) -- pass->check_i_goal(ip, ip->i_di.di_num.no_addr, -- pass->private); - if (!height && !is_dir(&ip->i_di, ip->i_sbd->gfs1)) - return 0; - -@@ -1575,9 +1571,6 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass) - * comprise the directory hash table, so we perform the directory - * checks and exit. */ - if (is_dir(&ip->i_di, ip->i_sbd->gfs1)) { -- last_block = ip->i_di.di_num.no_addr; -- if (pass->check_i_goal) -- pass->check_i_goal(ip, last_block, pass->private); - if (!(ip->i_di.di_flags & GFS2_DIF_EXHASH)) - goto out; - /* check validity of leaf blocks and leaf chains */ -@@ -1604,7 +1597,7 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass) - - if (pass->check_data) - error = check_data(ip, pass, bh, head_size, -- &last_block, &blks_checked, &error_blk); -+ &blks_checked, &error_blk); - if (pass->big_file_msg && ip->i_di.di_blocks > COMFORTABLE_BLKS) - pass->big_file_msg(ip, blks_checked); - } -@@ -1616,8 +1609,6 @@ int check_metatree(struct gfs2_inode *ip, struct metawalk_fxns *pass) - (unsigned long long)ip->i_di.di_num.no_addr); - fflush(stdout); - } -- if (!error && pass->check_i_goal) -- pass->check_i_goal(ip, last_block, pass->private); - undo_metalist: - if (!error) - goto out; -@@ -1958,80 +1949,6 @@ static int alloc_leaf(struct gfs2_inode *ip, uint64_t block, void *private) - return 0; - } - --/** -- * rgrp_contains_block - Check if the rgrp provided contains the -- * given block. Taken directly from the gfs2 kernel code -- * @rgd: The rgrp to search within -- * @block: The block to search for -- * -- * Returns: 1 if present, 0 if not. -- */ --static inline int rgrp_contains_block(struct rgrp_tree *rgd, uint64_t block) --{ -- uint64_t first = rgd->ri.ri_data0; -- uint64_t last = first + rgd->ri.ri_data; -- return first <= block && block < last; --} -- --/** -- * check_i_goal -- * @ip -- * @goal_blk: What the goal block should be for this inode -- * -- * The goal block for a regular file is typically the last -- * data block of the file. If we can't get the right value, -- * the inode metadata block is the next best thing. -- * -- * Returns: 0 if corrected, 1 if not corrected -- */ --int check_i_goal(struct gfs2_inode *ip, uint64_t goal_blk, -- void *private) --{ -- struct gfs2_sbd *sdp = ip->i_sbd; -- uint64_t i_block = ip->i_di.di_num.no_addr; -- -- /* Don't fix gfs1 inodes, system inodes or inodes whose goal blocks are -- * set to the inode blocks themselves. */ -- if (sdp->gfs1 || ip->i_di.di_flags & GFS2_DIF_SYSTEM || -- ip->i_di.di_goal_meta == i_block) -- return 0; -- /* Don't fix directory goal blocks unless we know they're wrong. -- * i.e. out of bounds of the fs. Directories can easily have blocks -- * outside of the dinode's rgrp and thus we have no way of knowing -- * if the goal block is bogus or not. */ -- if (is_dir(&ip->i_di, ip->i_sbd->gfs1) && -- (ip->i_di.di_goal_meta > sdp->sb_addr && -- ip->i_di.di_goal_meta <= sdp->fssize)) -- return 0; -- /* We default to the inode block */ -- if (!goal_blk) -- goal_blk = i_block; -- -- if (ip->i_di.di_goal_meta != goal_blk) { -- /* If the existing goal block is in the same rgrp as the inode, -- * we give the benefit of doubt and assume the value is correct */ -- if (ip->i_rgd && -- rgrp_contains_block(ip->i_rgd, ip->i_di.di_goal_meta)) -- goto skip; -- log_err( _("Error: inode %llu (0x%llx) has invalid " -- "allocation goal block %llu (0x%llx). Should" -- " be %llu (0x%llx)\n"), -- (unsigned long long)i_block, (unsigned long long)i_block, -- (unsigned long long)ip->i_di.di_goal_meta, -- (unsigned long long)ip->i_di.di_goal_meta, -- (unsigned long long)goal_blk, (unsigned long long)goal_blk); -- if (query( _("Fix the invalid goal block? (y/n) "))) { -- ip->i_di.di_goal_meta = ip->i_di.di_goal_data = goal_blk; -- bmodified(ip->i_bh); -- } else { -- log_err(_("Invalid goal block not fixed.\n")); -- return 1; -- } -- } --skip: -- return 0; --} -- - struct metawalk_fxns alloc_fxns = { - .private = NULL, - .check_leaf = alloc_leaf, -@@ -2042,7 +1959,6 @@ struct metawalk_fxns alloc_fxns = { - .check_dentry = NULL, - .check_eattr_entry = NULL, - .check_eattr_extentry = NULL, -- .check_i_goal = check_i_goal, - .finish_eattr_indir = NULL, - }; - -diff --git a/gfs2/fsck/metawalk.h b/gfs2/fsck/metawalk.h -index 779360e..fa4c850 100644 ---- a/gfs2/fsck/metawalk.h -+++ b/gfs2/fsck/metawalk.h -@@ -50,8 +50,6 @@ extern int _fsck_blockmap_set(struct gfs2_inode *ip, uint64_t bblock, - const char *caller, int line); - extern int check_n_fix_bitmap(struct gfs2_sbd *sdp, uint64_t blk, - int error_on_dinode, int new_blockmap_state); --extern int check_i_goal(struct gfs2_inode *ip, uint64_t goal_blk, -- void *private); - extern void reprocess_inode(struct gfs2_inode *ip, const char *desc); - extern struct duptree *dupfind(uint64_t block); - extern struct gfs2_inode *fsck_system_inode(struct gfs2_sbd *sdp, -@@ -91,7 +89,6 @@ enum meta_check_rc { - * check_dentry: - * check_eattr_entry: - * check_eattr_extentry: -- * check_i_goal: - */ - struct metawalk_fxns { - void *private; -@@ -143,8 +140,6 @@ struct metawalk_fxns { - struct gfs2_ea_header *ea_hdr, - struct gfs2_ea_header *ea_hdr_prev, - void *private); -- int (*check_i_goal) (struct gfs2_inode *ip, uint64_t goal_blk, -- void *private); - int (*finish_eattr_indir) (struct gfs2_inode *ip, int leaf_pointers, - int leaf_pointer_errors, void *private); - void (*big_file_msg) (struct gfs2_inode *ip, uint64_t blks_checked); -diff --git a/gfs2/fsck/pass1.c b/gfs2/fsck/pass1.c -index 69c88f4..0909873 100644 ---- a/gfs2/fsck/pass1.c -+++ b/gfs2/fsck/pass1.c -@@ -100,7 +100,6 @@ struct metawalk_fxns pass1_fxns = { - .check_dentry = NULL, - .check_eattr_entry = check_eattr_entries, - .check_eattr_extentry = check_extended_leaf_eattr, -- .check_i_goal = check_i_goal, - .finish_eattr_indir = finish_eattr_indir, - .big_file_msg = big_file_comfort, - .repair_leaf = pass1_repair_leaf, -@@ -1205,12 +1204,37 @@ bad_dinode: - return -1; - } - -+static void check_i_goal(struct gfs2_sbd *sdp, struct gfs2_inode *ip) -+{ -+ if (sdp->gfs1 || ip->i_di.di_flags & GFS2_DIF_SYSTEM) -+ return; -+ -+ if (ip->i_di.di_goal_meta <= sdp->sb_addr || -+ ip->i_di.di_goal_meta > sdp->fssize) { -+ log_err(_("Inode #%llu (0x%llx): Bad allocation goal block " -+ "found: %llu (0x%llx)\n"), -+ (unsigned long long)ip->i_di.di_num.no_addr, -+ (unsigned long long)ip->i_di.di_num.no_addr, -+ (unsigned long long)ip->i_di.di_goal_meta, -+ (unsigned long long)ip->i_di.di_goal_meta); -+ if (query( _("Fix goal block in inode #%llu (0x%llx)? (y/n) "), -+ (unsigned long long)ip->i_di.di_num.no_addr, -+ (unsigned long long)ip->i_di.di_num.no_addr)) { -+ ip->i_di.di_goal_meta = ip->i_di.di_num.no_addr; -+ bmodified(ip->i_bh); -+ } else -+ log_err(_("Allocation goal block in inode #%lld " -+ "(0x%llx) not fixed\n"), -+ (unsigned long long)ip->i_di.di_num.no_addr, -+ (unsigned long long)ip->i_di.di_num.no_addr); -+ } -+} -+ - /* - * handle_di - This is now a wrapper function that takes a gfs2_buffer_head - * and calls handle_ip, which takes an in-code dinode structure. - */ --static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh, -- struct rgrp_tree *rgd) -+static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh) - { - int error = 0; - uint64_t block = bh->b_blocknr; -@@ -1252,7 +1276,7 @@ static int handle_di(struct gfs2_sbd *sdp, struct gfs2_buffer_head *bh, - (unsigned long long)block, - (unsigned long long)block); - } -- ip->i_rgd = rgd; -+ check_i_goal(sdp, ip); - error = handle_ip(sdp, ip); - fsck_inode_put(&ip); - return error; -@@ -1378,6 +1402,7 @@ static int check_system_inode(struct gfs2_sbd *sdp, - "directory entries.\n"), filename); - } - } -+ check_i_goal(sdp, *sysinode); - error = handle_ip(sdp, *sysinode); - return error ? error : err; - } -@@ -1602,7 +1627,7 @@ static int pass1_process_bitmap(struct gfs2_sbd *sdp, struct rgrp_tree *rgd, uin - (unsigned long long)block, - (unsigned long long)block); - check_n_fix_bitmap(sdp, block, 0, GFS2_BLKST_FREE); -- } else if (handle_di(sdp, bh, rgd) < 0) { -+ } else if (handle_di(sdp, bh) < 0) { - stack; - brelse(bh); - gfs2_special_free(&gfs1_rindex_blks); -diff --git a/gfs2/libgfs2/libgfs2.h b/gfs2/libgfs2/libgfs2.h -index f1f81d3..ccae721 100644 ---- a/gfs2/libgfs2/libgfs2.h -+++ b/gfs2/libgfs2/libgfs2.h -@@ -233,7 +233,6 @@ struct gfs2_inode { - struct gfs2_dinode i_di; - struct gfs2_buffer_head *i_bh; - struct gfs2_sbd *i_sbd; -- struct rgrp_tree *i_rgd; /* The rgrp this inode is in */ - }; - - struct master_dir diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 47d4ea1..8017e7c 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,7 +1,7 @@ ############################################################################### ############################################################################### ## -## Copyright (C) 2004-2014 Red Hat, Inc. All rights reserved. +## Copyright (C) 2004-2016 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 @@ -11,8 +11,8 @@ ############################################################################### Name: gfs2-utils -Version: 3.1.8 -Release: 7%{?dist} +Version: 3.1.9 +Release: 1%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -31,28 +31,9 @@ BuildRequires: libblkid-devel BuildRequires: check-devel Source: https://fedorahosted.org/released/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://fedorahosted.org/cluster/wiki/HomePage -Patch0: fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic.patch -Patch1: gfs2_utils_Fix_hang_on_withdraw.patch -Patch2: scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch -Patch3: scripts_install_the_withdraw_helper_script.patch -Patch4: scripts_install_the_withdraw_udev_rules_script.patch -Patch5: 1307532-1-libgfs2_Add_support_for_dirent_de_rahead.patch -Patch6: 1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings.patch -Patch7: 1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field.patch -Patch8: 1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field.patch - %prep %setup -q -n gfs2-utils-%{version} -%patch0 -p 1 -b .fsck_gfs2_replace_recent_i_goal_fixes_with_simple_logic -%patch1 -p 1 -b .gfs2_utils_Fix_hang_on_withdraw -%patch2 -p 1 -b .scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper -%patch3 -p 1 -b .scripts_install_the_withdraw_helper_script -%patch4 -p 1 -b .scripts_install_the_withdraw_udev_rules_script -%patch5 -p 1 -b .1307532-1-libgfs2_Add_support_for_dirent_de_rahead -%patch6 -p 1 -b .1307532-2-gfs2_edit_Include_dirent_de_rahead_in_directory_listings -%patch7 -p 1 -b .1307532-3-gfs2_utils_Add_a_check_for_the_de_rahead_field -%patch8 -p 1 -b .1307532-4-libgfs2_Support_the_new_dirent_de_cookie_field %build ./autogen.sh @@ -71,9 +52,8 @@ rm -f %{buildroot}%{_mandir}/man8/gfs2_trace.8 rm -f %{buildroot}%{_mandir}/man8/gfs2_lockcapture.8 %description -The gfs2-utils package contains a number of utilities for creating, -checking, modifying, and correcting any inconsistencies in GFS2 -file systems. +The gfs2-utils package contains a number of utilities for creating, checking, +modifying, and correcting inconsistencies in GFS2 file systems. %files %doc doc/COPYING.* doc/COPYRIGHT doc/*.txt @@ -86,11 +66,18 @@ file systems. %{_sbindir}/gfs2_edit %{_sbindir}/tunegfs2 %{_sbindir}/gfs2_withdraw_helper +%{_sbindir}/glocktop %{_mandir}/man8/*gfs2* +%{_mandir}/man8/glocktop* %{_mandir}/man5/* %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Tue Jun 07 2016 Andrew Price - 3.1.9-1 +- New upstream release +- Drop all patches +- Add glocktop to the package + * Mon Feb 15 2016 Andrew Price - 3.1.8-7 - libgfs2: Add support for dirent.de_rahead - gfs2_edit: Include dirent.de_rahead in directory listings diff --git a/gfs2_utils_Fix_hang_on_withdraw.patch b/gfs2_utils_Fix_hang_on_withdraw.patch deleted file mode 100644 index 2d2f051..0000000 --- a/gfs2_utils_Fix_hang_on_withdraw.patch +++ /dev/null @@ -1,97 +0,0 @@ -commit 4e9a8f12b74d61314e79904a0f02e42e99a98493 -Author: Abhi Das -Date: Tue Aug 4 11:00:51 2015 -0500 - - gfs2-utils: Fix hang on withdraw - - Issuing a withdraw on a gfs2 filesystem causes a hang. When - gfs_controld was removed, the userspace functionality that - completes a withdraw operation went away. This causes gfs2 - kernel to hang waiting for a withdraw completion ack from - userspace. - - This patchset introduces a uevent-based shell script to do - the job that gfs_controld used to do on withdraw. An 'offline' - uevent triggers the execution of this script. This script - suspends the device associated with the filesystem and signals - a completed withdraw to the kernel. - - Resolves: rhbz#1225634 - Signed-off-by: Abhi Das - -diff --git a/README.build b/README.build -index f4ebe53..6487bae 100644 ---- a/README.build -+++ b/README.build -@@ -29,5 +29,14 @@ To install gfs2-utils, run: - - make install - -+The following scripts (located in gfs2/scripts) are used to complete -+the userland portion of the gfs2 withdraw feature using uevents. They -+are not installed by 'make install' and need to be installed manually -+or during rpm installation to the corresponding locations. -+ -+ 82-gfs2-withdraw.rules in /etc/udev/rules.d/ -+ gfs2_wd_udev.sh in /usr/sbin/ -+ - See also doc/README.contributing for details on submitting patches and - doc/README.tests for more details regarding the test suite. -+ -diff --git a/gfs2/scripts/82-gfs2-withdraw.rules b/gfs2/scripts/82-gfs2-withdraw.rules -new file mode 100644 -index 0000000..2228615 ---- /dev/null -+++ b/gfs2/scripts/82-gfs2-withdraw.rules -@@ -0,0 +1,2 @@ -+SUBSYSTEM=="gfs2", ACTION=="offline", RUN+="/bin/sh /usr/sbin/gfs2_wd_udev.sh" -+ -diff --git a/gfs2/scripts/Makefile.am b/gfs2/scripts/Makefile.am -index 62fb2fe..dde906f 100644 ---- a/gfs2/scripts/Makefile.am -+++ b/gfs2/scripts/Makefile.am -@@ -3,3 +3,8 @@ MAINTAINERCLEANFILES = Makefile.in - dist_sbin_SCRIPTS = \ - gfs2_lockcapture \ - gfs2_trace -+ -+noinst_SCRIPTS = \ -+ 82-gfs2-withdraw.rules \ -+ gfs2_wd_udev.sh -+ -diff --git a/gfs2/scripts/gfs2_wd_udev.sh b/gfs2/scripts/gfs2_wd_udev.sh -new file mode 100755 -index 0000000..ac3ce35 ---- /dev/null -+++ b/gfs2/scripts/gfs2_wd_udev.sh -@@ -0,0 +1,30 @@ -+#!/bin/sh -+# -+# Do not run this script manually. This script is called by udev on a gfs2 -+# withdraw uevent and is used to complete the withdraw action and notify the -+# kernel. -+# -+ -+# Sanity checks -+if [ "$SUBSYSTEM" != "gfs2" ] || [ "$LOCKPROTO" != "lock_dlm" ] || -+ [ -z "$DEVPATH" ] || [ "$ACTION" != "offline" ] -+then -+ exit 1 # Nothing to do here -+fi -+ -+# Try and suspend the device -+SYSFS_TOPDIR="/sys"$DEVPATH -+DM_NAME=$(cat "$SYSFS_TOPDIR/device/dm/name") -+DM_DEV="/dev/mapper/"$DM_NAME -+ -+if [ -z "$DM_DEV" ] -+then -+ /usr/bin/dmsetup suspend $DM_DEV -+fi -+ -+# Signal completion of withdraw -+WD_ACK="$SYSFS_TOPDIR/lock_module/withdraw" -+if [ -f "$WD_ACK" ] -+then -+ echo "1" > $WD_ACK -+fi diff --git a/scripts_install_the_withdraw_helper_script.patch b/scripts_install_the_withdraw_helper_script.patch deleted file mode 100644 index de2d182..0000000 --- a/scripts_install_the_withdraw_helper_script.patch +++ /dev/null @@ -1,27 +0,0 @@ -commit fdded71f349ec5928a1422bc7edaa7f4f6c0be26 -Author: Andrew Price -Date: Tue Aug 18 12:48:50 2015 +0100 - - scripts: install the withdraw helper script - - Install gfs2_withdraw_helper into /usr/sbin in 'make install'. - - Signed-off-by: Andrew Price - -diff --git a/gfs2/scripts/Makefile.am b/gfs2/scripts/Makefile.am -index 51764fa..056aaa5 100644 ---- a/gfs2/scripts/Makefile.am -+++ b/gfs2/scripts/Makefile.am -@@ -2,9 +2,9 @@ MAINTAINERCLEANFILES = Makefile.in - - dist_sbin_SCRIPTS = \ - gfs2_lockcapture \ -- gfs2_trace -+ gfs2_trace \ -+ gfs2_withdraw_helper - - noinst_SCRIPTS = \ -- 82-gfs2-withdraw.rules \ -- gfs2_withdraw_helper -+ 82-gfs2-withdraw.rules - diff --git a/scripts_install_the_withdraw_udev_rules_script.patch b/scripts_install_the_withdraw_udev_rules_script.patch deleted file mode 100644 index 430ea5e..0000000 --- a/scripts_install_the_withdraw_udev_rules_script.patch +++ /dev/null @@ -1,72 +0,0 @@ -commit 9aa261bd5e65beb757b0953ba43211fc29641952 -Author: Andrew Price -Date: Wed Aug 19 12:13:39 2015 +0100 - - scripts: install the withdraw udev rules script - - Add a --with-udevdir configure option and default to $prefix/lib/udev. - Note that we can't use $libdir for this as that will often be /usr/lib64 - and the udevdir is arch-independent. - - Also add the autoconf bits needed to install 82-gfs2-withdraw.rules into - $udevdir/rules.d - - Signed-off-by: Andrew Price - -diff --git a/README.build b/README.build -index acfde1b..d0a21c3 100644 ---- a/README.build -+++ b/README.build -@@ -31,10 +31,9 @@ To install gfs2-utils, run: - - The following scripts (located in gfs2/scripts) are used to complete - the userland portion of the gfs2 withdraw feature using uevents. They --are not installed by 'make install' and need to be installed manually --or during rpm installation to the corresponding locations. -+will be installed by 'make install' to these directories by default: - -- 82-gfs2-withdraw.rules in /etc/udev/rules.d/ -+ 82-gfs2-withdraw.rules in /usr/lib/udev/rules.d/ - gfs2_withdraw_helper in /usr/sbin/ - - See also doc/README.contributing for details on submitting patches and -diff --git a/configure.ac b/configure.ac -index de96e5a..35cafe6 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -110,6 +110,12 @@ if test -z "$ncurses_CFLAGS" && test -z "$ncurses_LIBS"; then - ncurses_LIBS=-lncurses - fi - -+AC_ARG_WITH([udevdir], -+ AS_HELP_STRING([--with-udevdir=DIR], -+ [udev directory containing rules.d [default=${prefix}/lib/udev]]), -+ [], [with_udevdir=\${prefix}/lib/udev]) -+AC_SUBST([udevdir], [$with_udevdir]) -+ - # Checks for header files. - AC_CHECK_HEADERS([fcntl.h libintl.h limits.h locale.h mntent.h stddef.h sys/file.h sys/ioctl.h sys/mount.h sys/time.h sys/vfs.h syslog.h termios.h]) - AC_CHECK_HEADER([linux/fs.h], [], [AC_MSG_ERROR([Unable to find linux/fs.h])]) -@@ -209,7 +215,9 @@ echo " Configure summary" - echo " ===================" - echo " prefix : $prefix" - echo " exec_prefix : $exec_prefix" -+echo " libdir : $libdir" - echo " sbindir : $sbindir" -+echo " udevdir : $udevdir" - echo " ------------------" - echo " debug build : $enable_debug" - echo " C unit tests : $have_check" -diff --git a/gfs2/scripts/Makefile.am b/gfs2/scripts/Makefile.am -index 056aaa5..d4bda04 100644 ---- a/gfs2/scripts/Makefile.am -+++ b/gfs2/scripts/Makefile.am -@@ -5,6 +5,6 @@ dist_sbin_SCRIPTS = \ - gfs2_trace \ - gfs2_withdraw_helper - --noinst_SCRIPTS = \ -+udevrulesdir=@udevdir@/rules.d -+dist_udevrules_DATA = \ - 82-gfs2-withdraw.rules -- diff --git a/scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch b/scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch deleted file mode 100644 index 7f48867..0000000 --- a/scripts_rename_gfs2_wd_udev_sh_to_gfs2_withdraw_helper.patch +++ /dev/null @@ -1,115 +0,0 @@ -commit bdb6bb67ee4532c2dfb65eeeebcec06bda99d4ff -Author: Andrew Price -Date: Tue Aug 18 12:35:52 2015 +0100 - - scripts: rename gfs2_wd_udev.sh to gfs2_withdraw_helper - - Makes the name more descriptive and consistent with the name of the udev - rules script. - - Signed-off-by: Andrew Price - -diff --git a/README.build b/README.build -index 6487bae..acfde1b 100644 ---- a/README.build -+++ b/README.build -@@ -35,7 +35,7 @@ are not installed by 'make install' and need to be installed manually - or during rpm installation to the corresponding locations. - - 82-gfs2-withdraw.rules in /etc/udev/rules.d/ -- gfs2_wd_udev.sh in /usr/sbin/ -+ gfs2_withdraw_helper in /usr/sbin/ - - See also doc/README.contributing for details on submitting patches and - doc/README.tests for more details regarding the test suite. -diff --git a/gfs2/scripts/82-gfs2-withdraw.rules b/gfs2/scripts/82-gfs2-withdraw.rules -index 2228615..2c9e0e8 100644 ---- a/gfs2/scripts/82-gfs2-withdraw.rules -+++ b/gfs2/scripts/82-gfs2-withdraw.rules -@@ -1,2 +1,2 @@ --SUBSYSTEM=="gfs2", ACTION=="offline", RUN+="/bin/sh /usr/sbin/gfs2_wd_udev.sh" -+SUBSYSTEM=="gfs2", ACTION=="offline", RUN+="/bin/sh /usr/sbin/gfs2_withdraw_helper" - -diff --git a/gfs2/scripts/Makefile.am b/gfs2/scripts/Makefile.am -index dde906f..51764fa 100644 ---- a/gfs2/scripts/Makefile.am -+++ b/gfs2/scripts/Makefile.am -@@ -6,5 +6,5 @@ dist_sbin_SCRIPTS = \ - - noinst_SCRIPTS = \ - 82-gfs2-withdraw.rules \ -- gfs2_wd_udev.sh -+ gfs2_withdraw_helper - -diff --git a/gfs2/scripts/gfs2_wd_udev.sh b/gfs2/scripts/gfs2_wd_udev.sh -deleted file mode 100755 -index ac3ce35..0000000 ---- a/gfs2/scripts/gfs2_wd_udev.sh -+++ /dev/null -@@ -1,30 +0,0 @@ --#!/bin/sh --# --# Do not run this script manually. This script is called by udev on a gfs2 --# withdraw uevent and is used to complete the withdraw action and notify the --# kernel. --# -- --# Sanity checks --if [ "$SUBSYSTEM" != "gfs2" ] || [ "$LOCKPROTO" != "lock_dlm" ] || -- [ -z "$DEVPATH" ] || [ "$ACTION" != "offline" ] --then -- exit 1 # Nothing to do here --fi -- --# Try and suspend the device --SYSFS_TOPDIR="/sys"$DEVPATH --DM_NAME=$(cat "$SYSFS_TOPDIR/device/dm/name") --DM_DEV="/dev/mapper/"$DM_NAME -- --if [ -z "$DM_DEV" ] --then -- /usr/bin/dmsetup suspend $DM_DEV --fi -- --# Signal completion of withdraw --WD_ACK="$SYSFS_TOPDIR/lock_module/withdraw" --if [ -f "$WD_ACK" ] --then -- echo "1" > $WD_ACK --fi -diff --git a/gfs2/scripts/gfs2_withdraw_helper b/gfs2/scripts/gfs2_withdraw_helper -new file mode 100755 -index 0000000..ac3ce35 ---- /dev/null -+++ b/gfs2/scripts/gfs2_withdraw_helper -@@ -0,0 +1,30 @@ -+#!/bin/sh -+# -+# Do not run this script manually. This script is called by udev on a gfs2 -+# withdraw uevent and is used to complete the withdraw action and notify the -+# kernel. -+# -+ -+# Sanity checks -+if [ "$SUBSYSTEM" != "gfs2" ] || [ "$LOCKPROTO" != "lock_dlm" ] || -+ [ -z "$DEVPATH" ] || [ "$ACTION" != "offline" ] -+then -+ exit 1 # Nothing to do here -+fi -+ -+# Try and suspend the device -+SYSFS_TOPDIR="/sys"$DEVPATH -+DM_NAME=$(cat "$SYSFS_TOPDIR/device/dm/name") -+DM_DEV="/dev/mapper/"$DM_NAME -+ -+if [ -z "$DM_DEV" ] -+then -+ /usr/bin/dmsetup suspend $DM_DEV -+fi -+ -+# Signal completion of withdraw -+WD_ACK="$SYSFS_TOPDIR/lock_module/withdraw" -+if [ -f "$WD_ACK" ] -+then -+ echo "1" > $WD_ACK -+fi diff --git a/sources b/sources index 0a3227f..119c866 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -f43b26f006b0a58d86a08eed579871f1 gfs2-utils-3.1.8.tar.gz +6927ee519a26c05a3e03138f6f0462fa gfs2-utils-3.1.9.tar.gz From a9525bd22da6bb528dd57c230a09d2c0fdf3e39e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 10 Feb 2017 10:29:44 +0000 Subject: [PATCH 06/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 8017e7c..5a0b3d1 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.9 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -73,6 +73,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Fri Feb 10 2017 Fedora Release Engineering - 3.1.9-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Tue Jun 07 2016 Andrew Price - 3.1.9-1 - New upstream release - Drop all patches From 5447989ec9c7eddabefe4d5b341fd0c84377798f Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Tue, 28 Mar 2017 18:24:18 +0100 Subject: [PATCH 07/44] * Tue Mar 28 2017 Andrew Price - 3.1.10-1 - New upstream release - Make dependency on libuuid explicit --- .gitignore | 1 + gfs2-utils.spec | 11 ++++++++--- sources | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 6f5f323..33b9d31 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ /gfs2-utils-3.1.7.tar.gz /gfs2-utils-3.1.8.tar.gz /gfs2-utils-3.1.9.tar.gz +/gfs2-utils-3.1.10.tar.gz diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 5a0b3d1..aa6b546 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -11,8 +11,8 @@ ############################################################################### Name: gfs2-utils -Version: 3.1.9 -Release: 2%{?dist} +Version: 3.1.10 +Release: 1%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -28,8 +28,9 @@ BuildRequires: gettext-devel BuildRequires: bison BuildRequires: flex BuildRequires: libblkid-devel +BuildRequires: libuuid-devel BuildRequires: check-devel -Source: https://fedorahosted.org/released/gfs2-utils/gfs2-utils-%{version}.tar.gz +Source: https://releases.pagure.org/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://fedorahosted.org/cluster/wiki/HomePage %prep @@ -73,6 +74,10 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Tue Mar 28 2017 Andrew Price - 3.1.10-1 +- New upstream release +- Make dependency on libuuid explicit + * Fri Feb 10 2017 Fedora Release Engineering - 3.1.9-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild diff --git a/sources b/sources index 119c866..4371d69 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -6927ee519a26c05a3e03138f6f0462fa gfs2-utils-3.1.9.tar.gz +SHA512 (gfs2-utils-3.1.10.tar.gz) = 8c6fc6420bac7d787823907c9a7440060eb089f5d16a5ebf97ab51f634ebb532c5e069cbedd3e4cff2ea52d6d318b2afcde55d160305002c9ccc3284aa8ed9e1 From c3751bb1436c1b7d2cbdee6e44c9530bb0422a7b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 26 Jul 2017 09:29:41 +0000 Subject: [PATCH 08/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index aa6b546..6ee478c 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.10 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -74,6 +74,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Wed Jul 26 2017 Fedora Release Engineering - 3.1.10-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Tue Mar 28 2017 Andrew Price - 3.1.10-1 - New upstream release - Make dependency on libuuid explicit From 83a09d537306d950a52d63973cda27bea926741e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 2 Aug 2017 21:08:14 +0000 Subject: [PATCH 09/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 6ee478c..86c825d 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.10 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -74,6 +74,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Wed Aug 02 2017 Fedora Release Engineering - 3.1.10-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Wed Jul 26 2017 Fedora Release Engineering - 3.1.10-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From d1928c796c712efbb5451a8e9abb54fa454d95e6 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Fri, 13 Oct 2017 11:49:12 +0100 Subject: [PATCH 10/44] * Fri Oct 13 2017 Andrew Price - 3.1.10-4 - Update URL in spec file --- gfs2-utils.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 86c825d..efdaa1c 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.10 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -31,7 +31,7 @@ BuildRequires: libblkid-devel BuildRequires: libuuid-devel BuildRequires: check-devel Source: https://releases.pagure.org/gfs2-utils/gfs2-utils-%{version}.tar.gz -URL: https://fedorahosted.org/cluster/wiki/HomePage +URL: https://pagure.io/gfs2-utils %prep %setup -q -n gfs2-utils-%{version} @@ -74,6 +74,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Fri Oct 13 2017 Andrew Price - 3.1.10-4 +- Update URL in spec file + * Wed Aug 02 2017 Fedora Release Engineering - 3.1.10-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild From 08330317c4ae0e6b61eeb6f8d7ff516c22be34f4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 7 Feb 2018 11:09:41 +0000 Subject: [PATCH 11/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index efdaa1c..59b6eda 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.1.10 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -74,6 +74,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Wed Feb 07 2018 Fedora Release Engineering - 3.1.10-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Fri Oct 13 2017 Andrew Price - 3.1.10-4 - Update URL in spec file From e35859f0efe9a3acd8538a7df39b10c209015851 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Thu, 24 May 2018 12:52:33 +0100 Subject: [PATCH 12/44] * Thu May 24 2018 Andrew Price - 3.2.0-1 - New upstream release --- .gitignore | 1 + gfs2-utils.spec | 236 ++---------------------------------------------- sources | 2 +- 3 files changed, 8 insertions(+), 231 deletions(-) diff --git a/.gitignore b/.gitignore index 33b9d31..f7a396a 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ /gfs2-utils-3.1.8.tar.gz /gfs2-utils-3.1.9.tar.gz /gfs2-utils-3.1.10.tar.gz +/gfs2-utils-3.2.0.tar.gz diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 59b6eda..6de250e 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,7 +1,7 @@ ############################################################################### ############################################################################### ## -## Copyright (C) 2004-2016 Red Hat, Inc. All rights reserved. +## Copyright (C) 2004-2018 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 @@ -11,8 +11,8 @@ ############################################################################### Name: gfs2-utils -Version: 3.1.10 -Release: 5%{?dist} +Version: 3.2.0 +Release: 1%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -74,6 +74,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu May 24 2018 Andrew Price - 3.2.0-1 +- New upstream release + * Wed Feb 07 2018 Fedora Release Engineering - 3.1.10-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild @@ -178,230 +181,3 @@ modifying, and correcting inconsistencies in GFS2 file systems. * Wed Feb 13 2013 Fedora Release Engineering - 3.1.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Tue Nov 13 2012 Andrew Price - 3.1.5-1 -- New upstream release - Removes mount.gfs2, gfs2_tool, gfs2_quota -- Remove rawhide_transition.patch - now obsolete -- Update BuildRequires: - Change glibc-kernheaders to kernel-headers - Add bison and flex -- Provide a valid url for Source0 -- Add fix_build_on_rawhide.patch to fix a circular dep introduced in - bison 2.6, and a make -j race between libgfs2 and gfs2l - -* Tue Aug 14 2012 Andrew Price - 3.1.4-6 -- Make the kernel-modules-extra requirement Fedora-specific - Resolves bz#847955 - -* Thu Jul 19 2012 Fedora Release Engineering - 3.1.4-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Tue Apr 17 2012 Andrew Price - 3.1.4-4 -- Remove commented-out sections -- Clean up some lintian warnings -- Add dependency on kernel-modules-extra as per bz#811547 - -* Wed Mar 07 2012 Andrew Price - 3.1.4-3 -- Remove redundant postinstall scriptlet - -* Thu Feb 2 2012 Fabio M. Di Nitto - 3.1.4-2 -- make sure to Obsolete gfs2-cluster - -* Wed Feb 01 2012 Andrew Price - 3.1.4-1 -- New upstream release - Adds gfs2_lockgather script -- Remove gfs2-cluster (commented out for now) -- Remove dependency on corosynclib-devel and systemd-units -- Add rawhide_transition.patch to stop gfs_controld from building - -* Fri Jan 13 2012 Fedora Release Engineering - 3.1.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Thu Dec 15 2011 Andrew Price - 3.1.3-1 -- New upstream release - Bugfixes and improvements to fsck.gfs2 - Fixes various other bugs - Improve strings and translation support -- Adds gfs2-cluster systemd unit -- Removes gfs2* init scripts - -* Wed Jul 06 2011 Andrew Price - 3.1.2-1 -- New upstream release - Fixes several bugs - Improves translation support - Adds savemeta compression -- Add zlib-devel to BuildRequires -- Add gettext-devel to BuildRequires - -* Wed May 25 2011 Steven Whitehouse - 3.1.1-3 -- Update wiki URL -- Remove gfs2_tool and gfs2_quota from package - -* Fri Feb 25 2011 Bob Peterson - 3.1.1-2 -- Bumping release number to keep upgrades consistent. - -* Wed Feb 23 2011 Bob Peterson - 3.1.1-1 -- gfs2_edit savemeta doesn't save all leafs for big directories -- gfs2_edit improvements -- fsck.gfs2: can't repair rgrps resulting from gfs_grow->gfs2_convert -- fsck.gfs2: reports master/root dinodes as unused and fixes bitmap - -* Tue Feb 08 2011 Fedora Release Engineering - 3.1.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Thu Jan 20 2011 Steven Whitehouse - 3.1.0-4 -- Drop mount.gfs2 and its man page -- Only list gfs2_tool once in the files list - -* Wed Dec 8 2010 Fabio M. Di Nitto - 3.1.0-3 -- Drop circular dependency on cman - -* Fri Dec 3 2010 Fabio M. Di Nitto - 3.1.0-2 -- gfs2-cluster should Obsoletes/Provides gfs-pcmk - -* Tue Sep 30 2010 Steven Whitehouse - 3.1.0-1 -- Bringing this package back for upstream GFS2 - Addition of gfs2tune to the utils - Merge of gfs_controld from cman - -* Thu Jan 22 2009 Fabio M. Di Nitto - 2.03.11-1 -- New upstream release - Fix several bugs and drastically improve startup errors. - -* Wed Dec 10 2008 Fabio M. Di Nitto - 2.03.10-1 -- New upstream release - Fix several bugs and port gfs1 code to match 2.6.27 kernel. - -* Fri Oct 31 2008 Fabio M. Di Nitto - 2.03.09-1 -- New upstream release - Fix rhbz#468966 - Addresses several security issues similar to CVE-2008-4192 and - CVE-2008-4579 after deep code audit from upstream -- cleanup patches to match 2.6.26 kernel in F-9 - -* Tue Oct 21 2008 Fabio M. Di Nitto - 2.03.08-1 -- New upstream release - Fix rhbz#460376 CVE-2008-4192 - Fix rhbz#467386 CVE-2008-4579 -- cleanup/update patches to match 2.6.26 kernel in F-9 - -* Thu Aug 14 2008 Fabio M. Di Nitto - 2.03.07-1 -- New upstream release -- Fix rgmanager startup locking issues -- Apply patch to include kernel headers from 2.6.26 required to build - userland. Userland will run in 2.6.25 compatibility mode -- Apply patch to keep kernel modules at 2.6.25 (upstream is at 2.6.26) - (this patch is purely cosmetic since we don't build kernel modules - but keep the source in sync is Good (tm)) -- Cleanup packaging for installed docs and file permissions - -* Mon Jul 14 2008 Fabio M. Di Nitto - 2.03.05-1 -- New upstream release -- Cleanup installed doc after upstream - -* Wed Jun 11 2008 Fabio M. Di Nitto 2.03.04-1 -- New upstream release -- Resolves: #446995 #318271 #447378 #445662 -- Update license tags after major upstream cleanup -- Include COPYRIGHT file - -* Fri May 30 2008 Fabio M. Di Nitto 2.03.03-1 -- New upstream release -- Fix several build warnings -- Update spec files to use macros -- Update Requires to use packages rather than pointing at files -- Drop BR on kernel-devel since it's not required anymore -- Update build section to use proper _sysconfdir, libdir and sbindir -- Avoid abusing cd when we can ask make to do the work for us -- Remove /usr/sbin from file section. We don't have any file there - and we can avoid shipping stuff by mistake - -* Mon Apr 14 2008 Steven Whitehouse 2.03.00-3 -- Fabbione saves the day. We can get rid of the sed stuff after all - -* Mon Apr 14 2008 Steven Whitehouse 2.03.00-1 -- New upstream sources -- Eric Sandeen's solution to kernel version dep - -* Wed Apr 09 2008 Steven Whitehouse 0.1.25.2.02.01-15 -- Remove obsolete chkconfig patch for initscript -- Enable parallel make -- Remove obsolete copy of gfs2_ondisk.h (this should be in glibc-kernheaders) - -* Wed Apr 09 2008 Steven Whitehouse 0.1.25.2.02.01-14 -- Update URL -- Fix license spec - -* Fri Mar 14 2008 Chris Feist 0.1.25.2.02.00-2 -- New upstream sources. - -* Tue Jan 16 2007 Chris Feist 0.1.24-1 -- New upstream sources. -- Resolves: rhbz#222747 - -* Wed Jan 03 2007 Chris Feist 0.1.24-1 -- Updated sources -- Resolves: rhbz#218560 - -* Thu Dec 21 2006 Chris Feist 0.1.23-1 -- Updated sources -- Resolves: rhbz#218560 - -* Tue Dec 19 2006 Chris Feist 0.1.22-1 -- New upstream sources. -- Resolves: rhbz#219878 - -* Tue Dec 04 2006 Chris Feist 0.1.21-1 -- New upstream sources. -- Resolves: rhbz#218134 rhbz#215962 - -* Thu Nov 30 2006 Chris Feist 0.1.19-1 -- New upstream sources. -- Resolves: rhbz#217798 - -* Wed Nov 29 2006 Chris Feist 0.1.18-1 -- New upstream sources. -- Resolves: rhbz#217460 - -* Thu Oct 26 2006 Chris Feist 0.1.14-1 -- New upstream sources. - -* Fri Oct 13 2006 Chris Feist 0.1.12-1 -- New Upstream sources. - -* Fri Oct 13 2006 Chris Feist 0.1.10-1 -- New Upstream sources. - -* Mon Oct 09 2006 Chris Feist 0.1.9-1 -- New Upstream sources. - -* Mon Sep 25 2006 Chris Feist 0.1.8-1 -- New Upstream sources. - -* Wed Sep 13 2006 Chris Feist 0.1.7-1 -- New Upstream sources. - -* Thu Sep 07 2006 Chris Feist 0.1.6-2 -- Fix typo in uninstall script (turn off gfs2 instead of gfs) - -* Mon Aug 28 2006 Chris Feist 0.1.6-1 -- New Upstream sources. - -* Tue Aug 22 2006 Chris Feist 0.1.5-1 -- New Upstream sources. - -* Mon Aug 14 2006 Chris Feist 0.1.3-0 -- New Upstream sources, use dist tag. - -* Fri Jul 14 2006 Chris Feist -- Rebuild with updated sources - -* Wed Jul 12 2006 Jesse Keating -- rebuild - -* Tue Jun 27 2006 Florian La Roche -- fix typo in preun script - -* Fri Jun 09 2006 Chris Feist - 0.1.0-1.fc6.3 -- Initial build of gfs-utils. diff --git a/sources b/sources index 4371d69..1cbd040 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gfs2-utils-3.1.10.tar.gz) = 8c6fc6420bac7d787823907c9a7440060eb089f5d16a5ebf97ab51f634ebb532c5e069cbedd3e4cff2ea52d6d318b2afcde55d160305002c9ccc3284aa8ed9e1 +SHA512 (gfs2-utils-3.2.0.tar.gz) = 98ddf07666a7d0b0985e65eafebec455e0926a9bda9350d413f209bfc7af9ef30e23980a516f7375db61ea1b7b55f33934d52685d163ca6cc4a151ac0db5e5fe From 6120ebbdbf966b9c5b430e0483b05129e9b03ac6 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Thu, 21 Jun 2018 10:43:18 +0100 Subject: [PATCH 13/44] * Thu Jun 21 2018 Andrew Price - 3.2.0-2 - Recommend the gfs2 and dlm kmods instead of requiring them Resolves: bz#1593411 --- gfs2-utils.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 6de250e..c94e0b7 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,12 +12,12 @@ Name: gfs2-utils Version: 3.2.0 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} -%{?fedora:Requires: kmod(gfs2.ko) kmod(dlm.ko)} +%{?fedora:Recommends: kmod(gfs2.ko) kmod(dlm.ko)} %endif BuildRequires: ncurses-devel BuildRequires: kernel-headers @@ -74,6 +74,10 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jun 21 2018 Andrew Price - 3.2.0-2 +- Recommend the gfs2 and dlm kmods instead of requiring them + Resolves: bz#1593411 + * Thu May 24 2018 Andrew Price - 3.2.0-1 - New upstream release From 6eafa31975c51c5926208e77021589a5c574ac88 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 13 Jul 2018 01:27:50 +0000 Subject: [PATCH 14/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index c94e0b7..a8e2c1a 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.2.0 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ and LGPLv2+ Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) @@ -74,6 +74,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Fri Jul 13 2018 Fedora Release Engineering - 3.2.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Thu Jun 21 2018 Andrew Price - 3.2.0-2 - Recommend the gfs2 and dlm kmods instead of requiring them Resolves: bz#1593411 From 0d73d64ad4f1d0a43b0aaf78fad201e9e690209d Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Jan 2019 20:17:45 +0100 Subject: [PATCH 15/44] Remove obsolete Group tag References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag --- gfs2-utils.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index a8e2c1a..2cbf6fe 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -14,7 +14,6 @@ Name: gfs2-utils Version: 3.2.0 Release: 3%{?dist} License: GPLv2+ and LGPLv2+ -Group: System Environment/Kernel Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} %{?fedora:Recommends: kmod(gfs2.ko) kmod(dlm.ko)} From a04af2238dc903a185fae0c493e171b4edcae7d6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 31 Jan 2019 21:02:12 +0000 Subject: [PATCH 16/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 2cbf6fe..23721a6 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.2.0 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -73,6 +73,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jan 31 2019 Fedora Release Engineering - 3.2.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Fri Jul 13 2018 Fedora Release Engineering - 3.2.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From a72c2fad78327e26dfbeb66c5e5c144990b2cc10 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Mon, 4 Feb 2019 15:40:42 +0000 Subject: [PATCH 17/44] * Mon Feb 04 2019 Andrew Price - 3.2.0-5 - Fix libuuid linking --- 0-Fix_libuuid_linking.patch | 26 ++++++ 1-Fix_more_linking_errors.patch | 159 ++++++++++++++++++++++++++++++++ gfs2-utils.spec | 9 +- 3 files changed, 192 insertions(+), 2 deletions(-) create mode 100644 0-Fix_libuuid_linking.patch create mode 100644 1-Fix_more_linking_errors.patch diff --git a/0-Fix_libuuid_linking.patch b/0-Fix_libuuid_linking.patch new file mode 100644 index 0000000..057ac57 --- /dev/null +++ b/0-Fix_libuuid_linking.patch @@ -0,0 +1,26 @@ +commit 222e97c23dd015a8fc4bcceb598720cc17337edf +Author: Andrew Price +Date: Mon Feb 4 14:54:34 2019 +0000 + + Fix libuuid linking + + Fixes a build failure in Rawhide. + + Signed-off-by: Andrew Price + +diff --git a/gfs2/libgfs2/Makefile.am b/gfs2/libgfs2/Makefile.am +index 749da85a..76df920e 100644 +--- a/gfs2/libgfs2/Makefile.am ++++ b/gfs2/libgfs2/Makefile.am +@@ -54,8 +54,9 @@ libgfs2_la_CPPFLAGS = \ + $(uuid_CFLAGS) + + gfs2l_SOURCES = gfs2l.c +-gfs2l_LDADD = libgfs2.la +-gfs2l_LDFLAGS = $(uuid_LIBS) ++gfs2l_LDADD = \ ++ libgfs2.la \ ++ $(uuid_LIBS) + gfs2l_CPPFLAGS = \ + -I$(top_srcdir)/gfs2/include \ + -D_FILE_OFFSET_BITS=64 diff --git a/1-Fix_more_linking_errors.patch b/1-Fix_more_linking_errors.patch new file mode 100644 index 0000000..76028db --- /dev/null +++ b/1-Fix_more_linking_errors.patch @@ -0,0 +1,159 @@ +commit 1a92a964c8ba87d95b2f43b0adc3d351a7f7ba80 +Author: Andrew Price +Date: Mon Feb 4 15:31:33 2019 +0000 + + Fix more linking errors + + Signed-off-by: Andrew Price + +diff --git a/gfs2/convert/Makefile.am b/gfs2/convert/Makefile.am +index 4db643fb..2d61af74 100644 +--- a/gfs2/convert/Makefile.am ++++ b/gfs2/convert/Makefile.am +@@ -7,5 +7,6 @@ gfs2_convert_CPPFLAGS = \ + -I$(top_srcdir)/gfs2/include \ + -I$(top_srcdir)/gfs2/libgfs2 + +-gfs2_convert_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la +-gfs2_convert_LDFLAGS = $(uuid_LIBS) ++gfs2_convert_LDADD = \ ++ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ ++ $(uuid_LIBS) +diff --git a/gfs2/edit/Makefile.am b/gfs2/edit/Makefile.am +index a9b177e9..4a89502c 100644 +--- a/gfs2/edit/Makefile.am ++++ b/gfs2/edit/Makefile.am +@@ -25,9 +25,9 @@ gfs2_edit_CFLAGS = \ + $(zlib_CFLAGS) \ + $(uuid_CFLAGS) + +-gfs2_edit_LDFLAGS = \ ++gfs2_edit_LDADD = \ ++ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ + $(ncurses_LIBS) \ + $(zlib_LIBS) \ + $(uuid_LIBS) + +-gfs2_edit_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la +diff --git a/gfs2/fsck/Makefile.am b/gfs2/fsck/Makefile.am +index 97fcd404..1c528051 100644 +--- a/gfs2/fsck/Makefile.am ++++ b/gfs2/fsck/Makefile.am +@@ -36,6 +36,5 @@ fsck_gfs2_CPPFLAGS = \ + -I$(top_srcdir)/gfs2/libgfs2 + + fsck_gfs2_LDADD = \ +- $(top_builddir)/gfs2/libgfs2/libgfs2.la +-fsck_gfs2_LDFLAGS = \ ++ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ + $(uuid_LIBS) +diff --git a/gfs2/glocktop/Makefile.am b/gfs2/glocktop/Makefile.am +index 1102c8e2..f5076554 100644 +--- a/gfs2/glocktop/Makefile.am ++++ b/gfs2/glocktop/Makefile.am +@@ -9,10 +9,6 @@ glocktop_SOURCES = \ + glocktop_CFLAGS = \ + $(ncurses_CFLAGS) + +-glocktop_LDFLAGS = \ +- $(ncurses_LIBS) \ +- $(uuid_LIBS) +- + glocktop_CPPFLAGS = \ + -D_FILE_OFFSET_BITS=64 \ + -D_LARGEFILE64_SOURCE \ +@@ -21,4 +17,6 @@ glocktop_CPPFLAGS = \ + -I$(top_srcdir)/gfs2/libgfs2 + + glocktop_LDADD = \ +- $(top_builddir)/gfs2/libgfs2/libgfs2.la ++ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ ++ $(ncurses_LIBS) \ ++ $(uuid_LIBS) +diff --git a/gfs2/mkfs/Makefile.am b/gfs2/mkfs/Makefile.am +index f0dd961c..fd7145b8 100644 +--- a/gfs2/mkfs/Makefile.am ++++ b/gfs2/mkfs/Makefile.am +@@ -25,10 +25,10 @@ mkfs_gfs2_CPPFLAGS = $(COMMON_CPPFLAGS) + mkfs_gfs2_CFLAGS = \ + $(blkid_CFLAGS) \ + $(uuid_CFLAGS) +-mkfs_gfs2_LDFLAGS = \ ++mkfs_gfs2_LDADD = \ ++ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ + $(blkid_LIBS) \ + $(uuid_LIBS) +-mkfs_gfs2_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la + + gfs2_grow_SOURCES = \ + main_grow.c \ +@@ -36,16 +36,17 @@ gfs2_grow_SOURCES = \ + + gfs2_grow_CPPFLAGS = $(COMMON_CPPFLAGS) + gfs2_grow_CFLAGS = $(blkid_CFLAGS) +-gfs2_grow_LDFLAGS = \ ++gfs2_grow_LDADD = \ ++ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ + $(blkid_LIBS) \ + $(uuid_LIBS) +-gfs2_grow_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la + + gfs2_jadd_SOURCES = \ + main_jadd.c \ + metafs.c + + gfs2_jadd_CPPFLAGS = $(COMMON_CPPFLAGS) +-gfs2_jadd_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la +-gfs2_jadd_LDFLAGS = $(uuid_LIBS) ++gfs2_jadd_LDADD = \ ++ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ ++ $(uuid_LIBS) + +diff --git a/gfs2/tune/Makefile.am b/gfs2/tune/Makefile.am +index 7628f424..171377d0 100644 +--- a/gfs2/tune/Makefile.am ++++ b/gfs2/tune/Makefile.am +@@ -13,5 +13,5 @@ tunegfs2_CPPFLAGS = \ + -I$(top_srcdir)/group/include + tunegfs2_CFLAGS = \ + $(uuid_CFLAGS) +-tunegfs2_LDFLAGS = \ ++tunegfs2_LDADD = \ + $(uuid_LIBS) +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 40fcfb47..40b486b0 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -26,8 +26,7 @@ nukerg_CFLAGS = \ + -I$(top_srcdir)/gfs2/libgfs2 \ + -I$(top_srcdir)/gfs2/include + nukerg_LDADD = \ +- $(top_builddir)/gfs2/libgfs2/libgfs2.la +-nukerg_LDFLAGS = \ ++ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ + $(uuid_LIBS) + + if HAVE_CHECK +@@ -54,16 +53,18 @@ check_meta_SOURCES = \ + $(UNIT_SOURCES) \ + check_meta.c + check_meta_CFLAGS = $(UNIT_CFLAGS) +-check_meta_LDADD = $(UNIT_LDADD) +-check_meta_LDFLAGS = $(uuid_LIBS) ++check_meta_LDADD = \ ++ $(UNIT_LDADD) \ ++ $(uuid_LIBS) + check_meta_CPPFLAGS = $(UNIT_CPPFLAGS) + + check_rgrp_SOURCES = \ + $(UNIT_SOURCES) \ + check_rgrp.c + check_rgrp_CFLAGS = $(UNIT_CFLAGS) +-check_rgrp_LDADD = $(UNIT_LDADD) +-check_rgrp_LDFLAGS = $(uuid_LIBS) ++check_rgrp_LDADD = \ ++ $(UNIT_LDADD) \ ++ $(uuid_LIBS) + check_rgrp_CPPFLAGS = $(UNIT_CPPFLAGS) + endif + diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 23721a6..dc99a8b 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.2.0 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -31,9 +31,11 @@ BuildRequires: libuuid-devel BuildRequires: check-devel Source: https://releases.pagure.org/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://pagure.io/gfs2-utils +Patch0: 0-Fix_libuuid_linking.patch +Patch1: 1-Fix_more_linking_errors.patch %prep -%setup -q -n gfs2-utils-%{version} +%autosetup -p1 %build ./autogen.sh @@ -73,6 +75,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Mon Feb 04 2019 Andrew Price - 3.2.0-5 +- Fix libuuid linking + * Thu Jan 31 2019 Fedora Release Engineering - 3.2.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From b2747aceae546ed6664638fc827fac342cbe207e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jul 2019 01:57:33 +0000 Subject: [PATCH 18/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index dc99a8b..5404938 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.2.0 -Release: 5%{?dist} +Release: 6%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -75,6 +75,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jul 25 2019 Fedora Release Engineering - 3.2.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Mon Feb 04 2019 Andrew Price - 3.2.0-5 - Fix libuuid linking From 11c4e7ef477d96a214ed5d98bf504928cd67282a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jan 2020 20:06:42 +0000 Subject: [PATCH 19/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 5404938..3678416 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -12,7 +12,7 @@ Name: gfs2-utils Version: 3.2.0 -Release: 6%{?dist} +Release: 7%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -75,6 +75,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Tue Jan 28 2020 Fedora Release Engineering - 3.2.0-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Thu Jul 25 2019 Fedora Release Engineering - 3.2.0-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 467059d2ea6b4802c6ed5a8a2fc7090ed9e1044f Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Tue, 21 Jul 2020 09:18:02 +0100 Subject: [PATCH 20/44] * Tue Jul 21 2020 Andrew Price - 3.2.0-8 - Use make_build and make_install macros https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro - Remove -C gfs2 - it's a remnant from the cluster.git days - Remove unnecessary header notice from spec file --- gfs2-utils.spec | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 3678416..432ee21 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,18 +1,6 @@ -############################################################################### -############################################################################### -## -## Copyright (C) 2004-2018 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 v.2. -## -############################################################################### -############################################################################### - Name: gfs2-utils Version: 3.2.0 -Release: 7%{?dist} +Release: 8%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -40,13 +28,13 @@ Patch1: 1-Fix_more_linking_errors.patch %build ./autogen.sh %configure -make %{_smp_mflags} V=1 +%make_build %check make check || { cat tests/testsuite.log; exit 1; } %install -make -C gfs2 install DESTDIR=%{buildroot} +%make_install # Don't ship gfs2_{trace,lockcapture} in this package rm -f %{buildroot}/usr/sbin/gfs2_trace rm -f %{buildroot}/usr/sbin/gfs2_lockcapture @@ -75,6 +63,12 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Tue Jul 21 2020 Andrew Price - 3.2.0-8 +- Use make_build and make_install macros + https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro +- Remove -C gfs2 - it's a remnant from the cluster.git days +- Remove unnecessary header notice from spec file + * Tue Jan 28 2020 Fedora Release Engineering - 3.2.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 061d248773d9058ff76a6ebac4f4b8b2311b0d3d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 27 Jul 2020 18:40:16 +0000 Subject: [PATCH 21/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 432ee21..f01c29c 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.2.0 -Release: 8%{?dist} +Release: 9%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -63,6 +63,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Mon Jul 27 2020 Fedora Release Engineering - 3.2.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Tue Jul 21 2020 Andrew Price - 3.2.0-8 - Use make_build and make_install macros https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro From a65087a00feff25efc44ed74071b4a3056cf3e23 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Wed, 29 Jul 2020 13:55:47 +0100 Subject: [PATCH 22/44] * Wed Jul 29 2020 Andrew Price - 3.2.0-10 - tests: Don't use fail_unless in unit tests Fixes build failures due to a regression in check-devel --- ..._Don_t_use_fail_unless_in_unit_tests.patch | 74 +++++++++++++++++++ gfs2-utils.spec | 7 +- 2 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 2-tests_Don_t_use_fail_unless_in_unit_tests.patch diff --git a/2-tests_Don_t_use_fail_unless_in_unit_tests.patch b/2-tests_Don_t_use_fail_unless_in_unit_tests.patch new file mode 100644 index 0000000..c3bb4bf --- /dev/null +++ b/2-tests_Don_t_use_fail_unless_in_unit_tests.patch @@ -0,0 +1,74 @@ +diff -urN gfs2-utils-3.2.0/tests/check_meta.c gfs2-utils-3.2.0.patched/tests/check_meta.c +--- gfs2-utils-3.2.0/tests/check_meta.c 2018-05-23 21:04:16.000000000 +0100 ++++ gfs2-utils-3.2.0.patched/tests/check_meta.c 2020-07-29 13:19:28.548734314 +0100 +@@ -6,7 +6,7 @@ + + START_TEST(test_lgfs2_meta) + { +- fail_unless(lgfs2_selfcheck() == 0); ++ ck_assert(lgfs2_selfcheck() == 0); + } + END_TEST + +diff -urN gfs2-utils-3.2.0/tests/check_rgrp.c gfs2-utils-3.2.0.patched/tests/check_rgrp.c +--- gfs2-utils-3.2.0/tests/check_rgrp.c 2018-05-23 21:04:16.000000000 +0100 ++++ gfs2-utils-3.2.0.patched/tests/check_rgrp.c 2020-07-29 13:19:28.548734314 +0100 +@@ -16,7 +16,7 @@ + uint32_t rgsize = (1024 << 20) / 4096; + + sdp = calloc(1, sizeof(*sdp)); +- fail_unless(sdp != NULL); ++ ck_assert(sdp != NULL); + + sdp->device.length = rgsize + 20; + sdp->device_fd = -1; +@@ -24,7 +24,7 @@ + compute_constants(sdp); + + rgs = lgfs2_rgrps_init(sdp, 0, 0); +- fail_unless(rgs != NULL); ++ ck_assert(rgs != NULL); + + lgfs2_rgrps_plan(rgs, sdp->device.length - 16, rgsize); + +@@ -32,11 +32,11 @@ + ck_assert(addr != 0); + + rg = lgfs2_rgrps_append(rgs, &ri, 0); +- fail_unless(rg != NULL); ++ ck_assert(rg != NULL); + + for (i = 0; i < rg->ri.ri_length; i++) { + rg->bits[i].bi_bh = bget(sdp, rg->ri.ri_addr + i); +- fail_unless(rg->bits[i].bi_bh != NULL); ++ ck_assert(rg->bits[i].bi_bh != NULL); + } + return rgs; + } +@@ -44,7 +44,7 @@ + START_TEST(test_mockup_rgrp) + { + lgfs2_rgrps_t rgs = mockup_rgrp(); +- fail_unless(rgs != NULL); ++ ck_assert(rgs != NULL); + } + END_TEST + +@@ -66,7 +66,7 @@ + ck_assert_int_eq(err, 0); + + addr = lgfs2_rbm_to_block(&rbm); +- fail_unless(addr == rbm.rgd->ri.ri_data0); ++ ck_assert(addr == rbm.rgd->ri.ri_data0); + } + } + END_TEST +@@ -110,7 +110,7 @@ + ck_assert_int_eq(err, 0); + + addr = lgfs2_rbm_to_block(&rbm); +- fail_unless(addr == (rg->ri.ri_data0 + rg->ri.ri_data - 1)); ++ ck_assert(addr == (rg->ri.ri_data0 + rg->ri.ri_data - 1)); + } + END_TEST + diff --git a/gfs2-utils.spec b/gfs2-utils.spec index f01c29c..aff7fa0 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.2.0 -Release: 9%{?dist} +Release: 10%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -21,6 +21,7 @@ Source: https://releases.pagure.org/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://pagure.io/gfs2-utils Patch0: 0-Fix_libuuid_linking.patch Patch1: 1-Fix_more_linking_errors.patch +Patch2: 2-tests_Don_t_use_fail_unless_in_unit_tests.patch %prep %autosetup -p1 @@ -63,6 +64,10 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Wed Jul 29 2020 Andrew Price - 3.2.0-10 +- tests: Don't use fail_unless in unit tests + Fixes build failures due to a regression in check-devel + * Mon Jul 27 2020 Fedora Release Engineering - 3.2.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 9791e7be606d65c31717a3fbd91bc6b13e5e57ce Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Tue, 1 Sep 2020 17:35:26 +0100 Subject: [PATCH 23/44] * Tue Sep 01 2020 Andrew Price - 3.3.0-1 - New upstream version - Add dependency on bzip2 - Drop all patches - gfs2_withdraw_helper is now in /usr/libexec/ --- .gitignore | 13 +- 0-Fix_libuuid_linking.patch | 26 --- 1-Fix_more_linking_errors.patch | 159 ------------------ ..._Don_t_use_fail_unless_in_unit_tests.patch | 74 -------- gfs2-utils.spec | 16 +- sources | 2 +- 6 files changed, 12 insertions(+), 278 deletions(-) delete mode 100644 0-Fix_libuuid_linking.patch delete mode 100644 1-Fix_more_linking_errors.patch delete mode 100644 2-tests_Don_t_use_fail_unless_in_unit_tests.patch diff --git a/.gitignore b/.gitignore index f7a396a..17c9025 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1 @@ -/gfs2-utils-3.1.0.tar.gz -/gfs2-utils-3.1.1.tar.gz -/gfs2-utils-3.1.2.tar.gz -/gfs2-utils-3.1.3.tar.gz -/gfs2-utils-3.1.4.tar.gz -/gfs2-utils-3.1.5.tar.gz -/gfs2-utils-3.1.6.tar.gz -/gfs2-utils-3.1.7.tar.gz -/gfs2-utils-3.1.8.tar.gz -/gfs2-utils-3.1.9.tar.gz -/gfs2-utils-3.1.10.tar.gz -/gfs2-utils-3.2.0.tar.gz +/gfs2-utils-3.3.0.tar.gz diff --git a/0-Fix_libuuid_linking.patch b/0-Fix_libuuid_linking.patch deleted file mode 100644 index 057ac57..0000000 --- a/0-Fix_libuuid_linking.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 222e97c23dd015a8fc4bcceb598720cc17337edf -Author: Andrew Price -Date: Mon Feb 4 14:54:34 2019 +0000 - - Fix libuuid linking - - Fixes a build failure in Rawhide. - - Signed-off-by: Andrew Price - -diff --git a/gfs2/libgfs2/Makefile.am b/gfs2/libgfs2/Makefile.am -index 749da85a..76df920e 100644 ---- a/gfs2/libgfs2/Makefile.am -+++ b/gfs2/libgfs2/Makefile.am -@@ -54,8 +54,9 @@ libgfs2_la_CPPFLAGS = \ - $(uuid_CFLAGS) - - gfs2l_SOURCES = gfs2l.c --gfs2l_LDADD = libgfs2.la --gfs2l_LDFLAGS = $(uuid_LIBS) -+gfs2l_LDADD = \ -+ libgfs2.la \ -+ $(uuid_LIBS) - gfs2l_CPPFLAGS = \ - -I$(top_srcdir)/gfs2/include \ - -D_FILE_OFFSET_BITS=64 diff --git a/1-Fix_more_linking_errors.patch b/1-Fix_more_linking_errors.patch deleted file mode 100644 index 76028db..0000000 --- a/1-Fix_more_linking_errors.patch +++ /dev/null @@ -1,159 +0,0 @@ -commit 1a92a964c8ba87d95b2f43b0adc3d351a7f7ba80 -Author: Andrew Price -Date: Mon Feb 4 15:31:33 2019 +0000 - - Fix more linking errors - - Signed-off-by: Andrew Price - -diff --git a/gfs2/convert/Makefile.am b/gfs2/convert/Makefile.am -index 4db643fb..2d61af74 100644 ---- a/gfs2/convert/Makefile.am -+++ b/gfs2/convert/Makefile.am -@@ -7,5 +7,6 @@ gfs2_convert_CPPFLAGS = \ - -I$(top_srcdir)/gfs2/include \ - -I$(top_srcdir)/gfs2/libgfs2 - --gfs2_convert_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la --gfs2_convert_LDFLAGS = $(uuid_LIBS) -+gfs2_convert_LDADD = \ -+ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ -+ $(uuid_LIBS) -diff --git a/gfs2/edit/Makefile.am b/gfs2/edit/Makefile.am -index a9b177e9..4a89502c 100644 ---- a/gfs2/edit/Makefile.am -+++ b/gfs2/edit/Makefile.am -@@ -25,9 +25,9 @@ gfs2_edit_CFLAGS = \ - $(zlib_CFLAGS) \ - $(uuid_CFLAGS) - --gfs2_edit_LDFLAGS = \ -+gfs2_edit_LDADD = \ -+ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ - $(ncurses_LIBS) \ - $(zlib_LIBS) \ - $(uuid_LIBS) - --gfs2_edit_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la -diff --git a/gfs2/fsck/Makefile.am b/gfs2/fsck/Makefile.am -index 97fcd404..1c528051 100644 ---- a/gfs2/fsck/Makefile.am -+++ b/gfs2/fsck/Makefile.am -@@ -36,6 +36,5 @@ fsck_gfs2_CPPFLAGS = \ - -I$(top_srcdir)/gfs2/libgfs2 - - fsck_gfs2_LDADD = \ -- $(top_builddir)/gfs2/libgfs2/libgfs2.la --fsck_gfs2_LDFLAGS = \ -+ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ - $(uuid_LIBS) -diff --git a/gfs2/glocktop/Makefile.am b/gfs2/glocktop/Makefile.am -index 1102c8e2..f5076554 100644 ---- a/gfs2/glocktop/Makefile.am -+++ b/gfs2/glocktop/Makefile.am -@@ -9,10 +9,6 @@ glocktop_SOURCES = \ - glocktop_CFLAGS = \ - $(ncurses_CFLAGS) - --glocktop_LDFLAGS = \ -- $(ncurses_LIBS) \ -- $(uuid_LIBS) -- - glocktop_CPPFLAGS = \ - -D_FILE_OFFSET_BITS=64 \ - -D_LARGEFILE64_SOURCE \ -@@ -21,4 +17,6 @@ glocktop_CPPFLAGS = \ - -I$(top_srcdir)/gfs2/libgfs2 - - glocktop_LDADD = \ -- $(top_builddir)/gfs2/libgfs2/libgfs2.la -+ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ -+ $(ncurses_LIBS) \ -+ $(uuid_LIBS) -diff --git a/gfs2/mkfs/Makefile.am b/gfs2/mkfs/Makefile.am -index f0dd961c..fd7145b8 100644 ---- a/gfs2/mkfs/Makefile.am -+++ b/gfs2/mkfs/Makefile.am -@@ -25,10 +25,10 @@ mkfs_gfs2_CPPFLAGS = $(COMMON_CPPFLAGS) - mkfs_gfs2_CFLAGS = \ - $(blkid_CFLAGS) \ - $(uuid_CFLAGS) --mkfs_gfs2_LDFLAGS = \ -+mkfs_gfs2_LDADD = \ -+ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ - $(blkid_LIBS) \ - $(uuid_LIBS) --mkfs_gfs2_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la - - gfs2_grow_SOURCES = \ - main_grow.c \ -@@ -36,16 +36,17 @@ gfs2_grow_SOURCES = \ - - gfs2_grow_CPPFLAGS = $(COMMON_CPPFLAGS) - gfs2_grow_CFLAGS = $(blkid_CFLAGS) --gfs2_grow_LDFLAGS = \ -+gfs2_grow_LDADD = \ -+ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ - $(blkid_LIBS) \ - $(uuid_LIBS) --gfs2_grow_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la - - gfs2_jadd_SOURCES = \ - main_jadd.c \ - metafs.c - - gfs2_jadd_CPPFLAGS = $(COMMON_CPPFLAGS) --gfs2_jadd_LDADD = $(top_builddir)/gfs2/libgfs2/libgfs2.la --gfs2_jadd_LDFLAGS = $(uuid_LIBS) -+gfs2_jadd_LDADD = \ -+ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ -+ $(uuid_LIBS) - -diff --git a/gfs2/tune/Makefile.am b/gfs2/tune/Makefile.am -index 7628f424..171377d0 100644 ---- a/gfs2/tune/Makefile.am -+++ b/gfs2/tune/Makefile.am -@@ -13,5 +13,5 @@ tunegfs2_CPPFLAGS = \ - -I$(top_srcdir)/group/include - tunegfs2_CFLAGS = \ - $(uuid_CFLAGS) --tunegfs2_LDFLAGS = \ -+tunegfs2_LDADD = \ - $(uuid_LIBS) -diff --git a/tests/Makefile.am b/tests/Makefile.am -index 40fcfb47..40b486b0 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -26,8 +26,7 @@ nukerg_CFLAGS = \ - -I$(top_srcdir)/gfs2/libgfs2 \ - -I$(top_srcdir)/gfs2/include - nukerg_LDADD = \ -- $(top_builddir)/gfs2/libgfs2/libgfs2.la --nukerg_LDFLAGS = \ -+ $(top_builddir)/gfs2/libgfs2/libgfs2.la \ - $(uuid_LIBS) - - if HAVE_CHECK -@@ -54,16 +53,18 @@ check_meta_SOURCES = \ - $(UNIT_SOURCES) \ - check_meta.c - check_meta_CFLAGS = $(UNIT_CFLAGS) --check_meta_LDADD = $(UNIT_LDADD) --check_meta_LDFLAGS = $(uuid_LIBS) -+check_meta_LDADD = \ -+ $(UNIT_LDADD) \ -+ $(uuid_LIBS) - check_meta_CPPFLAGS = $(UNIT_CPPFLAGS) - - check_rgrp_SOURCES = \ - $(UNIT_SOURCES) \ - check_rgrp.c - check_rgrp_CFLAGS = $(UNIT_CFLAGS) --check_rgrp_LDADD = $(UNIT_LDADD) --check_rgrp_LDFLAGS = $(uuid_LIBS) -+check_rgrp_LDADD = \ -+ $(UNIT_LDADD) \ -+ $(uuid_LIBS) - check_rgrp_CPPFLAGS = $(UNIT_CPPFLAGS) - endif - diff --git a/2-tests_Don_t_use_fail_unless_in_unit_tests.patch b/2-tests_Don_t_use_fail_unless_in_unit_tests.patch deleted file mode 100644 index c3bb4bf..0000000 --- a/2-tests_Don_t_use_fail_unless_in_unit_tests.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff -urN gfs2-utils-3.2.0/tests/check_meta.c gfs2-utils-3.2.0.patched/tests/check_meta.c ---- gfs2-utils-3.2.0/tests/check_meta.c 2018-05-23 21:04:16.000000000 +0100 -+++ gfs2-utils-3.2.0.patched/tests/check_meta.c 2020-07-29 13:19:28.548734314 +0100 -@@ -6,7 +6,7 @@ - - START_TEST(test_lgfs2_meta) - { -- fail_unless(lgfs2_selfcheck() == 0); -+ ck_assert(lgfs2_selfcheck() == 0); - } - END_TEST - -diff -urN gfs2-utils-3.2.0/tests/check_rgrp.c gfs2-utils-3.2.0.patched/tests/check_rgrp.c ---- gfs2-utils-3.2.0/tests/check_rgrp.c 2018-05-23 21:04:16.000000000 +0100 -+++ gfs2-utils-3.2.0.patched/tests/check_rgrp.c 2020-07-29 13:19:28.548734314 +0100 -@@ -16,7 +16,7 @@ - uint32_t rgsize = (1024 << 20) / 4096; - - sdp = calloc(1, sizeof(*sdp)); -- fail_unless(sdp != NULL); -+ ck_assert(sdp != NULL); - - sdp->device.length = rgsize + 20; - sdp->device_fd = -1; -@@ -24,7 +24,7 @@ - compute_constants(sdp); - - rgs = lgfs2_rgrps_init(sdp, 0, 0); -- fail_unless(rgs != NULL); -+ ck_assert(rgs != NULL); - - lgfs2_rgrps_plan(rgs, sdp->device.length - 16, rgsize); - -@@ -32,11 +32,11 @@ - ck_assert(addr != 0); - - rg = lgfs2_rgrps_append(rgs, &ri, 0); -- fail_unless(rg != NULL); -+ ck_assert(rg != NULL); - - for (i = 0; i < rg->ri.ri_length; i++) { - rg->bits[i].bi_bh = bget(sdp, rg->ri.ri_addr + i); -- fail_unless(rg->bits[i].bi_bh != NULL); -+ ck_assert(rg->bits[i].bi_bh != NULL); - } - return rgs; - } -@@ -44,7 +44,7 @@ - START_TEST(test_mockup_rgrp) - { - lgfs2_rgrps_t rgs = mockup_rgrp(); -- fail_unless(rgs != NULL); -+ ck_assert(rgs != NULL); - } - END_TEST - -@@ -66,7 +66,7 @@ - ck_assert_int_eq(err, 0); - - addr = lgfs2_rbm_to_block(&rbm); -- fail_unless(addr == rbm.rgd->ri.ri_data0); -+ ck_assert(addr == rbm.rgd->ri.ri_data0); - } - } - END_TEST -@@ -110,7 +110,7 @@ - ck_assert_int_eq(err, 0); - - addr = lgfs2_rbm_to_block(&rbm); -- fail_unless(addr == (rg->ri.ri_data0 + rg->ri.ri_data - 1)); -+ ck_assert(addr == (rg->ri.ri_data0 + rg->ri.ri_data - 1)); - } - END_TEST - diff --git a/gfs2-utils.spec b/gfs2-utils.spec index aff7fa0..4e0de09 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils -Version: 3.2.0 -Release: 10%{?dist} +Version: 3.3.0 +Release: 1%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -17,11 +17,9 @@ BuildRequires: flex BuildRequires: libblkid-devel BuildRequires: libuuid-devel BuildRequires: check-devel +BuildRequires: bzip2-devel Source: https://releases.pagure.org/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://pagure.io/gfs2-utils -Patch0: 0-Fix_libuuid_linking.patch -Patch1: 1-Fix_more_linking_errors.patch -Patch2: 2-tests_Don_t_use_fail_unless_in_unit_tests.patch %prep %autosetup -p1 @@ -56,14 +54,20 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_sbindir}/gfs2_convert %{_sbindir}/gfs2_edit %{_sbindir}/tunegfs2 -%{_sbindir}/gfs2_withdraw_helper %{_sbindir}/glocktop +%{_libexecdir}/gfs2_withdraw_helper %{_mandir}/man8/*gfs2* %{_mandir}/man8/glocktop* %{_mandir}/man5/* %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Tue Sep 01 2020 Andrew Price - 3.3.0-1 +- New upstream version +- Add dependency on bzip2 +- Drop all patches +- gfs2_withdraw_helper is now in /usr/libexec/ + * Wed Jul 29 2020 Andrew Price - 3.2.0-10 - tests: Don't use fail_unless in unit tests Fixes build failures due to a regression in check-devel diff --git a/sources b/sources index 1cbd040..8115dd5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gfs2-utils-3.2.0.tar.gz) = 98ddf07666a7d0b0985e65eafebec455e0926a9bda9350d413f209bfc7af9ef30e23980a516f7375db61ea1b7b55f33934d52685d163ca6cc4a151ac0db5e5fe +SHA512 (gfs2-utils-3.3.0.tar.gz) = b5ed1fb91eaf88fd163b682a73a3f54efd000e513206aba90e6286e68d8b13c325373da1bde94c8f48c0d235b60f22f6269f9103c508aebf13b15d9470b745d0 From 01606e25fc1dc289800b53ef29011db23f0b72b9 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Thu, 3 Sep 2020 09:19:32 +0100 Subject: [PATCH 24/44] Add gating tests --- gating.yaml | 15 + gfs2-utils.spec | 5 +- tests/atlocal | 8 + tests/rgrifieldscheck.sh | 20 + tests/rgskipcheck.sh | 19 + tests/tests.yml | 11 + tests/testsuite | 5464 ++++++++++++++++++++++++++++++++++++++ 7 files changed, 5541 insertions(+), 1 deletion(-) create mode 100644 gating.yaml create mode 100644 tests/atlocal create mode 100755 tests/rgrifieldscheck.sh create mode 100755 tests/rgskipcheck.sh create mode 100644 tests/tests.yml create mode 100755 tests/testsuite diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..f075ad7 --- /dev/null +++ b/gating.yaml @@ -0,0 +1,15 @@ +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_testing +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} + +--- !Policy +product_versions: + - fedora-* +decision_context: bodhi_update_push_stable +subject_type: koji_build +rules: + - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 4e0de09..d98ea3e 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.3.0 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -62,6 +62,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Sep 03 2020 Andrew Price - 3.3.0-2 +- Version bump to enable gating tests + * Tue Sep 01 2020 Andrew Price - 3.3.0-1 - New upstream version - Add dependency on bzip2 diff --git a/tests/atlocal b/tests/atlocal new file mode 100644 index 0000000..47da8d4 --- /dev/null +++ b/tests/atlocal @@ -0,0 +1,8 @@ +GFS_TGT="../../testvol" +GFS_TGT_SZ=10 +GFS_MKFS="mkfs.gfs2 -O -D" + +gfs_max_blocks() +{ + printf $((GFS_TGT_SZ*1073741824/$1)) +} diff --git a/tests/rgrifieldscheck.sh b/tests/rgrifieldscheck.sh new file mode 100755 index 0000000..1fbf672 --- /dev/null +++ b/tests/rgrifieldscheck.sh @@ -0,0 +1,20 @@ +#!/bin/sh +dev=$1 +i=0 +gfs2_edit -p rg 0 $dev | grep rg_data0 > /dev/null 2>&1 +# New fields not present in /usr/include/linux/gfs2_ondisk.h +test $? = 0 || exit 0 +gfs2_edit -p rindex $dev | while read field rival unused +do + test $field = ri_data0 -o $field = ri_data -o $field = ri_bitbytes || continue + rgfield=$(echo $field | sed 's/ri/rg/') + rgval=$(gfs2_edit -p rg $i $dev | grep " $rgfield " | awk '{print $2}') + + if test "$rival" != "$rgval" + then + echo "Bad $rgfield in rg $i: $rgval (expected: $rival)" >&2 + exit 1 + fi + + test $field = ri_bitbytes && i=$((i+1)) +done diff --git a/tests/rgskipcheck.sh b/tests/rgskipcheck.sh new file mode 100755 index 0000000..4a8f93f --- /dev/null +++ b/tests/rgskipcheck.sh @@ -0,0 +1,19 @@ +#!/bin/sh + +dev=$1 +rgcount=$(gfs2_edit -p rgcount $dev | cut -f1 -d' ') +prevaddr=$(gfs2_edit -p rg 0 $dev | grep ^RG | awk '{print $5}') +prevskip=0 +for i in `seq 0 $(($rgcount - 1))`; do + addr=$(gfs2_edit -p rg $i $dev | grep ^RG | awk '{print $5}') + expected=$(($addr - $prevaddr)) + + if test $prevskip != $expected; then + echo "Bad rg_skip in rg $(($i - 1)): $prevskip (expected: $expected)" >&2 + exit 1 + fi + + prevskip=$(gfs2_edit -p rg $i $dev | grep rg_skip | awk '{print $2}') + prevaddr=$addr +done + diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100644 index 0000000..aaaac51 --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,11 @@ +- hosts: localhost + roles: + - role: standard-test-basic + tags: + - classic + environment: + PATH: ".:{{ ansible_env.PATH }}" + tests: + - upstream_test_suite: + dir: . + run: ./testsuite diff --git a/tests/testsuite b/tests/testsuite new file mode 100755 index 0000000..2444415 --- /dev/null +++ b/tests/testsuite @@ -0,0 +1,5464 @@ +#! /bin/sh +# Generated from testsuite.at by GNU Autoconf 2.69. +# +# Copyright (C) 2009-2012 Free Software Foundation, Inc. +# +# This test suite is free software; the Free Software Foundation gives +# unlimited permission to copy, distribute and modify it. +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +if test "x$CONFIG_SHELL" = x; then + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } + +exitcode=0 +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1 +test -x / || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes +else + as_have_required=no +fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : + +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + as_found=: + case $as_dir in #( + /*) + for as_base in sh bash ksh sh5; do + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi + done;; + esac + as_found=false +done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } +IFS=$as_save_IFS + + + if test "x$CONFIG_SHELL" != x; then : + export CONFIG_SHELL + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +exit 255 +fi + + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf@gnu.org about your system, +$0: including any error possibly output before this +$0: message. Then install a modern shell, or manually run +$0: the script under such a shell if you do have one." + fi + exit 1 +fi +fi +fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + + + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } + + # If we had to re-execute with $CONFIG_SHELL, we're ensured to have + # already done that, so ensure we don't try to do so again and fall + # in an infinite loop. This has already happened in practice. + _as_can_reexec=no; export _as_can_reexec + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + + + + +SHELL=${CONFIG_SHELL-/bin/sh} + +# How were we run? +at_cli_args="$@" + + +# Not all shells have the 'times' builtin; the subshell is needed to make +# sure we discard the 'times: not found' message from the shell. +at_times_p=false +(times) >/dev/null 2>&1 && at_times_p=: + +# CLI Arguments to pass to the debugging scripts. +at_debug_args= +# -e sets to true +at_errexit_p=false +# Shall we be verbose? ':' means no, empty means yes. +at_verbose=: +at_quiet= +# Running several jobs in parallel, 0 means as many as test groups. +at_jobs=1 +at_traceon=: +at_trace_echo=: +at_check_filter_trace=: + +# Shall we keep the debug scripts? Must be `:' when the suite is +# run by a debug script, so that the script doesn't remove itself. +at_debug_p=false +# Display help message? +at_help_p=false +# Display the version message? +at_version_p=false +# List test groups? +at_list_p=false +# --clean +at_clean=false +# Test groups to run +at_groups= +# Whether to rerun failed tests. +at_recheck= +# Whether a write failure occurred +at_write_fail=0 + +# The directory we run the suite in. Default to . if no -C option. +at_dir=`pwd` +# An absolute reference to this testsuite script. +case $as_myself in + [\\/]* | ?:[\\/]* ) at_myself=$as_myself ;; + * ) at_myself=$at_dir/$as_myself ;; +esac +# Whether -C is in effect. +at_change_dir=false + +# Whether to enable colored test results. +at_color=auto +# List of the tested programs. +at_tested='mkfs.gfs2 +fsck.gfs2 +gfs2_edit' +# As many question marks as there are digits in the last test group number. +# Used to normalize the test group numbers so that `ls' lists them in +# numerical order. +at_format='??' +# Description of all the test groups. +at_help_all="1;mkfs.at:4;Locking protocol validation;mkfs.gfs2 mkfs; +2;mkfs.at:9;Resource group size validation;mkfs.gfs2 mkfs; +3;mkfs.at:15;Journal size validation;mkfs.gfs2 mkfs; +4;mkfs.at:21;Block count validation;mkfs.gfs2 mkfs; +5;mkfs.at:28;Quota change file size validation;mkfs.gfs2 mkfs; +6;mkfs.at:34;Locking protocols;mkfs.gfs2 mkfs; +7;mkfs.at:40;Valid block sizes 512-4096;mkfs.gfs2 mkfs; +8;mkfs.at:48;Max. blocks, min. block size;mkfs.gfs2 mkfs; +9;mkfs.at:53;Max. blocks, max. block size;mkfs.gfs2 mkfs; +10;mkfs.at:58;Max. resource group size;mkfs.gfs2 mkfs; +11;mkfs.at:63;Min. resource group size;mkfs.gfs2 mkfs; +12;mkfs.at:68;Max. resource group size, min. block size;mkfs.gfs2 mkfs; +13;mkfs.at:73;Max. journal size;mkfs.gfs2 mkfs; +14;mkfs.at:78;Min. journal size;mkfs.gfs2 mkfs; +15;mkfs.at:85;Max. quota change file size;mkfs.gfs2 mkfs; +16;mkfs.at:90;Min. quota change file size;mkfs.gfs2 mkfs; +17;mkfs.at:95;Lock table validation;mkfs.gfs2 mkfs; +18;mkfs.at:114;Device i/o limits handling;mkfs.gfs2 mkfs; +19;mkfs.at:125;Resource group alignment;mkfs.gfs2 mkfs; +20;mkfs.at:134;Values of rg_skip;mkfs.gfs2 mkfs; +21;mkfs.at:150;Values of rg_data0, rg_data, rg_bitbytes;mkfs.gfs2 mkfs; +22;mkfs.at:166;Small filesystems;mkfs.gfs2 mkfs; +23;fsck.at:4;Conflicting options;fsck.gfs2 fsck; +24;fsck.at:15;Fix invalid block sizes;fsck.gfs2 fsck; +25;fsck.at:24;Fix invalid goal blocks;fsck.gfs2 fsck; +26;fsck.at:29;Fix bad resource group #0;fsck.gfs2 fsck; +27;fsck.at:34;Fix bad resource group #1;fsck.gfs2 fsck; +28;fsck.at:44;Fix bad rindex entry #1;fsck.gfs2 fsck; +29;fsck.at:49;Rebuild bad journal;fsck.gfs2 fsck; +30;fsck.at:58;gfs2 format versions;fsck.gfs2 fsck; +31;edit.at:4;Save/restoremeta, defaults;gfs2_edit edit; +32;edit.at:17;Save/restoremeta, no compression;gfs2_edit edit; +33;edit.at:27;Save/restoremeta, min. block size;gfs2_edit edit; +34;edit.at:37;Save/restoremeta, 4 journals;gfs2_edit edit; +35;edit.at:47;Save/restoremeta, min. block size, 4 journals;gfs2_edit edit; +36;edit.at:57;Save metadata to /dev/null;gfs2_edit edit; +37;libgfs2.at:3;meta.c;libgfs2; +38;libgfs2.at:7;rgrp.c;libgfs2; +" +# List of the all the test groups. +at_groups_all=`$as_echo "$at_help_all" | sed 's/;.*//'` + +# at_fn_validate_ranges NAME... +# ----------------------------- +# Validate and normalize the test group number contained in each variable +# NAME. Leading zeroes are treated as decimal. +at_fn_validate_ranges () +{ + for at_grp + do + eval at_value=\$$at_grp + if test $at_value -lt 1 || test $at_value -gt 38; then + $as_echo "invalid test group: $at_value" >&2 + exit 1 + fi + case $at_value in + 0*) # We want to treat leading 0 as decimal, like expr and test, but + # AS_VAR_ARITH treats it as octal if it uses $(( )). + # With XSI shells, ${at_value#${at_value%%[1-9]*}} avoids the + # expr fork, but it is not worth the effort to determine if the + # shell supports XSI when the user can just avoid leading 0. + eval $at_grp='`expr $at_value + 0`' ;; + esac + done +} + +at_prev= +for at_option +do + # If the previous option needs an argument, assign it. + if test -n "$at_prev"; then + at_option=$at_prev=$at_option + at_prev= + fi + + case $at_option in + *=?*) at_optarg=`expr "X$at_option" : '[^=]*=\(.*\)'` ;; + *) at_optarg= ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $at_option in + --help | -h ) + at_help_p=: + ;; + + --list | -l ) + at_list_p=: + ;; + + --version | -V ) + at_version_p=: + ;; + + --clean | -c ) + at_clean=: + ;; + + --color ) + at_color=always + ;; + --color=* ) + case $at_optarg in + no | never | none) at_color=never ;; + auto | tty | if-tty) at_color=auto ;; + always | yes | force) at_color=always ;; + *) at_optname=`echo " $at_option" | sed 's/^ //; s/=.*//'` + as_fn_error $? "unrecognized argument to $at_optname: $at_optarg" ;; + esac + ;; + + --debug | -d ) + at_debug_p=: + ;; + + --errexit | -e ) + at_debug_p=: + at_errexit_p=: + ;; + + --verbose | -v ) + at_verbose=; at_quiet=: + ;; + + --trace | -x ) + at_traceon='set -x' + at_trace_echo=echo + at_check_filter_trace=at_fn_filter_trace + ;; + + [0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9]) + at_fn_validate_ranges at_option + as_fn_append at_groups "$at_option$as_nl" + ;; + + # Ranges + [0-9]- | [0-9][0-9]- | [0-9][0-9][0-9]- | [0-9][0-9][0-9][0-9]-) + at_range_start=`echo $at_option |tr -d X-` + at_fn_validate_ranges at_range_start + at_range=`$as_echo "$at_groups_all" | \ + sed -ne '/^'$at_range_start'$/,$p'` + as_fn_append at_groups "$at_range$as_nl" + ;; + + -[0-9] | -[0-9][0-9] | -[0-9][0-9][0-9] | -[0-9][0-9][0-9][0-9]) + at_range_end=`echo $at_option |tr -d X-` + at_fn_validate_ranges at_range_end + at_range=`$as_echo "$at_groups_all" | \ + sed -ne '1,/^'$at_range_end'$/p'` + as_fn_append at_groups "$at_range$as_nl" + ;; + + [0-9]-[0-9] | [0-9]-[0-9][0-9] | [0-9]-[0-9][0-9][0-9] | \ + [0-9]-[0-9][0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9] | \ + [0-9][0-9]-[0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9][0-9][0-9] | \ + [0-9][0-9][0-9]-[0-9][0-9][0-9] | \ + [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] | \ + [0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] ) + at_range_start=`expr $at_option : '\(.*\)-'` + at_range_end=`expr $at_option : '.*-\(.*\)'` + if test $at_range_start -gt $at_range_end; then + at_tmp=$at_range_end + at_range_end=$at_range_start + at_range_start=$at_tmp + fi + at_fn_validate_ranges at_range_start at_range_end + at_range=`$as_echo "$at_groups_all" | \ + sed -ne '/^'$at_range_start'$/,/^'$at_range_end'$/p'` + as_fn_append at_groups "$at_range$as_nl" + ;; + + # Directory selection. + --directory | -C ) + at_prev=--directory + ;; + --directory=* ) + at_change_dir=: + at_dir=$at_optarg + if test x- = "x$at_dir" ; then + at_dir=./- + fi + ;; + + # Parallel execution. + --jobs | -j ) + at_jobs=0 + ;; + --jobs=* | -j[0-9]* ) + if test -n "$at_optarg"; then + at_jobs=$at_optarg + else + at_jobs=`expr X$at_option : 'X-j\(.*\)'` + fi + case $at_jobs in *[!0-9]*) + at_optname=`echo " $at_option" | sed 's/^ //; s/[0-9=].*//'` + as_fn_error $? "non-numeric argument to $at_optname: $at_jobs" ;; + esac + ;; + + # Keywords. + --keywords | -k ) + at_prev=--keywords + ;; + --keywords=* ) + at_groups_selected=$at_help_all + at_save_IFS=$IFS + IFS=, + set X $at_optarg + shift + IFS=$at_save_IFS + for at_keyword + do + at_invert= + case $at_keyword in + '!'*) + at_invert="-v" + at_keyword=`expr "X$at_keyword" : 'X!\(.*\)'` + ;; + esac + # It is on purpose that we match the test group titles too. + at_groups_selected=`$as_echo "$at_groups_selected" | + grep -i $at_invert "^[1-9][^;]*;.*[; ]$at_keyword[ ;]"` + done + # Smash the keywords. + at_groups_selected=`$as_echo "$at_groups_selected" | sed 's/;.*//'` + as_fn_append at_groups "$at_groups_selected$as_nl" + ;; + --recheck) + at_recheck=: + ;; + + *=*) + at_envvar=`expr "x$at_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + case $at_envvar in + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error $? "invalid variable name: \`$at_envvar'" ;; + esac + at_value=`$as_echo "$at_optarg" | sed "s/'/'\\\\\\\\''/g"` + # Export now, but save eval for later and for debug scripts. + export $at_envvar + as_fn_append at_debug_args " $at_envvar='$at_value'" + ;; + + *) $as_echo "$as_me: invalid option: $at_option" >&2 + $as_echo "Try \`$0 --help' for more information." >&2 + exit 1 + ;; + esac +done + +# Verify our last option didn't require an argument +if test -n "$at_prev"; then : + as_fn_error $? "\`$at_prev' requires an argument" +fi + +# The file containing the suite. +at_suite_log=$at_dir/$as_me.log + +# Selected test groups. +if test -z "$at_groups$at_recheck"; then + at_groups=$at_groups_all +else + if test -n "$at_recheck" && test -r "$at_suite_log"; then + at_oldfails=`sed -n ' + /^Failed tests:$/,/^Skipped tests:$/{ + s/^[ ]*\([1-9][0-9]*\):.*/\1/p + } + /^Unexpected passes:$/,/^## Detailed failed tests/{ + s/^[ ]*\([1-9][0-9]*\):.*/\1/p + } + /^## Detailed failed tests/q + ' "$at_suite_log"` + as_fn_append at_groups "$at_oldfails$as_nl" + fi + # Sort the tests, removing duplicates. + at_groups=`$as_echo "$at_groups" | sort -nu | sed '/^$/d'` +fi + +if test x"$at_color" = xalways \ + || { test x"$at_color" = xauto && test -t 1; }; then + at_red=`printf '\033[0;31m'` + at_grn=`printf '\033[0;32m'` + at_lgn=`printf '\033[1;32m'` + at_blu=`printf '\033[1;34m'` + at_std=`printf '\033[m'` +else + at_red= at_grn= at_lgn= at_blu= at_std= +fi + +# Help message. +if $at_help_p; then + cat <<_ATEOF || at_write_fail=1 +Usage: $0 [OPTION]... [VARIABLE=VALUE]... [TESTS] + +Run all the tests, or the selected TESTS, given by numeric ranges, and +save a detailed log file. Upon failure, create debugging scripts. + +Do not change environment variables directly. Instead, set them via +command line arguments. Set \`AUTOTEST_PATH' to select the executables +to exercise. Each relative directory is expanded as build and source +directories relative to the top level of this distribution. +E.g., from within the build directory /tmp/foo-1.0, invoking this: + + $ $0 AUTOTEST_PATH=bin + +is equivalent to the following, assuming the source directory is /src/foo-1.0: + + PATH=/tmp/foo-1.0/bin:/src/foo-1.0/bin:\$PATH $0 +_ATEOF +cat <<_ATEOF || at_write_fail=1 + +Operation modes: + -h, --help print the help message, then exit + -V, --version print version number, then exit + -c, --clean remove all the files this test suite might create and exit + -l, --list describes all the tests, or the selected TESTS +_ATEOF +cat <<_ATEOF || at_write_fail=1 + +Execution tuning: + -C, --directory=DIR + change to directory DIR before starting + --color[=never|auto|always] + disable colored test results, or enable even without terminal + -j, --jobs[=N] + Allow N jobs at once; infinite jobs with no arg (default 1) + -k, --keywords=KEYWORDS + select the tests matching all the comma-separated KEYWORDS + multiple \`-k' accumulate; prefixed \`!' negates a KEYWORD + --recheck select all tests that failed or passed unexpectedly last time + -e, --errexit abort as soon as a test fails; implies --debug + -v, --verbose force more detailed output + default for debugging scripts + -d, --debug inhibit clean up and top-level logging + default for debugging scripts + -x, --trace enable tests shell tracing +_ATEOF +cat <<_ATEOF || at_write_fail=1 + +Report bugs to . +_ATEOF + exit $at_write_fail +fi + +# List of tests. +if $at_list_p; then + cat <<_ATEOF || at_write_fail=1 +gfs2-utils 3.3.0.1.dev test suite test groups: + + NUM: FILE-NAME:LINE TEST-GROUP-NAME + KEYWORDS + +_ATEOF + # Pass an empty line as separator between selected groups and help. + $as_echo "$at_groups$as_nl$as_nl$at_help_all" | + awk 'NF == 1 && FS != ";" { + selected[$ 1] = 1 + next + } + /^$/ { FS = ";" } + NF > 0 { + if (selected[$ 1]) { + printf " %3d: %-18s %s\n", $ 1, $ 2, $ 3 + if ($ 4) { + lmax = 79 + indent = " " + line = indent + len = length (line) + n = split ($ 4, a, " ") + for (i = 1; i <= n; i++) { + l = length (a[i]) + 1 + if (i > 1 && len + l > lmax) { + print line + line = indent " " a[i] + len = length (line) + } else { + line = line " " a[i] + len += l + } + } + if (n) + print line + } + } + }' || at_write_fail=1 + exit $at_write_fail +fi +if $at_version_p; then + $as_echo "$as_me (gfs2-utils 3.3.0.1.dev)" && + cat <<\_ATEOF || at_write_fail=1 + +Copyright (C) 2012 Free Software Foundation, Inc. +This test suite is free software; the Free Software Foundation gives +unlimited permission to copy, distribute and modify it. +_ATEOF + exit $at_write_fail +fi + +# Should we print banners? Yes if more than one test is run. +case $at_groups in #( + *$as_nl* ) + at_print_banners=: ;; #( + * ) at_print_banners=false ;; +esac +# Text for banner N, set to a single space once printed. +# Banner 1. mkfs.at:2 +# Category starts at test group 1. +at_banner_text_1="mkfs.gfs2 tests" +# Banner 2. fsck.at:2 +# Category starts at test group 23. +at_banner_text_2="fsck.gfs2 tests" +# Banner 3. edit.at:2 +# Category starts at test group 31. +at_banner_text_3="gfs2_edit tests" +# Banner 4. libgfs2.at:1 +# Category starts at test group 37. +at_banner_text_4="libgfs2 unit tests" + +# Take any -C into account. +if $at_change_dir ; then + test x != "x$at_dir" && cd "$at_dir" \ + || as_fn_error $? "unable to change directory" + at_dir=`pwd` +fi + +# Load the config files for any default variable assignments. +for at_file in atconfig atlocal +do + test -r $at_file || continue + . ./$at_file || as_fn_error $? "invalid content: $at_file" +done + +# Autoconf <=2.59b set at_top_builddir instead of at_top_build_prefix: +: "${at_top_build_prefix=$at_top_builddir}" + +# Perform any assignments requested during argument parsing. +eval "$at_debug_args" + +# atconfig delivers names relative to the directory the test suite is +# in, but the groups themselves are run in testsuite-dir/group-dir. +if test -n "$at_top_srcdir"; then + builddir=../.. + for at_dir_var in srcdir top_srcdir top_build_prefix + do + eval at_val=\$at_$at_dir_var + case $at_val in + [\\/$]* | ?:[\\/]* ) at_prefix= ;; + *) at_prefix=../../ ;; + esac + eval "$at_dir_var=\$at_prefix\$at_val" + done +fi + +## -------------------- ## +## Directory structure. ## +## -------------------- ## + +# This is the set of directories and files used by this script +# (non-literals are capitalized): +# +# TESTSUITE - the testsuite +# TESTSUITE.log - summarizes the complete testsuite run +# TESTSUITE.dir/ - created during a run, remains after -d or failed test +# + at-groups/ - during a run: status of all groups in run +# | + NNN/ - during a run: meta-data about test group NNN +# | | + check-line - location (source file and line) of current AT_CHECK +# | | + status - exit status of current AT_CHECK +# | | + stdout - stdout of current AT_CHECK +# | | + stder1 - stderr, including trace +# | | + stderr - stderr, with trace filtered out +# | | + test-source - portion of testsuite that defines group +# | | + times - timestamps for computing duration +# | | + pass - created if group passed +# | | + xpass - created if group xpassed +# | | + fail - created if group failed +# | | + xfail - created if group xfailed +# | | + skip - created if group skipped +# + at-stop - during a run: end the run if this file exists +# + at-source-lines - during a run: cache of TESTSUITE line numbers for extraction +# + 0..NNN/ - created for each group NNN, remains after -d or failed test +# | + TESTSUITE.log - summarizes the group results +# | + ... - files created during the group + +# The directory the whole suite works in. +# Should be absolute to let the user `cd' at will. +at_suite_dir=$at_dir/$as_me.dir +# The file containing the suite ($at_dir might have changed since earlier). +at_suite_log=$at_dir/$as_me.log +# The directory containing helper files per test group. +at_helper_dir=$at_suite_dir/at-groups +# Stop file: if it exists, do not start new jobs. +at_stop_file=$at_suite_dir/at-stop +# The fifo used for the job dispatcher. +at_job_fifo=$at_suite_dir/at-job-fifo + +if $at_clean; then + test -d "$at_suite_dir" && + find "$at_suite_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \; + rm -f -r "$at_suite_dir" "$at_suite_log" + exit $? +fi + +# Don't take risks: use only absolute directories in PATH. +# +# For stand-alone test suites (ie. atconfig was not found), +# AUTOTEST_PATH is relative to `.'. +# +# For embedded test suites, AUTOTEST_PATH is relative to the top level +# of the package. Then expand it into build/src parts, since users +# may create executables in both places. +AUTOTEST_PATH=`$as_echo "$AUTOTEST_PATH" | sed "s|:|$PATH_SEPARATOR|g"` +at_path= +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $AUTOTEST_PATH $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -n "$at_path" && as_fn_append at_path $PATH_SEPARATOR +case $as_dir in + [\\/]* | ?:[\\/]* ) + as_fn_append at_path "$as_dir" + ;; + * ) + if test -z "$at_top_build_prefix"; then + # Stand-alone test suite. + as_fn_append at_path "$as_dir" + else + # Embedded test suite. + as_fn_append at_path "$at_top_build_prefix$as_dir$PATH_SEPARATOR" + as_fn_append at_path "$at_top_srcdir/$as_dir" + fi + ;; +esac + done +IFS=$as_save_IFS + + +# Now build and simplify PATH. +# +# There might be directories that don't exist, but don't redirect +# builtins' (eg., cd) stderr directly: Ultrix's sh hates that. +at_new_path= +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $at_path +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -d "$as_dir" || continue +case $as_dir in + [\\/]* | ?:[\\/]* ) ;; + * ) as_dir=`(cd "$as_dir" && pwd) 2>/dev/null` ;; +esac +case $PATH_SEPARATOR$at_new_path$PATH_SEPARATOR in + *$PATH_SEPARATOR$as_dir$PATH_SEPARATOR*) ;; + $PATH_SEPARATOR$PATH_SEPARATOR) at_new_path=$as_dir ;; + *) as_fn_append at_new_path "$PATH_SEPARATOR$as_dir" ;; +esac + done +IFS=$as_save_IFS + +PATH=$at_new_path +export PATH + +# Setting up the FDs. + + + +# 5 is the log file. Not to be overwritten if `-d'. +if $at_debug_p; then + at_suite_log=/dev/null +else + : >"$at_suite_log" +fi +exec 5>>"$at_suite_log" + +# Banners and logs. +$as_echo "## ---------------------------------- ## +## gfs2-utils 3.3.0.1.dev test suite. ## +## ---------------------------------- ##" +{ + $as_echo "## ---------------------------------- ## +## gfs2-utils 3.3.0.1.dev test suite. ## +## ---------------------------------- ##" + echo + + $as_echo "$as_me: command line was:" + $as_echo " \$ $0 $at_cli_args" + echo + + # If ChangeLog exists, list a few lines in case it might help determining + # the exact version. + if test -n "$at_top_srcdir" && test -f "$at_top_srcdir/ChangeLog"; then + $as_echo "## ---------- ## +## ChangeLog. ## +## ---------- ##" + echo + sed 's/^/| /;10q' "$at_top_srcdir/ChangeLog" + echo + fi + + { +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + $as_echo "PATH: $as_dir" + done +IFS=$as_save_IFS + +} + echo + + # Contents of the config files. + for at_file in atconfig atlocal + do + test -r $at_file || continue + $as_echo "$as_me: $at_file:" + sed 's/^/| /' $at_file + echo + done +} >&5 + + +## ------------------------- ## +## Autotest shell functions. ## +## ------------------------- ## + +# at_fn_banner NUMBER +# ------------------- +# Output banner NUMBER, provided the testsuite is running multiple groups and +# this particular banner has not yet been printed. +at_fn_banner () +{ + $at_print_banners || return 0 + eval at_banner_text=\$at_banner_text_$1 + test "x$at_banner_text" = "x " && return 0 + eval "at_banner_text_$1=\" \"" + if test -z "$at_banner_text"; then + $at_first || echo + else + $as_echo "$as_nl$at_banner_text$as_nl" + fi +} # at_fn_banner + +# at_fn_check_prepare_notrace REASON LINE +# --------------------------------------- +# Perform AT_CHECK preparations for the command at LINE for an untraceable +# command; REASON is the reason for disabling tracing. +at_fn_check_prepare_notrace () +{ + $at_trace_echo "Not enabling shell tracing (command contains $1)" + $as_echo "$2" >"$at_check_line_file" + at_check_trace=: at_check_filter=: + : >"$at_stdout"; : >"$at_stderr" +} + +# at_fn_check_prepare_trace LINE +# ------------------------------ +# Perform AT_CHECK preparations for the command at LINE for a traceable +# command. +at_fn_check_prepare_trace () +{ + $as_echo "$1" >"$at_check_line_file" + at_check_trace=$at_traceon at_check_filter=$at_check_filter_trace + : >"$at_stdout"; : >"$at_stderr" +} + +# at_fn_check_prepare_dynamic COMMAND LINE +# ---------------------------------------- +# Decide if COMMAND at LINE is traceable at runtime, and call the appropriate +# preparation function. +at_fn_check_prepare_dynamic () +{ + case $1 in + *$as_nl*) + at_fn_check_prepare_notrace 'an embedded newline' "$2" ;; + *) + at_fn_check_prepare_trace "$2" ;; + esac +} + +# at_fn_filter_trace +# ------------------ +# Remove the lines in the file "$at_stderr" generated by "set -x" and print +# them to stderr. +at_fn_filter_trace () +{ + mv "$at_stderr" "$at_stder1" + grep '^ *+' "$at_stder1" >&2 + grep -v '^ *+' "$at_stder1" >"$at_stderr" +} + +# at_fn_log_failure FILE-LIST +# --------------------------- +# Copy the files in the list on stdout with a "> " prefix, and exit the shell +# with a failure exit code. +at_fn_log_failure () +{ + for file + do $as_echo "$file:"; sed 's/^/> /' "$file"; done + echo 1 > "$at_status_file" + exit 1 +} + +# at_fn_check_skip EXIT-CODE LINE +# ------------------------------- +# Check whether EXIT-CODE is a special exit code (77 or 99), and if so exit +# the test group subshell with that same exit code. Use LINE in any report +# about test failure. +at_fn_check_skip () +{ + case $1 in + 99) echo 99 > "$at_status_file"; at_failed=: + $as_echo "$2: hard failure"; exit 99;; + 77) echo 77 > "$at_status_file"; exit 77;; + esac +} + +# at_fn_check_status EXPECTED EXIT-CODE LINE +# ------------------------------------------ +# Check whether EXIT-CODE is the EXPECTED exit code, and if so do nothing. +# Otherwise, if it is 77 or 99, exit the test group subshell with that same +# exit code; if it is anything else print an error message referring to LINE, +# and fail the test. +at_fn_check_status () +{ + case $2 in + $1 ) ;; + 77) echo 77 > "$at_status_file"; exit 77;; + 99) echo 99 > "$at_status_file"; at_failed=: + $as_echo "$3: hard failure"; exit 99;; + *) $as_echo "$3: exit code was $2, expected $1" + at_failed=:;; + esac +} + +# at_fn_diff_devnull FILE +# ----------------------- +# Emit a diff between /dev/null and FILE. Uses "test -s" to avoid useless diff +# invocations. +at_fn_diff_devnull () +{ + test -s "$1" || return 0 + $at_diff "$at_devnull" "$1" +} + +# at_fn_test NUMBER +# ----------------- +# Parse out test NUMBER from the tail of this file. +at_fn_test () +{ + eval at_sed=\$at_sed$1 + sed "$at_sed" "$at_myself" > "$at_test_source" +} + +# at_fn_create_debugging_script +# ----------------------------- +# Create the debugging script $at_group_dir/run which will reproduce the +# current test group. +at_fn_create_debugging_script () +{ + { + echo "#! /bin/sh" && + echo 'test "${ZSH_VERSION+set}" = set && alias -g '\''${1+"$@"}'\''='\''"$@"'\''' && + $as_echo "cd '$at_dir'" && + $as_echo "exec \${CONFIG_SHELL-$SHELL} \"$at_myself\" -v -d $at_debug_args $at_group \${1+\"\$@\"}" && + echo 'exit 1' + } >"$at_group_dir/run" && + chmod +x "$at_group_dir/run" +} + +## -------------------------------- ## +## End of autotest shell functions. ## +## -------------------------------- ## +{ + $as_echo "## ---------------- ## +## Tested programs. ## +## ---------------- ##" + echo +} >&5 + +# Report what programs are being tested. +for at_program in : $at_tested +do + test "$at_program" = : && continue + case $at_program in + [\\/]* | ?:[\\/]* ) $at_program_=$at_program ;; + * ) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -f "$as_dir/$at_program" && break + done +IFS=$as_save_IFS + + at_program_=$as_dir/$at_program ;; + esac + if test -f "$at_program_"; then + { + $as_echo "$at_srcdir/testsuite.at:48: $at_program_ --version" + "$at_program_" --version &5 2>&1 + else + as_fn_error $? "cannot find $at_program" "$LINENO" 5 + fi +done + +{ + $as_echo "## ------------------ ## +## Running the tests. ## +## ------------------ ##" +} >&5 + +at_start_date=`date` +at_start_time=`date +%s 2>/dev/null` +$as_echo "$as_me: starting at: $at_start_date" >&5 + +# Create the master directory if it doesn't already exist. +as_dir="$at_suite_dir"; as_fn_mkdir_p || + as_fn_error $? "cannot create \`$at_suite_dir'" "$LINENO" 5 + +# Can we diff with `/dev/null'? DU 5.0 refuses. +if diff /dev/null /dev/null >/dev/null 2>&1; then + at_devnull=/dev/null +else + at_devnull=$at_suite_dir/devnull + >"$at_devnull" +fi + +# Use `diff -u' when possible. +if at_diff=`diff -u "$at_devnull" "$at_devnull" 2>&1` && test -z "$at_diff" +then + at_diff='diff -u' +else + at_diff=diff +fi + +# Get the last needed group. +for at_group in : $at_groups; do :; done + +# Extract the start and end lines of each test group at the tail +# of this file +awk ' +BEGIN { FS="" } +/^#AT_START_/ { + start = NR +} +/^#AT_STOP_/ { + test = substr ($ 0, 10) + print "at_sed" test "=\"1," start "d;" (NR-1) "q\"" + if (test == "'"$at_group"'") exit +}' "$at_myself" > "$at_suite_dir/at-source-lines" && +. "$at_suite_dir/at-source-lines" || + as_fn_error $? "cannot create test line number cache" "$LINENO" 5 +rm -f "$at_suite_dir/at-source-lines" + +# Set number of jobs for `-j'; avoid more jobs than test groups. +set X $at_groups; shift; at_max_jobs=$# +if test $at_max_jobs -eq 0; then + at_jobs=1 +fi +if test $at_jobs -ne 1 && + { test $at_jobs -eq 0 || test $at_jobs -gt $at_max_jobs; }; then + at_jobs=$at_max_jobs +fi + +# If parallel mode, don't output banners, don't split summary lines. +if test $at_jobs -ne 1; then + at_print_banners=false + at_quiet=: +fi + +# Set up helper dirs. +rm -rf "$at_helper_dir" && +mkdir "$at_helper_dir" && +cd "$at_helper_dir" && +{ test -z "$at_groups" || mkdir $at_groups; } || +as_fn_error $? "testsuite directory setup failed" "$LINENO" 5 + +# Functions for running a test group. We leave the actual +# test group execution outside of a shell function in order +# to avoid hitting zsh 4.x exit status bugs. + +# at_fn_group_prepare +# ------------------- +# Prepare for running a test group. +at_fn_group_prepare () +{ + # The directory for additional per-group helper files. + at_job_dir=$at_helper_dir/$at_group + # The file containing the location of the last AT_CHECK. + at_check_line_file=$at_job_dir/check-line + # The file containing the exit status of the last command. + at_status_file=$at_job_dir/status + # The files containing the output of the tested commands. + at_stdout=$at_job_dir/stdout + at_stder1=$at_job_dir/stder1 + at_stderr=$at_job_dir/stderr + # The file containing the code for a test group. + at_test_source=$at_job_dir/test-source + # The file containing dates. + at_times_file=$at_job_dir/times + + # Be sure to come back to the top test directory. + cd "$at_suite_dir" + + # Clearly separate the test groups when verbose. + $at_first || $at_verbose echo + + at_group_normalized=$at_group + + eval 'while :; do + case $at_group_normalized in #( + '"$at_format"'*) break;; + esac + at_group_normalized=0$at_group_normalized + done' + + + # Create a fresh directory for the next test group, and enter. + # If one already exists, the user may have invoked ./run from + # within that directory; we remove the contents, but not the + # directory itself, so that we aren't pulling the rug out from + # under the shell's notion of the current directory. + at_group_dir=$at_suite_dir/$at_group_normalized + at_group_log=$at_group_dir/$as_me.log + if test -d "$at_group_dir"; then + find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx {} \; + rm -fr "$at_group_dir"/* "$at_group_dir"/.[!.] "$at_group_dir"/.??* +fi || + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: test directory for $at_group_normalized could not be cleaned" >&5 +$as_echo "$as_me: WARNING: test directory for $at_group_normalized could not be cleaned" >&2;} + # Be tolerant if the above `rm' was not able to remove the directory. + as_dir="$at_group_dir"; as_fn_mkdir_p + + echo 0 > "$at_status_file" + + # In verbose mode, append to the log file *and* show on + # the standard output; in quiet mode only write to the log. + if test -z "$at_verbose"; then + at_tee_pipe='tee -a "$at_group_log"' + else + at_tee_pipe='cat >> "$at_group_log"' + fi +} + +# at_fn_group_banner ORDINAL LINE DESC PAD [BANNER] +# ------------------------------------------------- +# Declare the test group ORDINAL, located at LINE with group description DESC, +# and residing under BANNER. Use PAD to align the status column. +at_fn_group_banner () +{ + at_setup_line="$2" + test -n "$5" && at_fn_banner $5 + at_desc="$3" + case $1 in + [0-9]) at_desc_line=" $1: ";; + [0-9][0-9]) at_desc_line=" $1: " ;; + *) at_desc_line="$1: " ;; + esac + as_fn_append at_desc_line "$3$4" + $at_quiet $as_echo_n "$at_desc_line" + echo "# -*- compilation -*-" >> "$at_group_log" +} + +# at_fn_group_postprocess +# ----------------------- +# Perform cleanup after running a test group. +at_fn_group_postprocess () +{ + # Be sure to come back to the suite directory, in particular + # since below we might `rm' the group directory we are in currently. + cd "$at_suite_dir" + + if test ! -f "$at_check_line_file"; then + sed "s/^ */$as_me: WARNING: /" <<_ATEOF + A failure happened in a test group before any test could be + run. This means that test suite is improperly designed. Please + report this failure to . +_ATEOF + $as_echo "$at_setup_line" >"$at_check_line_file" + at_status=99 + fi + $at_verbose $as_echo_n "$at_group. $at_setup_line: " + $as_echo_n "$at_group. $at_setup_line: " >> "$at_group_log" + case $at_xfail:$at_status in + yes:0) + at_msg="UNEXPECTED PASS" + at_res=xpass + at_errexit=$at_errexit_p + at_color=$at_red + ;; + no:0) + at_msg="ok" + at_res=pass + at_errexit=false + at_color=$at_grn + ;; + *:77) + at_msg='skipped ('`cat "$at_check_line_file"`')' + at_res=skip + at_errexit=false + at_color=$at_blu + ;; + no:* | *:99) + at_msg='FAILED ('`cat "$at_check_line_file"`')' + at_res=fail + at_errexit=$at_errexit_p + at_color=$at_red + ;; + yes:*) + at_msg='expected failure ('`cat "$at_check_line_file"`')' + at_res=xfail + at_errexit=false + at_color=$at_lgn + ;; + esac + echo "$at_res" > "$at_job_dir/$at_res" + # In parallel mode, output the summary line only afterwards. + if test $at_jobs -ne 1 && test -n "$at_verbose"; then + $as_echo "$at_desc_line $at_color$at_msg$at_std" + else + # Make sure there is a separator even with long titles. + $as_echo " $at_color$at_msg$at_std" + fi + at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg" + case $at_status in + 0|77) + # $at_times_file is only available if the group succeeded. + # We're not including the group log, so the success message + # is written in the global log separately. But we also + # write to the group log in case they're using -d. + if test -f "$at_times_file"; then + at_log_msg="$at_log_msg ("`sed 1d "$at_times_file"`')' + rm -f "$at_times_file" + fi + $as_echo "$at_log_msg" >> "$at_group_log" + $as_echo "$at_log_msg" >&5 + + # Cleanup the group directory, unless the user wants the files + # or the success was unexpected. + if $at_debug_p || test $at_res = xpass; then + at_fn_create_debugging_script + if test $at_res = xpass && $at_errexit; then + echo stop > "$at_stop_file" + fi + else + if test -d "$at_group_dir"; then + find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \; + rm -fr "$at_group_dir" + fi + rm -f "$at_test_source" + fi + ;; + *) + # Upon failure, include the log into the testsuite's global + # log. The failure message is written in the group log. It + # is later included in the global log. + $as_echo "$at_log_msg" >> "$at_group_log" + + # Upon failure, keep the group directory for autopsy, and create + # the debugging script. With -e, do not start any further tests. + at_fn_create_debugging_script + if $at_errexit; then + echo stop > "$at_stop_file" + fi + ;; + esac +} + + +## ------------ ## +## Driver loop. ## +## ------------ ## + + +if (set -m && set +m && set +b) >/dev/null 2>&1; then + set +b + at_job_control_on='set -m' at_job_control_off='set +m' at_job_group=- +else + at_job_control_on=: at_job_control_off=: at_job_group= +fi + +for at_signal in 1 2 15; do + trap 'set +x; set +e + $at_job_control_off + at_signal='"$at_signal"' + echo stop > "$at_stop_file" + trap "" $at_signal + at_pgids= + for at_pgid in `jobs -p 2>/dev/null`; do + at_pgids="$at_pgids $at_job_group$at_pgid" + done + test -z "$at_pgids" || kill -$at_signal $at_pgids 2>/dev/null + wait + if test "$at_jobs" -eq 1 || test -z "$at_verbose"; then + echo >&2 + fi + at_signame=`kill -l $at_signal 2>&1 || echo $at_signal` + set x $at_signame + test 1 -gt 2 && at_signame=$at_signal + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: caught signal $at_signame, bailing out" >&5 +$as_echo "$as_me: WARNING: caught signal $at_signame, bailing out" >&2;} + as_fn_arith 128 + $at_signal && exit_status=$as_val + as_fn_exit $exit_status' $at_signal +done + +rm -f "$at_stop_file" +at_first=: + +if test $at_jobs -ne 1 && + rm -f "$at_job_fifo" && + test -n "$at_job_group" && + ( mkfifo "$at_job_fifo" && trap 'exit 1' PIPE STOP TSTP ) 2>/dev/null +then + # FIFO job dispatcher. + + trap 'at_pids= + for at_pid in `jobs -p`; do + at_pids="$at_pids $at_job_group$at_pid" + done + if test -n "$at_pids"; then + at_sig=TSTP + test "${TMOUT+set}" = set && at_sig=STOP + kill -$at_sig $at_pids 2>/dev/null + fi + kill -STOP $$ + test -z "$at_pids" || kill -CONT $at_pids 2>/dev/null' TSTP + + echo + # Turn jobs into a list of numbers, starting from 1. + at_joblist=`$as_echo "$at_groups" | sed -n 1,${at_jobs}p` + + set X $at_joblist + shift + for at_group in $at_groups; do + $at_job_control_on 2>/dev/null + ( + # Start one test group. + $at_job_control_off + if $at_first; then + exec 7>"$at_job_fifo" + else + exec 6<&- + fi + trap 'set +x; set +e + trap "" PIPE + echo stop > "$at_stop_file" + echo >&7 + as_fn_exit 141' PIPE + at_fn_group_prepare + if cd "$at_group_dir" && + at_fn_test $at_group && + . "$at_test_source" + then :; else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5 +$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;} + at_failed=: + fi + at_fn_group_postprocess + echo >&7 + ) & + $at_job_control_off + if $at_first; then + at_first=false + exec 6<"$at_job_fifo" 7>"$at_job_fifo" + fi + shift # Consume one token. + if test $# -gt 0; then :; else + read at_token <&6 || break + set x $* + fi + test -f "$at_stop_file" && break + done + exec 7>&- + # Read back the remaining ($at_jobs - 1) tokens. + set X $at_joblist + shift + if test $# -gt 0; then + shift + for at_job + do + read at_token + done <&6 + fi + exec 6<&- + wait +else + # Run serially, avoid forks and other potential surprises. + for at_group in $at_groups; do + at_fn_group_prepare + if cd "$at_group_dir" && + at_fn_test $at_group && + . "$at_test_source"; then :; else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5 +$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;} + at_failed=: + fi + at_fn_group_postprocess + test -f "$at_stop_file" && break + at_first=false + done +fi + +# Wrap up the test suite with summary statistics. +cd "$at_helper_dir" + +# Use ?..???? when the list must remain sorted, the faster * otherwise. +at_pass_list=`for f in */pass; do echo $f; done | sed '/\*/d; s,/pass,,'` +at_skip_list=`for f in */skip; do echo $f; done | sed '/\*/d; s,/skip,,'` +at_xfail_list=`for f in */xfail; do echo $f; done | sed '/\*/d; s,/xfail,,'` +at_xpass_list=`for f in ?/xpass ??/xpass ???/xpass ????/xpass; do + echo $f; done | sed '/?/d; s,/xpass,,'` +at_fail_list=`for f in ?/fail ??/fail ???/fail ????/fail; do + echo $f; done | sed '/?/d; s,/fail,,'` + +set X $at_pass_list $at_xpass_list $at_xfail_list $at_fail_list $at_skip_list +shift; at_group_count=$# +set X $at_xpass_list; shift; at_xpass_count=$#; at_xpass_list=$* +set X $at_xfail_list; shift; at_xfail_count=$# +set X $at_fail_list; shift; at_fail_count=$#; at_fail_list=$* +set X $at_skip_list; shift; at_skip_count=$# + +as_fn_arith $at_group_count - $at_skip_count && at_run_count=$as_val +as_fn_arith $at_xpass_count + $at_fail_count && at_unexpected_count=$as_val +as_fn_arith $at_xfail_count + $at_fail_count && at_total_fail_count=$as_val + +# Back to the top directory. +cd "$at_dir" +rm -rf "$at_helper_dir" + +# Compute the duration of the suite. +at_stop_date=`date` +at_stop_time=`date +%s 2>/dev/null` +$as_echo "$as_me: ending at: $at_stop_date" >&5 +case $at_start_time,$at_stop_time in + [0-9]*,[0-9]*) + as_fn_arith $at_stop_time - $at_start_time && at_duration_s=$as_val + as_fn_arith $at_duration_s / 60 && at_duration_m=$as_val + as_fn_arith $at_duration_m / 60 && at_duration_h=$as_val + as_fn_arith $at_duration_s % 60 && at_duration_s=$as_val + as_fn_arith $at_duration_m % 60 && at_duration_m=$as_val + at_duration="${at_duration_h}h ${at_duration_m}m ${at_duration_s}s" + $as_echo "$as_me: test suite duration: $at_duration" >&5 + ;; +esac + +echo +$as_echo "## ------------- ## +## Test results. ## +## ------------- ##" +echo +{ + echo + $as_echo "## ------------- ## +## Test results. ## +## ------------- ##" + echo +} >&5 + +if test $at_run_count = 1; then + at_result="1 test" + at_were=was +else + at_result="$at_run_count tests" + at_were=were +fi +if $at_errexit_p && test $at_unexpected_count != 0; then + if test $at_xpass_count = 1; then + at_result="$at_result $at_were run, one passed" + else + at_result="$at_result $at_were run, one failed" + fi + at_result="$at_result unexpectedly and inhibited subsequent tests." + at_color=$at_red +else + # Don't you just love exponential explosion of the number of cases? + at_color=$at_red + case $at_xpass_count:$at_fail_count:$at_xfail_count in + # So far, so good. + 0:0:0) at_result="$at_result $at_were successful." at_color=$at_grn ;; + 0:0:*) at_result="$at_result behaved as expected." at_color=$at_lgn ;; + + # Some unexpected failures + 0:*:0) at_result="$at_result $at_were run, +$at_fail_count failed unexpectedly." ;; + + # Some failures, both expected and unexpected + 0:*:1) at_result="$at_result $at_were run, +$at_total_fail_count failed ($at_xfail_count expected failure)." ;; + 0:*:*) at_result="$at_result $at_were run, +$at_total_fail_count failed ($at_xfail_count expected failures)." ;; + + # No unexpected failures, but some xpasses + *:0:*) at_result="$at_result $at_were run, +$at_xpass_count passed unexpectedly." ;; + + # No expected failures, but failures and xpasses + *:1:0) at_result="$at_result $at_were run, +$at_unexpected_count did not behave as expected ($at_fail_count unexpected failure)." ;; + *:*:0) at_result="$at_result $at_were run, +$at_unexpected_count did not behave as expected ($at_fail_count unexpected failures)." ;; + + # All of them. + *:*:1) at_result="$at_result $at_were run, +$at_xpass_count passed unexpectedly, +$at_total_fail_count failed ($at_xfail_count expected failure)." ;; + *:*:*) at_result="$at_result $at_were run, +$at_xpass_count passed unexpectedly, +$at_total_fail_count failed ($at_xfail_count expected failures)." ;; + esac + + if test $at_skip_count = 0 && test $at_run_count -gt 1; then + at_result="All $at_result" + fi +fi + +# Now put skips in the mix. +case $at_skip_count in + 0) ;; + 1) at_result="$at_result +1 test was skipped." ;; + *) at_result="$at_result +$at_skip_count tests were skipped." ;; +esac + +if test $at_unexpected_count = 0; then + echo "$at_color$at_result$at_std" + echo "$at_result" >&5 +else + echo "${at_color}ERROR: $at_result$at_std" >&2 + echo "ERROR: $at_result" >&5 + { + echo + $as_echo "## ------------------------ ## +## Summary of the failures. ## +## ------------------------ ##" + + # Summary of failed and skipped tests. + if test $at_fail_count != 0; then + echo "Failed tests:" + $SHELL "$at_myself" $at_fail_list --list + echo + fi + if test $at_skip_count != 0; then + echo "Skipped tests:" + $SHELL "$at_myself" $at_skip_list --list + echo + fi + if test $at_xpass_count != 0; then + echo "Unexpected passes:" + $SHELL "$at_myself" $at_xpass_list --list + echo + fi + if test $at_fail_count != 0; then + $as_echo "## ---------------------- ## +## Detailed failed tests. ## +## ---------------------- ##" + echo + for at_group in $at_fail_list + do + at_group_normalized=$at_group + + eval 'while :; do + case $at_group_normalized in #( + '"$at_format"'*) break;; + esac + at_group_normalized=0$at_group_normalized + done' + + cat "$at_suite_dir/$at_group_normalized/$as_me.log" + echo + done + echo + fi + if test -n "$at_top_srcdir"; then + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## ${at_top_build_prefix}config.log ## +_ASBOX + sed 's/^/| /' ${at_top_build_prefix}config.log + echo + fi + } >&5 + + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## $as_me.log was created. ## +_ASBOX + + echo + if $at_debug_p; then + at_msg='per-test log files' + else + at_msg="\`${at_testdir+${at_testdir}/}$as_me.log'" + fi + $as_echo "Please send $at_msg and all information you think might help: + + To: + Subject: [gfs2-utils 3.3.0.1.dev] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} + +You may investigate any problem if you feel able to do so, in which +case the test suite provides a good starting point. Its output may +be found below \`${at_testdir+${at_testdir}/}$as_me.dir'. +" + exit 1 +fi + +exit 0 + +## ------------- ## +## Actual tests. ## +## ------------- ## +#AT_START_1 +at_fn_group_banner 1 'mkfs.at:4' \ + "Locking protocol validation" " " 1 +at_xfail=no +( + $as_echo "1. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:6: \$GFS_MKFS -p badprotocol \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p badprotocol $GFS_TGT" "mkfs.at:6" +( $at_check_trace; $GFS_MKFS -p badprotocol $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:6" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_1 +#AT_START_2 +at_fn_group_banner 2 'mkfs.at:9' \ + "Resource group size validation" " " 1 +at_xfail=no +( + $as_echo "2. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:11: \$GFS_MKFS -p lock_nolock -r 31 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 31 $GFS_TGT" "mkfs.at:11" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 31 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:11" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:12: \$GFS_MKFS -p lock_nolock -r 2049 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2049 $GFS_TGT" "mkfs.at:12" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2049 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:12" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_2 +#AT_START_3 +at_fn_group_banner 3 'mkfs.at:15' \ + "Journal size validation" " " 1 +at_xfail=no +( + $as_echo "3. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:17: \$GFS_MKFS -p lock_nolock -J 7 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -J 7 $GFS_TGT" "mkfs.at:17" +( $at_check_trace; $GFS_MKFS -p lock_nolock -J 7 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:17" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:18: \$GFS_MKFS -p lock_nolock -J 1025 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -J 1025 $GFS_TGT" "mkfs.at:18" +( $at_check_trace; $GFS_MKFS -p lock_nolock -J 1025 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:18" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_3 +#AT_START_4 +at_fn_group_banner 4 'mkfs.at:21' \ + "Block count validation" " " 1 +at_xfail=no +( + $as_echo "4. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:23: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:23" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:23" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:23" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:23" +{ set +x +$as_echo "$at_srcdir/mkfs.at:24: \$GFS_MKFS -p lock_nolock -b 512 \$GFS_TGT \$((\$(gfs_max_blocks 512)+1))" +at_fn_check_prepare_notrace 'a $(...) command substitution' "mkfs.at:24" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 512 $GFS_TGT $(($(gfs_max_blocks 512)+1)) +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:24" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:25: \$GFS_MKFS -p lock_nolock -b 4096 \$GFS_TGT \$((\$(gfs_max_blocks 4096)+1))" +at_fn_check_prepare_notrace 'a $(...) command substitution' "mkfs.at:25" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT $(($(gfs_max_blocks 4096)+1)) +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:25" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_4 +#AT_START_5 +at_fn_group_banner 5 'mkfs.at:28' \ + "Quota change file size validation" " " 1 +at_xfail=no +( + $as_echo "5. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:30: \$GFS_MKFS -p lock_nolock -c 0 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -c 0 $GFS_TGT" "mkfs.at:30" +( $at_check_trace; $GFS_MKFS -p lock_nolock -c 0 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:30" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:31: \$GFS_MKFS -p lock_nolock -c 65 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -c 65 $GFS_TGT" "mkfs.at:31" +( $at_check_trace; $GFS_MKFS -p lock_nolock -c 65 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:31" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_5 +#AT_START_6 +at_fn_group_banner 6 'mkfs.at:34' \ + "Locking protocols" " " 1 +at_xfail=no +( + $as_echo "6. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:36: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:36" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:36" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:36" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:36" +{ set +x +$as_echo "$at_srcdir/mkfs.at:36: \$GFS_MKFS -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock $GFS_TGT" "mkfs.at:36" +( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:36" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:36: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:36" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:36" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:37: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:37" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:37" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:37" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:37" +{ set +x +$as_echo "$at_srcdir/mkfs.at:37: \$GFS_MKFS -p lock_dlm -t foo:bar \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t foo:bar $GFS_TGT" "mkfs.at:37" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t foo:bar $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:37" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:37: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:37" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:37" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_6 +#AT_START_7 +at_fn_group_banner 7 'mkfs.at:40' \ + "Valid block sizes 512-4096" " " 1 +at_xfail=no +( + $as_echo "7. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:42: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:42" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:42" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:42" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:42" +{ set +x +$as_echo "$at_srcdir/mkfs.at:42: \$GFS_MKFS -p lock_nolock -b 512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 512 $GFS_TGT" "mkfs.at:42" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:42" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:42: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:42" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:42" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:43: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:43" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:43" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:43" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:43" +{ set +x +$as_echo "$at_srcdir/mkfs.at:43: \$GFS_MKFS -p lock_nolock -b 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT" "mkfs.at:43" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:43" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:43: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:43" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:43" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:44: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:44" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:44" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:44" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:44" +{ set +x +$as_echo "$at_srcdir/mkfs.at:44: \$GFS_MKFS -p lock_nolock -b 2048 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 2048 $GFS_TGT" "mkfs.at:44" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 2048 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:44" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:44: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:44" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:44" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:45: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:45" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:45" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:45" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:45" +{ set +x +$as_echo "$at_srcdir/mkfs.at:45: \$GFS_MKFS -p lock_nolock -b 4096 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT" "mkfs.at:45" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:45" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:45: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:45" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:45" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_7 +#AT_START_8 +at_fn_group_banner 8 'mkfs.at:48' \ + "Max. blocks, min. block size" " " 1 +at_xfail=no +( + $as_echo "8. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:50: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:50" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:50" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:50" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:50" +{ set +x +$as_echo "$at_srcdir/mkfs.at:50: \$GFS_MKFS -p lock_nolock -b 512 \$GFS_TGT \$(gfs_max_blocks 512)" +at_fn_check_prepare_notrace 'a $(...) command substitution' "mkfs.at:50" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 512 $GFS_TGT $(gfs_max_blocks 512) +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:50" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:50: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:50" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:50" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_8 +#AT_START_9 +at_fn_group_banner 9 'mkfs.at:53' \ + "Max. blocks, max. block size" " " 1 +at_xfail=no +( + $as_echo "9. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:55: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:55" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:55" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:55" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:55" +{ set +x +$as_echo "$at_srcdir/mkfs.at:55: \$GFS_MKFS -p lock_nolock -b 4096 \$GFS_TGT \$(gfs_max_blocks 4096)" +at_fn_check_prepare_notrace 'a $(...) command substitution' "mkfs.at:55" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT $(gfs_max_blocks 4096) +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:55" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:55: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:55" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:55" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_9 +#AT_START_10 +at_fn_group_banner 10 'mkfs.at:58' \ + "Max. resource group size" " " 1 +at_xfail=no +( + $as_echo "10. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:60: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:60" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:60" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:60" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:60" +{ set +x +$as_echo "$at_srcdir/mkfs.at:60: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:60" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:60" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:60: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:60" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:60" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_10 +#AT_START_11 +at_fn_group_banner 11 'mkfs.at:63' \ + "Min. resource group size" " " 1 +at_xfail=no +( + $as_echo "11. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:65: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:65" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:65" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:65" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:65" +{ set +x +$as_echo "$at_srcdir/mkfs.at:65: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:65" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:65" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:65: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:65" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:65" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_11 +#AT_START_12 +at_fn_group_banner 12 'mkfs.at:68' \ + "Max. resource group size, min. block size" " " 1 +at_xfail=no +( + $as_echo "12. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:70: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:70" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:70" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:70" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:70" +{ set +x +$as_echo "$at_srcdir/mkfs.at:70: \$GFS_MKFS -p lock_nolock -r 2048 -b 512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 -b 512 $GFS_TGT" "mkfs.at:70" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 -b 512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:70" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:70: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:70" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:70" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_12 +#AT_START_13 +at_fn_group_banner 13 'mkfs.at:73' \ + "Max. journal size" " " 1 +at_xfail=no +( + $as_echo "13. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:75: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:75" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:75" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:75" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:75" +{ set +x +$as_echo "$at_srcdir/mkfs.at:75: \$GFS_MKFS -p lock_nolock -J 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -J 1024 $GFS_TGT" "mkfs.at:75" +( $at_check_trace; $GFS_MKFS -p lock_nolock -J 1024 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:75" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:75: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:75" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:75" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_13 +#AT_START_14 +at_fn_group_banner 14 'mkfs.at:78' \ + "Min. journal size" " " 1 +at_xfail=no +( + $as_echo "14. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:80: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:80" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:80" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:80" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:80" +{ set +x +$as_echo "$at_srcdir/mkfs.at:80: \$GFS_MKFS -p lock_nolock -J 8 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -J 8 $GFS_TGT" "mkfs.at:80" +( $at_check_trace; $GFS_MKFS -p lock_nolock -J 8 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:80" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:80: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:80" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:80" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:81: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:81" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:81" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:81" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:81" +{ set +x +$as_echo "$at_srcdir/mkfs.at:81: \$GFS_MKFS -p lock_nolock -b 1024 \$GFS_TGT 511996" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT 511996" "mkfs.at:81" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT 511996 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:81" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:81: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:81" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:81" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:82: gfs2_edit -p journal0 field di_size \$GFS_TGT | tr -d '\\n'" +at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:82" +( $at_check_trace; gfs2_edit -p journal0 field di_size $GFS_TGT | tr -d '\n' +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo >>"$at_stdout"; $as_echo "8388608" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:82" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_14 +#AT_START_15 +at_fn_group_banner 15 'mkfs.at:85' \ + "Max. quota change file size" " " 1 +at_xfail=no +( + $as_echo "15. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:87: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:87" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:87" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:87" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:87" +{ set +x +$as_echo "$at_srcdir/mkfs.at:87: \$GFS_MKFS -p lock_nolock -c 64 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -c 64 $GFS_TGT" "mkfs.at:87" +( $at_check_trace; $GFS_MKFS -p lock_nolock -c 64 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:87" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:87: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:87" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:87" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_15 +#AT_START_16 +at_fn_group_banner 16 'mkfs.at:90' \ + "Min. quota change file size" " " 1 +at_xfail=no +( + $as_echo "16. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:92: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:92" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:92" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:92" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:92" +{ set +x +$as_echo "$at_srcdir/mkfs.at:92: \$GFS_MKFS -p lock_nolock -c 1 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -c 1 $GFS_TGT" "mkfs.at:92" +( $at_check_trace; $GFS_MKFS -p lock_nolock -c 1 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:92" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:92: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:92" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:92" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_16 +#AT_START_17 +at_fn_group_banner 17 'mkfs.at:95' \ + "Lock table validation" " " 1 +at_xfail=no +( + $as_echo "17. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:97: \$GFS_MKFS -p lock_nolock -t \"\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"\" $GFS_TGT" "mkfs.at:97" +( $at_check_trace; $GFS_MKFS -p lock_nolock -t "" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:97" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:98: \$GFS_MKFS -p lock_nolock -t \"123456789012345678901234567890123:12345678\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"123456789012345678901234567890123:12345678\" $GFS_TGT" "mkfs.at:98" +( $at_check_trace; $GFS_MKFS -p lock_nolock -t "123456789012345678901234567890123:12345678" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:98" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:99: \$GFS_MKFS -p lock_nolock -t \"12345678901234567:1234567890123456789012345678901\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"12345678901234567:1234567890123456789012345678901\" $GFS_TGT" "mkfs.at:99" +( $at_check_trace; $GFS_MKFS -p lock_nolock -t "12345678901234567:1234567890123456789012345678901" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:99" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:100: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:100" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:100" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:100" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:100" +{ set +x +$as_echo "$at_srcdir/mkfs.at:100: \$GFS_MKFS -p lock_nolock -t \"12345678901234567890123456789012:123456789012345678901234567890\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"12345678901234567890123456789012:123456789012345678901234567890\" $GFS_TGT" "mkfs.at:100" +( $at_check_trace; $GFS_MKFS -p lock_nolock -t "12345678901234567890123456789012:123456789012345678901234567890" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:100" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:100: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:100" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:100" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:101: \$GFS_MKFS -p lock_dlm -t \"\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"\" $GFS_TGT" "mkfs.at:101" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t "" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:101" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:102: \$GFS_MKFS -p lock_dlm -t \"quite_long_cluster_name_test_here:intec34p\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"quite_long_cluster_name_test_here:intec34p\" $GFS_TGT" "mkfs.at:102" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t "quite_long_cluster_name_test_here:intec34p" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:102" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:103: \$GFS_MKFS -p lock_dlm -t \"financial_cluster:this_time_we_test_fs_naming_len\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"financial_cluster:this_time_we_test_fs_naming_len\" $GFS_TGT" "mkfs.at:103" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t "financial_cluster:this_time_we_test_fs_naming_len" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:103" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:104: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:104" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:104" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:104" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:104" +{ set +x +$as_echo "$at_srcdir/mkfs.at:104: \$GFS_MKFS -p lock_dlm -t \"a_really_long_named_cluster_here:concurrently_lets_check_fs_len\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"a_really_long_named_cluster_here:concurrently_lets_check_fs_len\" $GFS_TGT" "mkfs.at:104" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t "a_really_long_named_cluster_here:concurrently_lets_check_fs_len" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:104" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:104: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:104" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:104" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_17 +#AT_START_18 +at_fn_group_banner 18 'mkfs.at:114' \ + "Device i/o limits handling" " " 1 +at_xfail=no +( + $as_echo "18. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:116: \$GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 $GFS_TGT" "mkfs.at:116" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:116" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:117: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 $GFS_TGT" "mkfs.at:117" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:117" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:118: gfs2_edit -p sb field sb_bsize \$GFS_TGT | tr -d '\\n' " +at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:118" +( $at_check_trace; gfs2_edit -p sb field sb_bsize $GFS_TGT | tr -d '\n' +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo >>"$at_stdout"; $as_echo "4096" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:118" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:119: \$GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 $GFS_TGT" "mkfs.at:119" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:119" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:120: \$GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 $GFS_TGT" "mkfs.at:120" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "Warning: device is not properly aligned. This may harm performance. +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:120" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:122: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 $GFS_TGT" "mkfs.at:122" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:122" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_18 +#AT_START_19 +at_fn_group_banner 19 'mkfs.at:125' \ + "Resource group alignment" " " 1 +at_xfail=no +( + $as_echo "19. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:127: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:127" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:127" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Check rgrp alignment to minimum_io_size: 65536 / 4096 == 16 +{ set +x +$as_echo "$at_srcdir/mkfs.at:129: gfs2_edit -p rindex \$GFS_TGT | grep ri_addr | awk '{print \$2, \$2 % 16; if (\$2 % 16 != 0) { exit 1 }}'" +at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:129" +( $at_check_trace; gfs2_edit -p rindex $GFS_TGT | grep ri_addr | awk '{print $2, $2 % 16; if ($2 % 16 != 0) { exit 1 }}' +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:129" +$at_failed && at_fn_log_failure +$at_traceon; } + +# rhbz#1698858 +{ set +x +$as_echo "$at_srcdir/mkfs.at:131: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 $GFS_TGT" "mkfs.at:131" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:131" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_19 +#AT_START_20 +at_fn_group_banner 20 'mkfs.at:134' \ + "Values of rg_skip" " " 1 +at_xfail=no +( + $as_echo "20. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:136: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:136" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:136" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:137: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:137" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:137" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:138: \$GFS_MKFS -p lock_nolock -r 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT" "mkfs.at:138" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:138" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:139: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:139" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:139" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:140: \$GFS_MKFS -p lock_nolock -r 512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 512 $GFS_TGT" "mkfs.at:140" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:140" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:141: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:141" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:141" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:142: \$GFS_MKFS -p lock_nolock -r 219 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 219 $GFS_TGT" "mkfs.at:142" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 219 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:142" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:143: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:143" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:143" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:144: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:144" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:144" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:145: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:145" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:145" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:146: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:146" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:146" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:147: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:147" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:147" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_20 +#AT_START_21 +at_fn_group_banner 21 'mkfs.at:150' \ + "Values of rg_data0, rg_data, rg_bitbytes" " " 1 +at_xfail=no +( + $as_echo "21. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:152: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:152" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:152" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:153: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:153" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:153" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:154: \$GFS_MKFS -p lock_nolock -r 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT" "mkfs.at:154" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:154" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:155: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:155" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:155" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:156: \$GFS_MKFS -p lock_nolock -r 512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 512 $GFS_TGT" "mkfs.at:156" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:156" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:157: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:157" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:157" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:158: \$GFS_MKFS -p lock_nolock -r 219 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 219 $GFS_TGT" "mkfs.at:158" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 219 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:158" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:159: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:159" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:159" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:160: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:160" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:160" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:161: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:161" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:161" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:162: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:162" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:162" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:163: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:163" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:163" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_21 +#AT_START_22 +at_fn_group_banner 22 'mkfs.at:166' \ + "Small filesystems" " " 1 +at_xfail=no +( + $as_echo "22. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/mkfs.at:168: rm -f \$GFS_TGT && truncate -s 32M \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:168" +( $at_check_trace; rm -f $GFS_TGT && truncate -s 32M ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:168" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:168" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:168" +{ set +x +$as_echo "$at_srcdir/mkfs.at:169: \$GFS_MKFS -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock $GFS_TGT" "mkfs.at:169" +( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:169" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:170: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:170" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:170" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:171: rm -f \$GFS_TGT && truncate -s 64M \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:171" +( $at_check_trace; rm -f $GFS_TGT && truncate -s 64M ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:171" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:171" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:171" +{ set +x +$as_echo "$at_srcdir/mkfs.at:172: \$GFS_MKFS -p lock_nolock -j2 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -j2 $GFS_TGT" "mkfs.at:172" +( $at_check_trace; $GFS_MKFS -p lock_nolock -j2 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:172" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:173: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:173" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:173" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_22 +#AT_START_23 +at_fn_group_banner 23 'fsck.at:4' \ + "Conflicting options" " " 2 +at_xfail=no +( + $as_echo "23. $at_setup_line: testing $at_desc ..." + $at_traceon + + +# Error code 16 is FSCK_USAGE +{ set +x +$as_echo "$at_srcdir/fsck.at:7: fsck.gfs2 -y -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y -n $GFS_TGT" "fsck.at:7" +( $at_check_trace; fsck.gfs2 -y -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 16 $at_status "$at_srcdir/fsck.at:7" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:8: fsck.gfs2 -n -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n -y $GFS_TGT" "fsck.at:8" +( $at_check_trace; fsck.gfs2 -n -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 16 $at_status "$at_srcdir/fsck.at:8" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:9: fsck.gfs2 -n -p \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n -p $GFS_TGT" "fsck.at:9" +( $at_check_trace; fsck.gfs2 -n -p $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 16 $at_status "$at_srcdir/fsck.at:9" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:10: fsck.gfs2 -p -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -p -n $GFS_TGT" "fsck.at:10" +( $at_check_trace; fsck.gfs2 -p -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 16 $at_status "$at_srcdir/fsck.at:10" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:11: fsck.gfs2 -y -p \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y -p $GFS_TGT" "fsck.at:11" +( $at_check_trace; fsck.gfs2 -y -p $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 16 $at_status "$at_srcdir/fsck.at:11" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:12: fsck.gfs2 -p -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -p -y $GFS_TGT" "fsck.at:12" +( $at_check_trace; fsck.gfs2 -p -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 16 $at_status "$at_srcdir/fsck.at:12" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_23 +#AT_START_24 +at_fn_group_banner 24 'fsck.at:15' \ + "Fix invalid block sizes" " " 2 +at_xfail=no +( + $as_echo "24. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/fsck.at:17: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:17" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:17" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:17" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:17" +{ set +x +$as_echo "$at_srcdir/fsck.at:17: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:17" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:17" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:17: echo \"set sb { sb_bsize: 0 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:17" +( $at_check_trace; echo "set sb { sb_bsize: 0 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:17" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:17: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:17" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:17" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:17: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:17" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:17" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:18: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:18" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:18" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:18" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:18" +{ set +x +$as_echo "$at_srcdir/fsck.at:18: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:18" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:18" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:18: echo \"set sb { sb_bsize: 1 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:18" +( $at_check_trace; echo "set sb { sb_bsize: 1 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:18" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:18: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:18" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:18" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:18: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:18" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:18" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:19: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:19" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:19" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:19" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:19" +{ set +x +$as_echo "$at_srcdir/fsck.at:19: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:19" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:19" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:19: echo \"set sb { sb_bsize: 513 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:19" +( $at_check_trace; echo "set sb { sb_bsize: 513 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:19" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:19: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:19" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:19" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:19: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:19" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:19" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:20: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:20" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:20" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:20" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:20" +{ set +x +$as_echo "$at_srcdir/fsck.at:20: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:20" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:20" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:20: echo \"set sb { sb_bsize: 4095 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:20" +( $at_check_trace; echo "set sb { sb_bsize: 4095 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:20" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:20: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:20" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:20" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:20: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:20" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:20" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:21: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:21" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:21" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:21" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:21" +{ set +x +$as_echo "$at_srcdir/fsck.at:21: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:21" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:21" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:21: echo \"set sb { sb_bsize: 4097 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:21" +( $at_check_trace; echo "set sb { sb_bsize: 4097 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:21" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:21: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:21" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:21" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:21: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:21" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:21" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_24 +#AT_START_25 +at_fn_group_banner 25 'fsck.at:24' \ + "Fix invalid goal blocks" " " 2 +at_xfail=no +( + $as_echo "25. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/fsck.at:26: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:26" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:26" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:26" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:26" +{ set +x +$as_echo "$at_srcdir/fsck.at:26: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:26" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:26" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:26: echo \"set '/' { di_goal_meta: 0 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:26" +( $at_check_trace; echo "set '/' { di_goal_meta: 0 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:26" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:26: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:26" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:26" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:26: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:26" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:26" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_25 +#AT_START_26 +at_fn_group_banner 26 'fsck.at:29' \ + "Fix bad resource group #0" " " 2 +at_xfail=no +( + $as_echo "26. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/fsck.at:31: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:31" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:31" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:31" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:31" +{ set +x +$as_echo "$at_srcdir/fsck.at:31: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:31" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:31" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:31: nukerg -r 0 \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "nukerg -r 0 $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "fsck.at:31" +( $at_check_trace; nukerg -r 0 $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:31" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:31: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:31" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:31" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:31: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:31" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:31" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_26 +#AT_START_27 +at_fn_group_banner 27 'fsck.at:34' \ + "Fix bad resource group #1" " " 2 +at_xfail=no +( + $as_echo "27. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/fsck.at:36: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:36" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:36" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:36" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:36" +{ set +x +$as_echo "$at_srcdir/fsck.at:36: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:36" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:36" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:36: nukerg -r 1 \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "nukerg -r 1 $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "fsck.at:36" +( $at_check_trace; nukerg -r 1 $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:36" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:36: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:36" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:36" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:36: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:36" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:36" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_27 +#AT_START_28 +at_fn_group_banner 28 'fsck.at:44' \ + "Fix bad rindex entry #1" " " 2 +at_xfail=no +( + $as_echo "28. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/fsck.at:46: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:46" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:46" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:46" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:46" +{ set +x +$as_echo "$at_srcdir/fsck.at:46: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:46" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:46" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:46: nukerg -i 1 \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "nukerg -i 1 $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "fsck.at:46" +( $at_check_trace; nukerg -i 1 $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:46" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:46: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:46" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:46" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:46: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:46" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:46" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_28 +#AT_START_29 +at_fn_group_banner 29 'fsck.at:49' \ + "Rebuild bad journal" " " 2 +at_xfail=no +( + $as_echo "29. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/fsck.at:51: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:51" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:51" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:51" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:51" +{ set +x +$as_echo "$at_srcdir/fsck.at:52: mkfs.gfs2 -O -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "mkfs.gfs2 -O -p lock_nolock $GFS_TGT" "fsck.at:52" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:52" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:53: gfs2_edit -p journal0 field di_header.mh_magic 0 \$GFS_TGT" +at_fn_check_prepare_dynamic "gfs2_edit -p journal0 field di_header.mh_magic 0 $GFS_TGT" "fsck.at:53" +( $at_check_trace; gfs2_edit -p journal0 field di_header.mh_magic 0 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:53" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:54: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:54" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:54" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:55: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:55" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:55" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_29 +#AT_START_30 +at_fn_group_banner 30 'fsck.at:58' \ + "gfs2 format versions" " " 2 +at_xfail=no +( + $as_echo "30. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/fsck.at:60: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:60" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/fsck.at:60" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "fsck.at:60" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/fsck.at:60" +{ set +x +$as_echo "$at_srcdir/fsck.at:61: mkfs.gfs2 -O -p lock_nolock \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:61" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:61" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:62: echo \"set sb { sb_fs_format: 1802 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:62" +( $at_check_trace; echo "set sb { sb_fs_format: 1802 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:62" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Unsupported format, FSCK_USAGE == 16 +{ set +x +$as_echo "$at_srcdir/fsck.at:64: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:64" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 16 $at_status "$at_srcdir/fsck.at:64" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Format out of range +{ set +x +$as_echo "$at_srcdir/fsck.at:66: echo \"set sb { sb_fs_format: 4242 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:66" +( $at_check_trace; echo "set sb { sb_fs_format: 4242 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:66" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:67: fsck.gfs2 -y \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -y $GFS_TGT" "fsck.at:67" +( $at_check_trace; fsck.gfs2 -y $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 1 $at_status "$at_srcdir/fsck.at:67" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:68: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:68" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:68" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_30 +#AT_START_31 +at_fn_group_banner 31 'edit.at:4' \ + "Save/restoremeta, defaults" " " 3 +at_xfail=no +( + $as_echo "31. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/edit.at:6: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:6" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:6" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:6" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:6" +{ set +x +$as_echo "$at_srcdir/edit.at:7: \$GFS_MKFS -p lock_nolock \$GFS_TGT \$((\$(gfs_max_blocks 4096)/2))" +at_fn_check_prepare_notrace 'a $(...) command substitution' "edit.at:7" +( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT $(($(gfs_max_blocks 4096)/2)) +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:7" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:8: gfs2_edit savemeta \$GFS_TGT test.meta > savemeta.log" +at_fn_check_prepare_dynamic "gfs2_edit savemeta $GFS_TGT test.meta > savemeta.log" "edit.at:8" +( $at_check_trace; gfs2_edit savemeta $GFS_TGT test.meta > savemeta.log +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:8" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:9: head -2 savemeta.log" +at_fn_check_prepare_trace "edit.at:9" +( $at_check_trace; head -2 savemeta.log +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo >>"$at_stdout"; $as_echo "There are 1310716 blocks of 4096 bytes in the filesystem. +Filesystem size: 5.00GB +" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:9" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:12: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:12" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:12" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:12" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:12" +{ set +x +$as_echo "$at_srcdir/edit.at:13: gfs2_edit restoremeta test.meta \$GFS_TGT" +at_fn_check_prepare_dynamic "gfs2_edit restoremeta test.meta $GFS_TGT" "edit.at:13" +( $at_check_trace; gfs2_edit restoremeta test.meta $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:13" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:14: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "edit.at:14" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:14" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_31 +#AT_START_32 +at_fn_group_banner 32 'edit.at:17' \ + "Save/restoremeta, no compression" " " 3 +at_xfail=no +( + $as_echo "32. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/edit.at:19: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:19" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:19" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:19" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:19" +{ set +x +$as_echo "$at_srcdir/edit.at:20: \$GFS_MKFS -p lock_nolock \$GFS_TGT \$((\$(gfs_max_blocks 4096)/2))" +at_fn_check_prepare_notrace 'a $(...) command substitution' "edit.at:20" +( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT $(($(gfs_max_blocks 4096)/2)) +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:20" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:21: gfs2_edit savemeta -z0 \$GFS_TGT test.meta" +at_fn_check_prepare_dynamic "gfs2_edit savemeta -z0 $GFS_TGT test.meta" "edit.at:21" +( $at_check_trace; gfs2_edit savemeta -z0 $GFS_TGT test.meta +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:21" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:22: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:22" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:22" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:22" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:22" +{ set +x +$as_echo "$at_srcdir/edit.at:23: gfs2_edit restoremeta test.meta \$GFS_TGT" +at_fn_check_prepare_dynamic "gfs2_edit restoremeta test.meta $GFS_TGT" "edit.at:23" +( $at_check_trace; gfs2_edit restoremeta test.meta $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:23" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:24: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "edit.at:24" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:24" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_32 +#AT_START_33 +at_fn_group_banner 33 'edit.at:27' \ + "Save/restoremeta, min. block size" " " 3 +at_xfail=no +( + $as_echo "33. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/edit.at:29: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:29" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:29" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:29" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:29" +{ set +x +$as_echo "$at_srcdir/edit.at:30: \$GFS_MKFS -p lock_nolock -b512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b512 $GFS_TGT" "edit.at:30" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:30" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:31: gfs2_edit savemeta -z0 \$GFS_TGT test.meta" +at_fn_check_prepare_dynamic "gfs2_edit savemeta -z0 $GFS_TGT test.meta" "edit.at:31" +( $at_check_trace; gfs2_edit savemeta -z0 $GFS_TGT test.meta +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:31" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:32: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:32" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:32" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:32" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:32" +{ set +x +$as_echo "$at_srcdir/edit.at:33: gfs2_edit restoremeta test.meta \$GFS_TGT" +at_fn_check_prepare_dynamic "gfs2_edit restoremeta test.meta $GFS_TGT" "edit.at:33" +( $at_check_trace; gfs2_edit restoremeta test.meta $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:33" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:34: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "edit.at:34" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:34" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_33 +#AT_START_34 +at_fn_group_banner 34 'edit.at:37' \ + "Save/restoremeta, 4 journals" " " 3 +at_xfail=no +( + $as_echo "34. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/edit.at:39: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:39" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:39" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:39" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:39" +{ set +x +$as_echo "$at_srcdir/edit.at:40: \$GFS_MKFS -p lock_nolock -j4 -J8 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -j4 -J8 $GFS_TGT" "edit.at:40" +( $at_check_trace; $GFS_MKFS -p lock_nolock -j4 -J8 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:40" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:41: gfs2_edit savemeta -z0 \$GFS_TGT test.meta" +at_fn_check_prepare_dynamic "gfs2_edit savemeta -z0 $GFS_TGT test.meta" "edit.at:41" +( $at_check_trace; gfs2_edit savemeta -z0 $GFS_TGT test.meta +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:41" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:42: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:42" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:42" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:42" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:42" +{ set +x +$as_echo "$at_srcdir/edit.at:43: gfs2_edit restoremeta test.meta \$GFS_TGT" +at_fn_check_prepare_dynamic "gfs2_edit restoremeta test.meta $GFS_TGT" "edit.at:43" +( $at_check_trace; gfs2_edit restoremeta test.meta $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:43" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:44: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "edit.at:44" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:44" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_34 +#AT_START_35 +at_fn_group_banner 35 'edit.at:47' \ + "Save/restoremeta, min. block size, 4 journals" " " 3 +at_xfail=no +( + $as_echo "35. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/edit.at:49: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:49" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:49" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:49" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:49" +{ set +x +$as_echo "$at_srcdir/edit.at:50: \$GFS_MKFS -p lock_nolock -b512 -j4 -J8 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b512 -j4 -J8 $GFS_TGT" "edit.at:50" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b512 -j4 -J8 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:50" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:51: gfs2_edit savemeta -z0 \$GFS_TGT test.meta" +at_fn_check_prepare_dynamic "gfs2_edit savemeta -z0 $GFS_TGT test.meta" "edit.at:51" +( $at_check_trace; gfs2_edit savemeta -z0 $GFS_TGT test.meta +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:51" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:52: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:52" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:52" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:52" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:52" +{ set +x +$as_echo "$at_srcdir/edit.at:53: gfs2_edit restoremeta test.meta \$GFS_TGT" +at_fn_check_prepare_dynamic "gfs2_edit restoremeta test.meta $GFS_TGT" "edit.at:53" +( $at_check_trace; gfs2_edit restoremeta test.meta $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:53" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:54: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "edit.at:54" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:54" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_35 +#AT_START_36 +at_fn_group_banner 36 'edit.at:57' \ + "Save metadata to /dev/null" " " 3 +at_xfail=no +( + $as_echo "36. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/edit.at:59: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "edit.at:59" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/edit.at:59" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "edit.at:59" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/edit.at:59" +{ set +x +$as_echo "$at_srcdir/edit.at:60: \$GFS_MKFS -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock $GFS_TGT" "edit.at:60" +( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:60" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:61: gfs2_edit savemeta -z0 \$GFS_TGT /dev/null" +at_fn_check_prepare_dynamic "gfs2_edit savemeta -z0 $GFS_TGT /dev/null" "edit.at:61" +( $at_check_trace; gfs2_edit savemeta -z0 $GFS_TGT /dev/null +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:61" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/edit.at:62: gfs2_edit savemeta \$GFS_TGT /dev/null" +at_fn_check_prepare_dynamic "gfs2_edit savemeta $GFS_TGT /dev/null" "edit.at:62" +( $at_check_trace; gfs2_edit savemeta $GFS_TGT /dev/null +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/edit.at:62" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_36 +#AT_START_37 +at_fn_group_banner 37 'libgfs2.at:3' \ + "meta.c" " " 4 +at_xfail=no +( + $as_echo "37. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/libgfs2.at:3: test x\"\$ENABLE_UNIT_TESTS\" = \"xyes\" || exit 77" +at_fn_check_prepare_dynamic "test x\"$ENABLE_UNIT_TESTS\" = \"xyes\" || exit 77" "libgfs2.at:3" +( $at_check_trace; test x"$ENABLE_UNIT_TESTS" = "xyes" || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/libgfs2.at:3" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/libgfs2.at:4: check_meta; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "check_meta; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "libgfs2.at:4" +( $at_check_trace; check_meta; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/libgfs2.at:4" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_37 +#AT_START_38 +at_fn_group_banner 38 'libgfs2.at:7' \ + "rgrp.c" " " 4 +at_xfail=no +( + $as_echo "38. $at_setup_line: testing $at_desc ..." + $at_traceon + + +{ set +x +$as_echo "$at_srcdir/libgfs2.at:7: test x\"\$ENABLE_UNIT_TESTS\" = \"xyes\" || exit 77" +at_fn_check_prepare_dynamic "test x\"$ENABLE_UNIT_TESTS\" = \"xyes\" || exit 77" "libgfs2.at:7" +( $at_check_trace; test x"$ENABLE_UNIT_TESTS" = "xyes" || exit 77 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +at_fn_diff_devnull "$at_stderr" || at_failed=: +at_fn_diff_devnull "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/libgfs2.at:7" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/libgfs2.at:8: check_rgrp; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "check_rgrp; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "libgfs2.at:8" +( $at_check_trace; check_rgrp; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/libgfs2.at:8" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_38 From bcaa73a827b52fff11233fc77ddff381c8cd951b Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Fri, 18 Dec 2020 23:16:45 +0000 Subject: [PATCH 25/44] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- gfs2-utils.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index d98ea3e..43f9258 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -18,6 +18,7 @@ BuildRequires: libblkid-devel BuildRequires: libuuid-devel BuildRequires: check-devel BuildRequires: bzip2-devel +BuildRequires: make Source: https://releases.pagure.org/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://pagure.io/gfs2-utils From ee35a59aa69819cc565a9e9f579f7bad8e6e315c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 06:43:58 +0000 Subject: [PATCH 26/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 43f9258..21945cc 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.3.0 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -63,6 +63,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 3.3.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Thu Sep 03 2020 Andrew Price - 3.3.0-2 - Version bump to enable gating tests From f0844f330876cde005a1e39f3b1e090b6e459dd7 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Mon, 8 Mar 2021 16:33:08 +0000 Subject: [PATCH 27/44] * Mon Mar 08 2021 Andrew Price - 3.4.0-1 - New upstream version - Update testsuite script --- .gitignore | 1 + gfs2-utils.spec | 8 +- sources | 2 +- tests/testsuite | 1878 +++++++++++++++++++++++++---------------------- 4 files changed, 1021 insertions(+), 868 deletions(-) diff --git a/.gitignore b/.gitignore index 17c9025..facb12a 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /gfs2-utils-3.3.0.tar.gz +/gfs2-utils-3.4.0.tar.gz diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 21945cc..8616ac3 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils -Version: 3.3.0 -Release: 3%{?dist} +Version: 3.4.0 +Release: 1%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -63,6 +63,10 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Mon Mar 08 2021 Andrew Price - 3.4.0-1 +- New upstream version +- Update testsuite script + * Tue Jan 26 2021 Fedora Release Engineering - 3.3.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index 8115dd5..f879e91 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gfs2-utils-3.3.0.tar.gz) = b5ed1fb91eaf88fd163b682a73a3f54efd000e513206aba90e6286e68d8b13c325373da1bde94c8f48c0d235b60f22f6269f9103c508aebf13b15d9470b745d0 +SHA512 (gfs2-utils-3.4.0.tar.gz) = 01d3f582705a5dc9ee9919d3cd5798118233797f1400a7d2387a2e5072cdc347c6d5c8140aa242c0d00a2b26f31ae19386938f22761c76b3dbfb7a71f97c7420 diff --git a/tests/testsuite b/tests/testsuite index 2444415..7619c86 100755 --- a/tests/testsuite +++ b/tests/testsuite @@ -586,7 +586,8 @@ at_color=auto # List of the tested programs. at_tested='mkfs.gfs2 fsck.gfs2 -gfs2_edit' +gfs2_edit +tunegfs2' # As many question marks as there are digits in the last test group number. # Used to normalize the test group numbers so that `ls' lists them in # numerical order. @@ -597,39 +598,39 @@ at_help_all="1;mkfs.at:4;Locking protocol validation;mkfs.gfs2 mkfs; 3;mkfs.at:15;Journal size validation;mkfs.gfs2 mkfs; 4;mkfs.at:21;Block count validation;mkfs.gfs2 mkfs; 5;mkfs.at:28;Quota change file size validation;mkfs.gfs2 mkfs; -6;mkfs.at:34;Locking protocols;mkfs.gfs2 mkfs; -7;mkfs.at:40;Valid block sizes 512-4096;mkfs.gfs2 mkfs; -8;mkfs.at:48;Max. blocks, min. block size;mkfs.gfs2 mkfs; -9;mkfs.at:53;Max. blocks, max. block size;mkfs.gfs2 mkfs; -10;mkfs.at:58;Max. resource group size;mkfs.gfs2 mkfs; -11;mkfs.at:63;Min. resource group size;mkfs.gfs2 mkfs; -12;mkfs.at:68;Max. resource group size, min. block size;mkfs.gfs2 mkfs; -13;mkfs.at:73;Max. journal size;mkfs.gfs2 mkfs; -14;mkfs.at:78;Min. journal size;mkfs.gfs2 mkfs; -15;mkfs.at:85;Max. quota change file size;mkfs.gfs2 mkfs; -16;mkfs.at:90;Min. quota change file size;mkfs.gfs2 mkfs; -17;mkfs.at:95;Lock table validation;mkfs.gfs2 mkfs; -18;mkfs.at:114;Device i/o limits handling;mkfs.gfs2 mkfs; -19;mkfs.at:125;Resource group alignment;mkfs.gfs2 mkfs; -20;mkfs.at:134;Values of rg_skip;mkfs.gfs2 mkfs; -21;mkfs.at:150;Values of rg_data0, rg_data, rg_bitbytes;mkfs.gfs2 mkfs; -22;mkfs.at:166;Small filesystems;mkfs.gfs2 mkfs; -23;fsck.at:4;Conflicting options;fsck.gfs2 fsck; -24;fsck.at:15;Fix invalid block sizes;fsck.gfs2 fsck; -25;fsck.at:24;Fix invalid goal blocks;fsck.gfs2 fsck; -26;fsck.at:29;Fix bad resource group #0;fsck.gfs2 fsck; -27;fsck.at:34;Fix bad resource group #1;fsck.gfs2 fsck; -28;fsck.at:44;Fix bad rindex entry #1;fsck.gfs2 fsck; -29;fsck.at:49;Rebuild bad journal;fsck.gfs2 fsck; -30;fsck.at:58;gfs2 format versions;fsck.gfs2 fsck; -31;edit.at:4;Save/restoremeta, defaults;gfs2_edit edit; -32;edit.at:17;Save/restoremeta, no compression;gfs2_edit edit; -33;edit.at:27;Save/restoremeta, min. block size;gfs2_edit edit; -34;edit.at:37;Save/restoremeta, 4 journals;gfs2_edit edit; -35;edit.at:47;Save/restoremeta, min. block size, 4 journals;gfs2_edit edit; -36;edit.at:57;Save metadata to /dev/null;gfs2_edit edit; -37;libgfs2.at:3;meta.c;libgfs2; -38;libgfs2.at:7;rgrp.c;libgfs2; +6;mkfs.at:34;Format version validation;mkfs.gfs2 mkfs; +7;mkfs.at:44;Locking protocols;mkfs.gfs2 mkfs; +8;mkfs.at:50;Valid block sizes 512-4096;mkfs.gfs2 mkfs; +9;mkfs.at:58;Max. blocks, min. block size;mkfs.gfs2 mkfs; +10;mkfs.at:63;Max. blocks, max. block size;mkfs.gfs2 mkfs; +11;mkfs.at:68;Max. resource group size;mkfs.gfs2 mkfs; +12;mkfs.at:73;Min. resource group size;mkfs.gfs2 mkfs; +13;mkfs.at:78;Max. resource group size, min. block size;mkfs.gfs2 mkfs; +14;mkfs.at:83;Max. journal size;mkfs.gfs2 mkfs; +15;mkfs.at:88;Min. journal size;mkfs.gfs2 mkfs; +16;mkfs.at:95;Max. quota change file size;mkfs.gfs2 mkfs; +17;mkfs.at:100;Min. quota change file size;mkfs.gfs2 mkfs; +18;mkfs.at:105;Lock table validation;mkfs.gfs2 mkfs; +19;mkfs.at:124;Device i/o limits handling;mkfs.gfs2 mkfs; +20;mkfs.at:135;Resource group alignment;mkfs.gfs2 mkfs; +21;mkfs.at:144;Values of rg_skip;mkfs.gfs2 mkfs; +22;mkfs.at:160;Values of rg_data0, rg_data, rg_bitbytes;mkfs.gfs2 mkfs; +23;mkfs.at:176;Small filesystems;mkfs.gfs2 mkfs; +24;fsck.at:4;Conflicting options;fsck.gfs2 fsck; +25;fsck.at:15;Fix invalid block sizes;fsck.gfs2 fsck; +26;fsck.at:24;Fix invalid goal blocks;fsck.gfs2 fsck; +27;fsck.at:29;Fix bad resource group #0;fsck.gfs2 fsck; +28;fsck.at:34;Fix bad resource group #1;fsck.gfs2 fsck; +29;fsck.at:44;Fix bad rindex entry #1;fsck.gfs2 fsck; +30;fsck.at:49;Rebuild bad journal;fsck.gfs2 fsck; +31;fsck.at:58;gfs2 format versions;fsck.gfs2 fsck; +32;edit.at:4;Save/restoremeta, defaults;gfs2_edit edit; +33;edit.at:17;Save/restoremeta, no compression;gfs2_edit edit; +34;edit.at:27;Save/restoremeta, min. block size;gfs2_edit edit; +35;edit.at:37;Save/restoremeta, 4 journals;gfs2_edit edit; +36;edit.at:47;Save/restoremeta, min. block size, 4 journals;gfs2_edit edit; +37;edit.at:57;Save metadata to /dev/null;gfs2_edit edit; +38;tune.at:4;Format version;tunegfs2 tune; " # List of the all the test groups. at_groups_all=`$as_echo "$at_help_all" | sed 's/;.*//'` @@ -941,7 +942,7 @@ fi # List of tests. if $at_list_p; then cat <<_ATEOF || at_write_fail=1 -gfs2-utils 3.3.0.1.dev test suite test groups: +gfs2-utils 3.4.0.1.dev test suite test groups: NUM: FILE-NAME:LINE TEST-GROUP-NAME KEYWORDS @@ -982,7 +983,7 @@ _ATEOF exit $at_write_fail fi if $at_version_p; then - $as_echo "$as_me (gfs2-utils 3.3.0.1.dev)" && + $as_echo "$as_me (gfs2-utils 3.4.0.1.dev)" && cat <<\_ATEOF || at_write_fail=1 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1003,14 +1004,14 @@ esac # Category starts at test group 1. at_banner_text_1="mkfs.gfs2 tests" # Banner 2. fsck.at:2 -# Category starts at test group 23. +# Category starts at test group 24. at_banner_text_2="fsck.gfs2 tests" # Banner 3. edit.at:2 -# Category starts at test group 31. +# Category starts at test group 32. at_banner_text_3="gfs2_edit tests" -# Banner 4. libgfs2.at:1 -# Category starts at test group 37. -at_banner_text_4="libgfs2 unit tests" +# Banner 4. tune.at:2 +# Category starts at test group 38. +at_banner_text_4="tunegfs2 tests" # Take any -C into account. if $at_change_dir ; then @@ -1171,11 +1172,11 @@ exec 5>>"$at_suite_log" # Banners and logs. $as_echo "## ---------------------------------- ## -## gfs2-utils 3.3.0.1.dev test suite. ## +## gfs2-utils 3.4.0.1.dev test suite. ## ## ---------------------------------- ##" { $as_echo "## ---------------------------------- ## -## gfs2-utils 3.3.0.1.dev test suite. ## +## gfs2-utils 3.4.0.1.dev test suite. ## ## ---------------------------------- ##" echo @@ -2019,7 +2020,7 @@ _ASBOX $as_echo "Please send $at_msg and all information you think might help: To: - Subject: [gfs2-utils 3.3.0.1.dev] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} + Subject: [gfs2-utils 3.4.0.1.dev] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly} You may investigate any problem if you feel able to do so, in which case the test suite provides a good starting point. Its output may @@ -2238,7 +2239,7 @@ read at_status <"$at_status_file" #AT_STOP_5 #AT_START_6 at_fn_group_banner 6 'mkfs.at:34' \ - "Locking protocols" " " 1 + "Format version validation" " " 1 at_xfail=no ( $as_echo "6. $at_setup_line: testing $at_desc ..." @@ -2246,86 +2247,80 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:36: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:36" -( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +$as_echo "$at_srcdir/mkfs.at:36: \$GFS_MKFS -p lock_nolock -o format=-1 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o format=-1 $GFS_TGT" "mkfs.at:36" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o format=-1 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:36" -$at_failed && at_fn_log_failure -$at_traceon; } - -$as_echo "mkfs.at:36" >"$at_check_line_file" -(test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:36" -{ set +x -$as_echo "$at_srcdir/mkfs.at:36: \$GFS_MKFS -p lock_nolock \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock $GFS_TGT" "mkfs.at:36" -( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:36" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:36" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:36: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:36" -( $at_check_trace; fsck.gfs2 -n $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:37: \$GFS_MKFS -p lock_nolock -o format=0 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o format=0 $GFS_TGT" "mkfs.at:37" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o format=0 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:36" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:37" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:37: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:37" -( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +$as_echo "$at_srcdir/mkfs.at:38: \$GFS_MKFS -p lock_nolock -o format=1800 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o format=1800 $GFS_TGT" "mkfs.at:38" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o format=1800 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:37" -$at_failed && at_fn_log_failure -$at_traceon; } - -$as_echo "mkfs.at:37" >"$at_check_line_file" -(test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:37" -{ set +x -$as_echo "$at_srcdir/mkfs.at:37: \$GFS_MKFS -p lock_dlm -t foo:bar \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t foo:bar $GFS_TGT" "mkfs.at:37" -( $at_check_trace; $GFS_MKFS -p lock_dlm -t foo:bar $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:37" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:38" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:37: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:37" -( $at_check_trace; fsck.gfs2 -n $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:39: \$GFS_MKFS -p lock_nolock -o format=1801 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o format=1801 $GFS_TGT" "mkfs.at:39" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o format=1801 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:37" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:39" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:40: \$GFS_MKFS -p lock_nolock -o format=1802 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o format=1802 $GFS_TGT" "mkfs.at:40" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o format=1802 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:40" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:41: \$GFS_MKFS -p lock_nolock -o format=1803 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o format=1803 $GFS_TGT" "mkfs.at:41" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o format=1803 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:41" $at_failed && at_fn_log_failure $at_traceon; } @@ -2335,8 +2330,8 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_6 #AT_START_7 -at_fn_group_banner 7 'mkfs.at:40' \ - "Valid block sizes 512-4096" " " 1 +at_fn_group_banner 7 'mkfs.at:44' \ + "Locking protocols" " " 1 at_xfail=no ( $as_echo "7. $at_setup_line: testing $at_desc ..." @@ -2344,170 +2339,86 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:42: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:42" +$as_echo "$at_srcdir/mkfs.at:46: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:46" ( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:42" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:46" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:42" >"$at_check_line_file" +$as_echo "mkfs.at:46" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:42" + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:46" { set +x -$as_echo "$at_srcdir/mkfs.at:42: \$GFS_MKFS -p lock_nolock -b 512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 512 $GFS_TGT" "mkfs.at:42" -( $at_check_trace; $GFS_MKFS -p lock_nolock -b 512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:46: \$GFS_MKFS -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock $GFS_TGT" "mkfs.at:46" +( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:42" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:46" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:42: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:42" +$as_echo "$at_srcdir/mkfs.at:46: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:46" ( $at_check_trace; fsck.gfs2 -n $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:42" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:46" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:43: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:43" +$as_echo "$at_srcdir/mkfs.at:47: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:47" ( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:43" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:47" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:43" >"$at_check_line_file" +$as_echo "mkfs.at:47" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:43" + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:47" { set +x -$as_echo "$at_srcdir/mkfs.at:43: \$GFS_MKFS -p lock_nolock -b 1024 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT" "mkfs.at:43" -( $at_check_trace; $GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:47: \$GFS_MKFS -p lock_dlm -t foo:bar \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t foo:bar $GFS_TGT" "mkfs.at:47" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t foo:bar $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:43" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:47" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:43: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:43" +$as_echo "$at_srcdir/mkfs.at:47: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:47" ( $at_check_trace; fsck.gfs2 -n $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:43" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:44: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:44" -( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:44" -$at_failed && at_fn_log_failure -$at_traceon; } - -$as_echo "mkfs.at:44" >"$at_check_line_file" -(test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:44" -{ set +x -$as_echo "$at_srcdir/mkfs.at:44: \$GFS_MKFS -p lock_nolock -b 2048 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 2048 $GFS_TGT" "mkfs.at:44" -( $at_check_trace; $GFS_MKFS -p lock_nolock -b 2048 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:44" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:44: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:44" -( $at_check_trace; fsck.gfs2 -n $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:44" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:45: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:45" -( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:45" -$at_failed && at_fn_log_failure -$at_traceon; } - -$as_echo "mkfs.at:45" >"$at_check_line_file" -(test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:45" -{ set +x -$as_echo "$at_srcdir/mkfs.at:45: \$GFS_MKFS -p lock_nolock -b 4096 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT" "mkfs.at:45" -( $at_check_trace; $GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:45" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:45: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:45" -( $at_check_trace; fsck.gfs2 -n $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:45" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:47" $at_failed && at_fn_log_failure $at_traceon; } @@ -2517,8 +2428,8 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_7 #AT_START_8 -at_fn_group_banner 8 'mkfs.at:48' \ - "Max. blocks, min. block size" " " 1 +at_fn_group_banner 8 'mkfs.at:50' \ + "Valid block sizes 512-4096" " " 1 at_xfail=no ( $as_echo "8. $at_setup_line: testing $at_desc ..." @@ -2526,60 +2437,130 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:50: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:50" +$as_echo "$at_srcdir/mkfs.at:52: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:52" ( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:50" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:52" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:50" >"$at_check_line_file" +$as_echo "mkfs.at:52" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:50" + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:52" { set +x -$as_echo "$at_srcdir/mkfs.at:50: \$GFS_MKFS -p lock_nolock -b 512 \$GFS_TGT \$(gfs_max_blocks 512)" -at_fn_check_prepare_notrace 'a $(...) command substitution' "mkfs.at:50" -( $at_check_trace; $GFS_MKFS -p lock_nolock -b 512 $GFS_TGT $(gfs_max_blocks 512) +$as_echo "$at_srcdir/mkfs.at:52: \$GFS_MKFS -p lock_nolock -b 512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 512 $GFS_TGT" "mkfs.at:52" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 512 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:50" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:52" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:50: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:50" +$as_echo "$at_srcdir/mkfs.at:52: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:52" ( $at_check_trace; fsck.gfs2 -n $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:50" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:52" $at_failed && at_fn_log_failure $at_traceon; } - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_8 -#AT_START_9 -at_fn_group_banner 9 'mkfs.at:53' \ - "Max. blocks, max. block size" " " 1 -at_xfail=no -( - $as_echo "9. $at_setup_line: testing $at_desc ..." - $at_traceon +{ set +x +$as_echo "$at_srcdir/mkfs.at:53: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:53" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:53" +$at_failed && at_fn_log_failure +$at_traceon; } +$as_echo "mkfs.at:53" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:53" +{ set +x +$as_echo "$at_srcdir/mkfs.at:53: \$GFS_MKFS -p lock_nolock -b 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT" "mkfs.at:53" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:53" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:53: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:53" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:53" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:54: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:54" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:54" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:54" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:54" +{ set +x +$as_echo "$at_srcdir/mkfs.at:54: \$GFS_MKFS -p lock_nolock -b 2048 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 2048 $GFS_TGT" "mkfs.at:54" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 2048 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:54" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:54: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:54" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:54" +$at_failed && at_fn_log_failure +$at_traceon; } { set +x $as_echo "$at_srcdir/mkfs.at:55: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" @@ -2598,9 +2579,9 @@ $as_echo "mkfs.at:55" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ && at_fn_check_skip 77 "$at_srcdir/mkfs.at:55" { set +x -$as_echo "$at_srcdir/mkfs.at:55: \$GFS_MKFS -p lock_nolock -b 4096 \$GFS_TGT \$(gfs_max_blocks 4096)" -at_fn_check_prepare_notrace 'a $(...) command substitution' "mkfs.at:55" -( $at_check_trace; $GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT $(gfs_max_blocks 4096) +$as_echo "$at_srcdir/mkfs.at:55: \$GFS_MKFS -p lock_nolock -b 4096 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT" "mkfs.at:55" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2627,13 +2608,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_9 -#AT_START_10 -at_fn_group_banner 10 'mkfs.at:58' \ - "Max. resource group size" " " 1 +#AT_STOP_8 +#AT_START_9 +at_fn_group_banner 9 'mkfs.at:58' \ + "Max. blocks, min. block size" " " 1 at_xfail=no ( - $as_echo "10. $at_setup_line: testing $at_desc ..." + $as_echo "9. $at_setup_line: testing $at_desc ..." $at_traceon @@ -2654,9 +2635,9 @@ $as_echo "mkfs.at:60" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ && at_fn_check_skip 77 "$at_srcdir/mkfs.at:60" { set +x -$as_echo "$at_srcdir/mkfs.at:60: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:60" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:60: \$GFS_MKFS -p lock_nolock -b 512 \$GFS_TGT \$(gfs_max_blocks 512)" +at_fn_check_prepare_notrace 'a $(...) command substitution' "mkfs.at:60" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 512 $GFS_TGT $(gfs_max_blocks 512) ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2683,13 +2664,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_10 -#AT_START_11 -at_fn_group_banner 11 'mkfs.at:63' \ - "Min. resource group size" " " 1 +#AT_STOP_9 +#AT_START_10 +at_fn_group_banner 10 'mkfs.at:63' \ + "Max. blocks, max. block size" " " 1 at_xfail=no ( - $as_echo "11. $at_setup_line: testing $at_desc ..." + $as_echo "10. $at_setup_line: testing $at_desc ..." $at_traceon @@ -2710,9 +2691,9 @@ $as_echo "mkfs.at:65" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ && at_fn_check_skip 77 "$at_srcdir/mkfs.at:65" { set +x -$as_echo "$at_srcdir/mkfs.at:65: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:65" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:65: \$GFS_MKFS -p lock_nolock -b 4096 \$GFS_TGT \$(gfs_max_blocks 4096)" +at_fn_check_prepare_notrace 'a $(...) command substitution' "mkfs.at:65" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 4096 $GFS_TGT $(gfs_max_blocks 4096) ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2739,13 +2720,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_11 -#AT_START_12 -at_fn_group_banner 12 'mkfs.at:68' \ - "Max. resource group size, min. block size" " " 1 +#AT_STOP_10 +#AT_START_11 +at_fn_group_banner 11 'mkfs.at:68' \ + "Max. resource group size" " " 1 at_xfail=no ( - $as_echo "12. $at_setup_line: testing $at_desc ..." + $as_echo "11. $at_setup_line: testing $at_desc ..." $at_traceon @@ -2766,9 +2747,9 @@ $as_echo "mkfs.at:70" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ && at_fn_check_skip 77 "$at_srcdir/mkfs.at:70" { set +x -$as_echo "$at_srcdir/mkfs.at:70: \$GFS_MKFS -p lock_nolock -r 2048 -b 512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 -b 512 $GFS_TGT" "mkfs.at:70" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 -b 512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:70: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:70" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2795,13 +2776,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_12 -#AT_START_13 -at_fn_group_banner 13 'mkfs.at:73' \ - "Max. journal size" " " 1 +#AT_STOP_11 +#AT_START_12 +at_fn_group_banner 12 'mkfs.at:73' \ + "Min. resource group size" " " 1 at_xfail=no ( - $as_echo "13. $at_setup_line: testing $at_desc ..." + $as_echo "12. $at_setup_line: testing $at_desc ..." $at_traceon @@ -2822,9 +2803,9 @@ $as_echo "mkfs.at:75" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ && at_fn_check_skip 77 "$at_srcdir/mkfs.at:75" { set +x -$as_echo "$at_srcdir/mkfs.at:75: \$GFS_MKFS -p lock_nolock -J 1024 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -J 1024 $GFS_TGT" "mkfs.at:75" -( $at_check_trace; $GFS_MKFS -p lock_nolock -J 1024 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:75: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:75" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2851,13 +2832,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_13 -#AT_START_14 -at_fn_group_banner 14 'mkfs.at:78' \ - "Min. journal size" " " 1 +#AT_STOP_12 +#AT_START_13 +at_fn_group_banner 13 'mkfs.at:78' \ + "Max. resource group size, min. block size" " " 1 at_xfail=no ( - $as_echo "14. $at_setup_line: testing $at_desc ..." + $as_echo "13. $at_setup_line: testing $at_desc ..." $at_traceon @@ -2878,9 +2859,9 @@ $as_echo "mkfs.at:80" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ && at_fn_check_skip 77 "$at_srcdir/mkfs.at:80" { set +x -$as_echo "$at_srcdir/mkfs.at:80: \$GFS_MKFS -p lock_nolock -J 8 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -J 8 $GFS_TGT" "mkfs.at:80" -( $at_check_trace; $GFS_MKFS -p lock_nolock -J 8 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:80: \$GFS_MKFS -p lock_nolock -r 2048 -b 512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 -b 512 $GFS_TGT" "mkfs.at:80" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 -b 512 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -2903,59 +2884,59 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:80" $at_failed && at_fn_log_failure $at_traceon; } + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_13 +#AT_START_14 +at_fn_group_banner 14 'mkfs.at:83' \ + "Max. journal size" " " 1 +at_xfail=no +( + $as_echo "14. $at_setup_line: testing $at_desc ..." + $at_traceon + + { set +x -$as_echo "$at_srcdir/mkfs.at:81: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:81" +$as_echo "$at_srcdir/mkfs.at:85: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:85" ( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:81" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:85" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:81" >"$at_check_line_file" +$as_echo "mkfs.at:85" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:81" + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:85" { set +x -$as_echo "$at_srcdir/mkfs.at:81: \$GFS_MKFS -p lock_nolock -b 1024 \$GFS_TGT 511996" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT 511996" "mkfs.at:81" -( $at_check_trace; $GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT 511996 +$as_echo "$at_srcdir/mkfs.at:85: \$GFS_MKFS -p lock_nolock -J 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -J 1024 $GFS_TGT" "mkfs.at:85" +( $at_check_trace; $GFS_MKFS -p lock_nolock -J 1024 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:81" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:85" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:81: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:81" +$as_echo "$at_srcdir/mkfs.at:85: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:85" ( $at_check_trace; fsck.gfs2 -n $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:81" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:82: gfs2_edit -p journal0 field di_size \$GFS_TGT | tr -d '\\n'" -at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:82" -( $at_check_trace; gfs2_edit -p journal0 field di_size $GFS_TGT | tr -d '\n' -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo >>"$at_stdout"; $as_echo "8388608" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:82" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:85" $at_failed && at_fn_log_failure $at_traceon; } @@ -2965,8 +2946,8 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_14 #AT_START_15 -at_fn_group_banner 15 'mkfs.at:85' \ - "Max. quota change file size" " " 1 +at_fn_group_banner 15 'mkfs.at:88' \ + "Min. journal size" " " 1 at_xfail=no ( $as_echo "15. $at_setup_line: testing $at_desc ..." @@ -2974,44 +2955,100 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:87: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:87" +$as_echo "$at_srcdir/mkfs.at:90: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:90" ( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:87" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:90" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:87" >"$at_check_line_file" +$as_echo "mkfs.at:90" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:87" + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:90" { set +x -$as_echo "$at_srcdir/mkfs.at:87: \$GFS_MKFS -p lock_nolock -c 64 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -c 64 $GFS_TGT" "mkfs.at:87" -( $at_check_trace; $GFS_MKFS -p lock_nolock -c 64 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:90: \$GFS_MKFS -p lock_nolock -J 8 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -J 8 $GFS_TGT" "mkfs.at:90" +( $at_check_trace; $GFS_MKFS -p lock_nolock -J 8 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:87" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:90" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:87: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:87" +$as_echo "$at_srcdir/mkfs.at:90: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:90" ( $at_check_trace; fsck.gfs2 -n $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:87" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:90" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:91: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:91" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:91" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:91" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:91" +{ set +x +$as_echo "$at_srcdir/mkfs.at:91: \$GFS_MKFS -p lock_nolock -b 1024 \$GFS_TGT 511996" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT 511996" "mkfs.at:91" +( $at_check_trace; $GFS_MKFS -p lock_nolock -b 1024 $GFS_TGT 511996 +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:91" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:91: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:91" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:91" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:92: gfs2_edit -p journal0 field di_size \$GFS_TGT | tr -d '\\n'" +at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:92" +( $at_check_trace; gfs2_edit -p journal0 field di_size $GFS_TGT | tr -d '\n' +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo >>"$at_stdout"; $as_echo "8388608" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:92" $at_failed && at_fn_log_failure $at_traceon; } @@ -3021,8 +3058,8 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_15 #AT_START_16 -at_fn_group_banner 16 'mkfs.at:90' \ - "Min. quota change file size" " " 1 +at_fn_group_banner 16 'mkfs.at:95' \ + "Max. quota change file size" " " 1 at_xfail=no ( $as_echo "16. $at_setup_line: testing $at_desc ..." @@ -3030,44 +3067,44 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:92: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:92" +$as_echo "$at_srcdir/mkfs.at:97: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:97" ( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:92" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:97" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:92" >"$at_check_line_file" +$as_echo "mkfs.at:97" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:92" + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:97" { set +x -$as_echo "$at_srcdir/mkfs.at:92: \$GFS_MKFS -p lock_nolock -c 1 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -c 1 $GFS_TGT" "mkfs.at:92" -( $at_check_trace; $GFS_MKFS -p lock_nolock -c 1 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:97: \$GFS_MKFS -p lock_nolock -c 64 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -c 64 $GFS_TGT" "mkfs.at:97" +( $at_check_trace; $GFS_MKFS -p lock_nolock -c 64 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:97" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:92: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:92" +$as_echo "$at_srcdir/mkfs.at:97: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:97" ( $at_check_trace; fsck.gfs2 -n $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:92" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:97" $at_failed && at_fn_log_failure $at_traceon; } @@ -3077,8 +3114,8 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_16 #AT_START_17 -at_fn_group_banner 17 'mkfs.at:95' \ - "Lock table validation" " " 1 +at_fn_group_banner 17 'mkfs.at:100' \ + "Min. quota change file size" " " 1 at_xfail=no ( $as_echo "17. $at_setup_line: testing $at_desc ..." @@ -3086,164 +3123,44 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:97: \$GFS_MKFS -p lock_nolock -t \"\" \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"\" $GFS_TGT" "mkfs.at:97" -( $at_check_trace; $GFS_MKFS -p lock_nolock -t "" $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:97" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:98: \$GFS_MKFS -p lock_nolock -t \"123456789012345678901234567890123:12345678\" \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"123456789012345678901234567890123:12345678\" $GFS_TGT" "mkfs.at:98" -( $at_check_trace; $GFS_MKFS -p lock_nolock -t "123456789012345678901234567890123:12345678" $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:98" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:99: \$GFS_MKFS -p lock_nolock -t \"12345678901234567:1234567890123456789012345678901\" \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"12345678901234567:1234567890123456789012345678901\" $GFS_TGT" "mkfs.at:99" -( $at_check_trace; $GFS_MKFS -p lock_nolock -t "12345678901234567:1234567890123456789012345678901" $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:99" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:100: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:100" +$as_echo "$at_srcdir/mkfs.at:102: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:102" ( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:100" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:102" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:100" >"$at_check_line_file" +$as_echo "mkfs.at:102" >"$at_check_line_file" (test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:100" + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:102" { set +x -$as_echo "$at_srcdir/mkfs.at:100: \$GFS_MKFS -p lock_nolock -t \"12345678901234567890123456789012:123456789012345678901234567890\" \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"12345678901234567890123456789012:123456789012345678901234567890\" $GFS_TGT" "mkfs.at:100" -( $at_check_trace; $GFS_MKFS -p lock_nolock -t "12345678901234567890123456789012:123456789012345678901234567890" $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:102: \$GFS_MKFS -p lock_nolock -c 1 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -c 1 $GFS_TGT" "mkfs.at:102" +( $at_check_trace; $GFS_MKFS -p lock_nolock -c 1 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:100" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:102" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:100: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:100" +$as_echo "$at_srcdir/mkfs.at:102: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:102" ( $at_check_trace; fsck.gfs2 -n $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:100" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:101: \$GFS_MKFS -p lock_dlm -t \"\" \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"\" $GFS_TGT" "mkfs.at:101" -( $at_check_trace; $GFS_MKFS -p lock_dlm -t "" $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:101" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:102: \$GFS_MKFS -p lock_dlm -t \"quite_long_cluster_name_test_here:intec34p\" \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"quite_long_cluster_name_test_here:intec34p\" $GFS_TGT" "mkfs.at:102" -( $at_check_trace; $GFS_MKFS -p lock_dlm -t "quite_long_cluster_name_test_here:intec34p" $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:102" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:103: \$GFS_MKFS -p lock_dlm -t \"financial_cluster:this_time_we_test_fs_naming_len\" \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"financial_cluster:this_time_we_test_fs_naming_len\" $GFS_TGT" "mkfs.at:103" -( $at_check_trace; $GFS_MKFS -p lock_dlm -t "financial_cluster:this_time_we_test_fs_naming_len" $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:103" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:104: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:104" -( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:104" -$at_failed && at_fn_log_failure -$at_traceon; } - -$as_echo "mkfs.at:104" >"$at_check_line_file" -(test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:104" -{ set +x -$as_echo "$at_srcdir/mkfs.at:104: \$GFS_MKFS -p lock_dlm -t \"a_really_long_named_cluster_here:concurrently_lets_check_fs_len\" \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"a_really_long_named_cluster_here:concurrently_lets_check_fs_len\" $GFS_TGT" "mkfs.at:104" -( $at_check_trace; $GFS_MKFS -p lock_dlm -t "a_really_long_named_cluster_here:concurrently_lets_check_fs_len" $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:104" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:104: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:104" -( $at_check_trace; fsck.gfs2 -n $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:104" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:102" $at_failed && at_fn_log_failure $at_traceon; } @@ -3253,8 +3170,8 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_17 #AT_START_18 -at_fn_group_banner 18 'mkfs.at:114' \ - "Device i/o limits handling" " " 1 +at_fn_group_banner 18 'mkfs.at:105' \ + "Lock table validation" " " 1 at_xfail=no ( $as_echo "18. $at_setup_line: testing $at_desc ..." @@ -3262,83 +3179,164 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:116: \$GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 $GFS_TGT" "mkfs.at:116" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:107: \$GFS_MKFS -p lock_nolock -t \"\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"\" $GFS_TGT" "mkfs.at:107" +( $at_check_trace; $GFS_MKFS -p lock_nolock -t "" $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:116" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:107" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:117: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 $GFS_TGT" "mkfs.at:117" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:108: \$GFS_MKFS -p lock_nolock -t \"123456789012345678901234567890123:12345678\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"123456789012345678901234567890123:12345678\" $GFS_TGT" "mkfs.at:108" +( $at_check_trace; $GFS_MKFS -p lock_nolock -t "123456789012345678901234567890123:12345678" $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:117" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:108" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:118: gfs2_edit -p sb field sb_bsize \$GFS_TGT | tr -d '\\n' " -at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:118" -( $at_check_trace; gfs2_edit -p sb field sb_bsize $GFS_TGT | tr -d '\n' -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo >>"$at_stdout"; $as_echo "4096" | \ - $at_diff - "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:118" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:119: \$GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 $GFS_TGT" "mkfs.at:119" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:109: \$GFS_MKFS -p lock_nolock -t \"12345678901234567:1234567890123456789012345678901\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"12345678901234567:1234567890123456789012345678901\" $GFS_TGT" "mkfs.at:109" +( $at_check_trace; $GFS_MKFS -p lock_nolock -t "12345678901234567:1234567890123456789012345678901" $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:119" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:109" $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:120: \$GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 $GFS_TGT" "mkfs.at:120" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo >>"$at_stderr"; $as_echo "Warning: device is not properly aligned. This may harm performance. -" | \ - $at_diff - "$at_stderr" || at_failed=: -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:120" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:122: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 $GFS_TGT" "mkfs.at:122" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:110: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:110" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:122" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:110" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:110" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:110" +{ set +x +$as_echo "$at_srcdir/mkfs.at:110: \$GFS_MKFS -p lock_nolock -t \"12345678901234567890123456789012:123456789012345678901234567890\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -t \"12345678901234567890123456789012:123456789012345678901234567890\" $GFS_TGT" "mkfs.at:110" +( $at_check_trace; $GFS_MKFS -p lock_nolock -t "12345678901234567890123456789012:123456789012345678901234567890" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:110" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:110: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:110" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:110" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:111: \$GFS_MKFS -p lock_dlm -t \"\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"\" $GFS_TGT" "mkfs.at:111" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t "" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:111" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:112: \$GFS_MKFS -p lock_dlm -t \"quite_long_cluster_name_test_here:intec34p\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"quite_long_cluster_name_test_here:intec34p\" $GFS_TGT" "mkfs.at:112" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t "quite_long_cluster_name_test_here:intec34p" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:112" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:113: \$GFS_MKFS -p lock_dlm -t \"financial_cluster:this_time_we_test_fs_naming_len\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"financial_cluster:this_time_we_test_fs_naming_len\" $GFS_TGT" "mkfs.at:113" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t "financial_cluster:this_time_we_test_fs_naming_len" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 255 $at_status "$at_srcdir/mkfs.at:113" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:114: rm -f \$GFS_TGT && truncate -s \${GFS_TGT_SZ}G \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:114" +( $at_check_trace; rm -f $GFS_TGT && truncate -s ${GFS_TGT_SZ}G ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:114" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:114" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:114" +{ set +x +$as_echo "$at_srcdir/mkfs.at:114: \$GFS_MKFS -p lock_dlm -t \"a_really_long_named_cluster_here:concurrently_lets_check_fs_len\" \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_dlm -t \"a_really_long_named_cluster_here:concurrently_lets_check_fs_len\" $GFS_TGT" "mkfs.at:114" +( $at_check_trace; $GFS_MKFS -p lock_dlm -t "a_really_long_named_cluster_here:concurrently_lets_check_fs_len" $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:114" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:114: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:114" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:114" $at_failed && at_fn_log_failure $at_traceon; } @@ -3348,8 +3346,8 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_18 #AT_START_19 -at_fn_group_banner 19 'mkfs.at:125' \ - "Resource group alignment" " " 1 +at_fn_group_banner 19 'mkfs.at:124' \ + "Device i/o limits handling" " " 1 at_xfail=no ( $as_echo "19. $at_setup_line: testing $at_desc ..." @@ -3357,9 +3355,22 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:127: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:127" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:126: \$GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 $GFS_TGT" "mkfs.at:126" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:0:0:0:0 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:126" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:127: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 $GFS_TGT" "mkfs.at:127" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:512:512:512 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3369,11 +3380,24 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:127" $at_failed && at_fn_log_failure $at_traceon; } -# Check rgrp alignment to minimum_io_size: 65536 / 4096 == 16 { set +x -$as_echo "$at_srcdir/mkfs.at:129: gfs2_edit -p rindex \$GFS_TGT | grep ri_addr | awk '{print \$2, \$2 % 16; if (\$2 % 16 != 0) { exit 1 }}'" -at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:129" -( $at_check_trace; gfs2_edit -p rindex $GFS_TGT | grep ri_addr | awk '{print $2, $2 % 16; if ($2 % 16 != 0) { exit 1 }}' +$as_echo "$at_srcdir/mkfs.at:128: gfs2_edit -p sb field sb_bsize \$GFS_TGT | tr -d '\\n' " +at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:128" +( $at_check_trace; gfs2_edit -p sb field sb_bsize $GFS_TGT | tr -d '\n' +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo >>"$at_stdout"; $as_echo "4096" | \ + $at_diff - "$at_stdout" || at_failed=: +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:128" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:129: \$GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 $GFS_TGT" "mkfs.at:129" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=7168:512:0:33553920:512 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3383,17 +3407,31 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:129" $at_failed && at_fn_log_failure $at_traceon; } -# rhbz#1698858 { set +x -$as_echo "$at_srcdir/mkfs.at:131: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 $GFS_TGT" "mkfs.at:131" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:130: \$GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 $GFS_TGT" "mkfs.at:130" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=7168:512:8192:33553920:512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo >>"$at_stderr"; $as_echo "Warning: device is not properly aligned. This may harm performance. +" | \ + $at_diff - "$at_stderr" || at_failed=: +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:130" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:132: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 $GFS_TGT" "mkfs.at:132" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:4194304:8388608:512 -b 1024 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:131" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:132" $at_failed && at_fn_log_failure $at_traceon; } @@ -3403,8 +3441,8 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_19 #AT_START_20 -at_fn_group_banner 20 'mkfs.at:134' \ - "Values of rg_skip" " " 1 +at_fn_group_banner 20 'mkfs.at:135' \ + "Resource group alignment" " " 1 at_xfail=no ( $as_echo "20. $at_setup_line: testing $at_desc ..." @@ -3412,22 +3450,9 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/mkfs.at:136: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:136" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:136" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:137: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:137" -( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +$as_echo "$at_srcdir/mkfs.at:137: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:137" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3437,23 +3462,11 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:137" $at_failed && at_fn_log_failure $at_traceon; } +# Check rgrp alignment to minimum_io_size: 65536 / 4096 == 16 { set +x -$as_echo "$at_srcdir/mkfs.at:138: \$GFS_MKFS -p lock_nolock -r 1024 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT" "mkfs.at:138" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:138" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:139: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:139" -( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +$as_echo "$at_srcdir/mkfs.at:139: gfs2_edit -p rindex \$GFS_TGT | grep ri_addr | awk '{print \$2, \$2 % 16; if (\$2 % 16 != 0) { exit 1 }}'" +at_fn_check_prepare_notrace 'a shell pipeline' "mkfs.at:139" +( $at_check_trace; gfs2_edit -p rindex $GFS_TGT | grep ri_addr | awk '{print $2, $2 % 16; if ($2 % 16 != 0) { exit 1 }}' ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3463,23 +3476,11 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:139" $at_failed && at_fn_log_failure $at_traceon; } +# rhbz#1698858 { set +x -$as_echo "$at_srcdir/mkfs.at:140: \$GFS_MKFS -p lock_nolock -r 512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 512 $GFS_TGT" "mkfs.at:140" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 512 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:140" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:141: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:141" -( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +$as_echo "$at_srcdir/mkfs.at:141: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 $GFS_TGT" "mkfs.at:141" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:131072:6291456:512 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3489,62 +3490,24 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:141" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/mkfs.at:142: \$GFS_MKFS -p lock_nolock -r 219 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 219 $GFS_TGT" "mkfs.at:142" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 219 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:142" -$at_failed && at_fn_log_failure -$at_traceon; } + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_20 +#AT_START_21 +at_fn_group_banner 21 'mkfs.at:144' \ + "Values of rg_skip" " " 1 +at_xfail=no +( + $as_echo "21. $at_setup_line: testing $at_desc ..." + $at_traceon + { set +x -$as_echo "$at_srcdir/mkfs.at:143: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:143" -( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:143" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:144: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:144" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:144" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:145: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:145" -( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:145" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:146: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:146" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:146: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:146" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3567,24 +3530,62 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:147" $at_failed && at_fn_log_failure $at_traceon; } - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_20 -#AT_START_21 -at_fn_group_banner 21 'mkfs.at:150' \ - "Values of rg_data0, rg_data, rg_bitbytes" " " 1 -at_xfail=no -( - $as_echo "21. $at_setup_line: testing $at_desc ..." - $at_traceon - +{ set +x +$as_echo "$at_srcdir/mkfs.at:148: \$GFS_MKFS -p lock_nolock -r 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT" "mkfs.at:148" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:148" +$at_failed && at_fn_log_failure +$at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:152: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:152" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:149: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:149" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:149" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:150: \$GFS_MKFS -p lock_nolock -r 512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 512 $GFS_TGT" "mkfs.at:150" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:150" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:151: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:151" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:151" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:152: \$GFS_MKFS -p lock_nolock -r 219 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 219 $GFS_TGT" "mkfs.at:152" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 219 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3595,9 +3596,9 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:153: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:153" -( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +$as_echo "$at_srcdir/mkfs.at:153: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:153" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3608,9 +3609,9 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:154: \$GFS_MKFS -p lock_nolock -r 1024 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT" "mkfs.at:154" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:154: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:154" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3621,9 +3622,9 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:155: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:155" -( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +$as_echo "$at_srcdir/mkfs.at:155: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:155" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3634,9 +3635,9 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:156: \$GFS_MKFS -p lock_nolock -r 512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 512 $GFS_TGT" "mkfs.at:156" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:156: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:156" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3647,9 +3648,9 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:157: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:157" -( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +$as_echo "$at_srcdir/mkfs.at:157: rgskipcheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:157" +( $at_check_trace; rgskipcheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3659,62 +3660,24 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:157" $at_failed && at_fn_log_failure $at_traceon; } -{ set +x -$as_echo "$at_srcdir/mkfs.at:158: \$GFS_MKFS -p lock_nolock -r 219 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 219 $GFS_TGT" "mkfs.at:158" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 219 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:158" -$at_failed && at_fn_log_failure -$at_traceon; } + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_21 +#AT_START_22 +at_fn_group_banner 22 'mkfs.at:160' \ + "Values of rg_data0, rg_data, rg_bitbytes" " " 1 +at_xfail=no +( + $as_echo "22. $at_setup_line: testing $at_desc ..." + $at_traceon + { set +x -$as_echo "$at_srcdir/mkfs.at:159: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:159" -( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:159" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:160: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:160" -( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:160" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:161: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:161" -( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:161" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/mkfs.at:162: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:162" -( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:162: \$GFS_MKFS -p lock_nolock -r 2048 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT" "mkfs.at:162" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 2048 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3737,40 +3700,75 @@ at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:163" $at_failed && at_fn_log_failure $at_traceon; } - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" -#AT_STOP_21 -#AT_START_22 -at_fn_group_banner 22 'mkfs.at:166' \ - "Small filesystems" " " 1 -at_xfail=no -( - $as_echo "22. $at_setup_line: testing $at_desc ..." - $at_traceon - - { set +x -$as_echo "$at_srcdir/mkfs.at:168: rm -f \$GFS_TGT && truncate -s 32M \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:168" -( $at_check_trace; rm -f $GFS_TGT && truncate -s 32M ${GFS_TGT} +$as_echo "$at_srcdir/mkfs.at:164: \$GFS_MKFS -p lock_nolock -r 1024 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT" "mkfs.at:164" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 1024 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:168" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:164" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:168" >"$at_check_line_file" -(test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:168" { set +x -$as_echo "$at_srcdir/mkfs.at:169: \$GFS_MKFS -p lock_nolock \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock $GFS_TGT" "mkfs.at:169" -( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:165: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:165" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:165" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:166: \$GFS_MKFS -p lock_nolock -r 512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 512 $GFS_TGT" "mkfs.at:166" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 512 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:166" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:167: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:167" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:167" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:168: \$GFS_MKFS -p lock_nolock -r 219 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 219 $GFS_TGT" "mkfs.at:168" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 219 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:168" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:169: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:169" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3781,9 +3779,9 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:170: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:170" -( $at_check_trace; fsck.gfs2 -n $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:170: \$GFS_MKFS -p lock_nolock -r 32 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -r 32 $GFS_TGT" "mkfs.at:170" +( $at_check_trace; $GFS_MKFS -p lock_nolock -r 32 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3794,25 +3792,22 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:171: rm -f \$GFS_TGT && truncate -s 64M \${GFS_TGT}" -at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:171" -( $at_check_trace; rm -f $GFS_TGT && truncate -s 64M ${GFS_TGT} +$as_echo "$at_srcdir/mkfs.at:171: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:171" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_skip $at_status "$at_srcdir/mkfs.at:171" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:171" $at_failed && at_fn_log_failure $at_traceon; } -$as_echo "mkfs.at:171" >"$at_check_line_file" -(test ! -f ${GFS_TGT}) \ - && at_fn_check_skip 77 "$at_srcdir/mkfs.at:171" { set +x -$as_echo "$at_srcdir/mkfs.at:172: \$GFS_MKFS -p lock_nolock -j2 \$GFS_TGT" -at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -j2 $GFS_TGT" "mkfs.at:172" -( $at_check_trace; $GFS_MKFS -p lock_nolock -j2 $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:172: \$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT" "mkfs.at:172" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o test_topology=0:512:65536:393216:512 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3823,9 +3818,9 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/mkfs.at:173: fsck.gfs2 -n \$GFS_TGT" -at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:173" -( $at_check_trace; fsck.gfs2 -n $GFS_TGT +$as_echo "$at_srcdir/mkfs.at:173: rgrifieldscheck.sh \$GFS_TGT; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +at_fn_check_prepare_dynamic "rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "mkfs.at:173" +( $at_check_trace; rgrifieldscheck.sh $GFS_TGT; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -3841,14 +3836,112 @@ $at_traceon; } read at_status <"$at_status_file" #AT_STOP_22 #AT_START_23 -at_fn_group_banner 23 'fsck.at:4' \ - "Conflicting options" " " 2 +at_fn_group_banner 23 'mkfs.at:176' \ + "Small filesystems" " " 1 at_xfail=no ( $as_echo "23. $at_setup_line: testing $at_desc ..." $at_traceon +{ set +x +$as_echo "$at_srcdir/mkfs.at:178: rm -f \$GFS_TGT && truncate -s 32M \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:178" +( $at_check_trace; rm -f $GFS_TGT && truncate -s 32M ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:178" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:178" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:178" +{ set +x +$as_echo "$at_srcdir/mkfs.at:179: \$GFS_MKFS -p lock_nolock \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock $GFS_TGT" "mkfs.at:179" +( $at_check_trace; $GFS_MKFS -p lock_nolock $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:179" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:180: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:180" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:180" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:181: rm -f \$GFS_TGT && truncate -s 64M \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "mkfs.at:181" +( $at_check_trace; rm -f $GFS_TGT && truncate -s 64M ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_skip $at_status "$at_srcdir/mkfs.at:181" +$at_failed && at_fn_log_failure +$at_traceon; } + +$as_echo "mkfs.at:181" >"$at_check_line_file" +(test ! -f ${GFS_TGT}) \ + && at_fn_check_skip 77 "$at_srcdir/mkfs.at:181" +{ set +x +$as_echo "$at_srcdir/mkfs.at:182: \$GFS_MKFS -p lock_nolock -j2 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -j2 $GFS_TGT" "mkfs.at:182" +( $at_check_trace; $GFS_MKFS -p lock_nolock -j2 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:182" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/mkfs.at:183: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "mkfs.at:183" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/mkfs.at:183" +$at_failed && at_fn_log_failure +$at_traceon; } + + set +x + $at_times_p && times >"$at_times_file" +) 5>&1 2>&1 7>&- | eval $at_tee_pipe +read at_status <"$at_status_file" +#AT_STOP_23 +#AT_START_24 +at_fn_group_banner 24 'fsck.at:4' \ + "Conflicting options" " " 2 +at_xfail=no +( + $as_echo "24. $at_setup_line: testing $at_desc ..." + $at_traceon + + # Error code 16 is FSCK_USAGE { set +x $as_echo "$at_srcdir/fsck.at:7: fsck.gfs2 -y -n \$GFS_TGT" @@ -3932,13 +4025,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_23 -#AT_START_24 -at_fn_group_banner 24 'fsck.at:15' \ +#AT_STOP_24 +#AT_START_25 +at_fn_group_banner 25 'fsck.at:15' \ "Fix invalid block sizes" " " 2 at_xfail=no ( - $as_echo "24. $at_setup_line: testing $at_desc ..." + $as_echo "25. $at_setup_line: testing $at_desc ..." $at_traceon @@ -4286,13 +4379,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_24 -#AT_START_25 -at_fn_group_banner 25 'fsck.at:24' \ +#AT_STOP_25 +#AT_START_26 +at_fn_group_banner 26 'fsck.at:24' \ "Fix invalid goal blocks" " " 2 at_xfail=no ( - $as_echo "25. $at_setup_line: testing $at_desc ..." + $as_echo "26. $at_setup_line: testing $at_desc ..." $at_traceon @@ -4368,13 +4461,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_25 -#AT_START_26 -at_fn_group_banner 26 'fsck.at:29' \ +#AT_STOP_26 +#AT_START_27 +at_fn_group_banner 27 'fsck.at:29' \ "Fix bad resource group #0" " " 2 at_xfail=no ( - $as_echo "26. $at_setup_line: testing $at_desc ..." + $as_echo "27. $at_setup_line: testing $at_desc ..." $at_traceon @@ -4450,13 +4543,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_26 -#AT_START_27 -at_fn_group_banner 27 'fsck.at:34' \ +#AT_STOP_27 +#AT_START_28 +at_fn_group_banner 28 'fsck.at:34' \ "Fix bad resource group #1" " " 2 at_xfail=no ( - $as_echo "27. $at_setup_line: testing $at_desc ..." + $as_echo "28. $at_setup_line: testing $at_desc ..." $at_traceon @@ -4532,13 +4625,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_27 -#AT_START_28 -at_fn_group_banner 28 'fsck.at:44' \ +#AT_STOP_28 +#AT_START_29 +at_fn_group_banner 29 'fsck.at:44' \ "Fix bad rindex entry #1" " " 2 at_xfail=no ( - $as_echo "28. $at_setup_line: testing $at_desc ..." + $as_echo "29. $at_setup_line: testing $at_desc ..." $at_traceon @@ -4614,13 +4707,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_28 -#AT_START_29 -at_fn_group_banner 29 'fsck.at:49' \ +#AT_STOP_29 +#AT_START_30 +at_fn_group_banner 30 'fsck.at:49' \ "Rebuild bad journal" " " 2 at_xfail=no ( - $as_echo "29. $at_setup_line: testing $at_desc ..." + $as_echo "30. $at_setup_line: testing $at_desc ..." $at_traceon @@ -4696,13 +4789,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_29 -#AT_START_30 -at_fn_group_banner 30 'fsck.at:58' \ +#AT_STOP_30 +#AT_START_31 +at_fn_group_banner 31 'fsck.at:58' \ "gfs2 format versions" " " 2 at_xfail=no ( - $as_echo "30. $at_setup_line: testing $at_desc ..." + $as_echo "31. $at_setup_line: testing $at_desc ..." $at_traceon @@ -4736,9 +4829,9 @@ $at_failed && at_fn_log_failure $at_traceon; } { set +x -$as_echo "$at_srcdir/fsck.at:62: echo \"set sb { sb_fs_format: 1802 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" +$as_echo "$at_srcdir/fsck.at:62: echo \"set sb { sb_fs_format: 1803 }\" | gfs2l \${GFS_TGT}; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:62" -( $at_check_trace; echo "set sb { sb_fs_format: 1802 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +( $at_check_trace; echo "set sb { sb_fs_format: 1803 }" | gfs2l ${GFS_TGT}; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter @@ -4800,19 +4893,45 @@ echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:68" $at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:69: mkfs.gfs2 -O -p lock_nolock -o format=1802 \${GFS_TGT}" +at_fn_check_prepare_notrace 'a ${...} parameter expansion' "fsck.at:69" +( $at_check_trace; mkfs.gfs2 -O -p lock_nolock -o format=1802 ${GFS_TGT} +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:69" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/fsck.at:70: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "fsck.at:70" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/fsck.at:70" +$at_failed && at_fn_log_failure $at_traceon; } set +x $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_30 -#AT_START_31 -at_fn_group_banner 31 'edit.at:4' \ +#AT_STOP_31 +#AT_START_32 +at_fn_group_banner 32 'edit.at:4' \ "Save/restoremeta, defaults" " " 3 at_xfail=no ( - $as_echo "31. $at_setup_line: testing $at_desc ..." + $as_echo "32. $at_setup_line: testing $at_desc ..." $at_traceon @@ -4920,13 +5039,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_31 -#AT_START_32 -at_fn_group_banner 32 'edit.at:17' \ +#AT_STOP_32 +#AT_START_33 +at_fn_group_banner 33 'edit.at:17' \ "Save/restoremeta, no compression" " " 3 at_xfail=no ( - $as_echo "32. $at_setup_line: testing $at_desc ..." + $as_echo "33. $at_setup_line: testing $at_desc ..." $at_traceon @@ -5018,13 +5137,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_32 -#AT_START_33 -at_fn_group_banner 33 'edit.at:27' \ +#AT_STOP_33 +#AT_START_34 +at_fn_group_banner 34 'edit.at:27' \ "Save/restoremeta, min. block size" " " 3 at_xfail=no ( - $as_echo "33. $at_setup_line: testing $at_desc ..." + $as_echo "34. $at_setup_line: testing $at_desc ..." $at_traceon @@ -5116,13 +5235,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_33 -#AT_START_34 -at_fn_group_banner 34 'edit.at:37' \ +#AT_STOP_34 +#AT_START_35 +at_fn_group_banner 35 'edit.at:37' \ "Save/restoremeta, 4 journals" " " 3 at_xfail=no ( - $as_echo "34. $at_setup_line: testing $at_desc ..." + $as_echo "35. $at_setup_line: testing $at_desc ..." $at_traceon @@ -5214,13 +5333,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_34 -#AT_START_35 -at_fn_group_banner 35 'edit.at:47' \ +#AT_STOP_35 +#AT_START_36 +at_fn_group_banner 36 'edit.at:47' \ "Save/restoremeta, min. block size, 4 journals" " " 3 at_xfail=no ( - $as_echo "35. $at_setup_line: testing $at_desc ..." + $as_echo "36. $at_setup_line: testing $at_desc ..." $at_traceon @@ -5312,13 +5431,13 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_35 -#AT_START_36 -at_fn_group_banner 36 'edit.at:57' \ +#AT_STOP_36 +#AT_START_37 +at_fn_group_banner 37 'edit.at:57' \ "Save metadata to /dev/null" " " 3 at_xfail=no ( - $as_echo "36. $at_setup_line: testing $at_desc ..." + $as_echo "37. $at_setup_line: testing $at_desc ..." $at_traceon @@ -5381,50 +5500,10 @@ $at_traceon; } $at_times_p && times >"$at_times_file" ) 5>&1 2>&1 7>&- | eval $at_tee_pipe read at_status <"$at_status_file" -#AT_STOP_36 -#AT_START_37 -at_fn_group_banner 37 'libgfs2.at:3' \ - "meta.c" " " 4 -at_xfail=no -( - $as_echo "37. $at_setup_line: testing $at_desc ..." - $at_traceon - - -{ set +x -$as_echo "$at_srcdir/libgfs2.at:3: test x\"\$ENABLE_UNIT_TESTS\" = \"xyes\" || exit 77" -at_fn_check_prepare_dynamic "test x\"$ENABLE_UNIT_TESTS\" = \"xyes\" || exit 77" "libgfs2.at:3" -( $at_check_trace; test x"$ENABLE_UNIT_TESTS" = "xyes" || exit 77 -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/libgfs2.at:3" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/libgfs2.at:4: check_meta; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "check_meta; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "libgfs2.at:4" -( $at_check_trace; check_meta; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -echo stderr:; cat "$at_stderr" -echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/libgfs2.at:4" -$at_failed && at_fn_log_failure -$at_traceon; } - - set +x - $at_times_p && times >"$at_times_file" -) 5>&1 2>&1 7>&- | eval $at_tee_pipe -read at_status <"$at_status_file" #AT_STOP_37 #AT_START_38 -at_fn_group_banner 38 'libgfs2.at:7' \ - "rgrp.c" " " 4 +at_fn_group_banner 38 'tune.at:4' \ + "Format version" " " 4 at_xfail=no ( $as_echo "38. $at_setup_line: testing $at_desc ..." @@ -5432,28 +5511,97 @@ at_xfail=no { set +x -$as_echo "$at_srcdir/libgfs2.at:7: test x\"\$ENABLE_UNIT_TESTS\" = \"xyes\" || exit 77" -at_fn_check_prepare_dynamic "test x\"$ENABLE_UNIT_TESTS\" = \"xyes\" || exit 77" "libgfs2.at:7" -( $at_check_trace; test x"$ENABLE_UNIT_TESTS" = "xyes" || exit 77 -) >>"$at_stdout" 2>>"$at_stderr" 5>&- -at_status=$? at_failed=false -$at_check_filter -at_fn_diff_devnull "$at_stderr" || at_failed=: -at_fn_diff_devnull "$at_stdout" || at_failed=: -at_fn_check_status 0 $at_status "$at_srcdir/libgfs2.at:7" -$at_failed && at_fn_log_failure -$at_traceon; } - -{ set +x -$as_echo "$at_srcdir/libgfs2.at:8: check_rgrp; x=\$?; if test \$x -eq 127; then exit 77; else exit \$x; fi" -at_fn_check_prepare_dynamic "check_rgrp; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi" "libgfs2.at:8" -( $at_check_trace; check_rgrp; x=$?; if test $x -eq 127; then exit 77; else exit $x; fi +$as_echo "$at_srcdir/tune.at:6: \$GFS_MKFS -p lock_nolock -o format=1802 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o format=1802 $GFS_TGT" "tune.at:6" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o format=1802 $GFS_TGT ) >>"$at_stdout" 2>>"$at_stderr" 5>&- at_status=$? at_failed=false $at_check_filter echo stderr:; cat "$at_stderr" echo stdout:; cat "$at_stdout" -at_fn_check_status 0 $at_status "$at_srcdir/libgfs2.at:8" +at_fn_check_status 0 $at_status "$at_srcdir/tune.at:6" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Exit code 65 == EX_DATAERR (sysexits.h) +{ set +x +$as_echo "$at_srcdir/tune.at:8: tunegfs2 -r 0 \$GFS_TGT" +at_fn_check_prepare_dynamic "tunegfs2 -r 0 $GFS_TGT" "tune.at:8" +( $at_check_trace; tunegfs2 -r 0 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 65 $at_status "$at_srcdir/tune.at:8" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Regress not supported +{ set +x +$as_echo "$at_srcdir/tune.at:10: tunegfs2 -r 1801 \$GFS_TGT" +at_fn_check_prepare_dynamic "tunegfs2 -r 1801 $GFS_TGT" "tune.at:10" +( $at_check_trace; tunegfs2 -r 1801 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 65 $at_status "$at_srcdir/tune.at:10" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Format 1803 does not exist +{ set +x +$as_echo "$at_srcdir/tune.at:12: tunegfs2 -r 1803 \$GFS_TGT" +at_fn_check_prepare_dynamic "tunegfs2 -r 1803 $GFS_TGT" "tune.at:12" +( $at_check_trace; tunegfs2 -r 1803 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 65 $at_status "$at_srcdir/tune.at:12" +$at_failed && at_fn_log_failure +$at_traceon; } + +# Normal version bump +{ set +x +$as_echo "$at_srcdir/tune.at:14: \$GFS_MKFS -p lock_nolock -o format=1801 \$GFS_TGT" +at_fn_check_prepare_dynamic "$GFS_MKFS -p lock_nolock -o format=1801 $GFS_TGT" "tune.at:14" +( $at_check_trace; $GFS_MKFS -p lock_nolock -o format=1801 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/tune.at:14" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/tune.at:15: tunegfs2 -r 1802 \$GFS_TGT" +at_fn_check_prepare_dynamic "tunegfs2 -r 1802 $GFS_TGT" "tune.at:15" +( $at_check_trace; tunegfs2 -r 1802 $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/tune.at:15" +$at_failed && at_fn_log_failure +$at_traceon; } + +{ set +x +$as_echo "$at_srcdir/tune.at:16: fsck.gfs2 -n \$GFS_TGT" +at_fn_check_prepare_dynamic "fsck.gfs2 -n $GFS_TGT" "tune.at:16" +( $at_check_trace; fsck.gfs2 -n $GFS_TGT +) >>"$at_stdout" 2>>"$at_stderr" 5>&- +at_status=$? at_failed=false +$at_check_filter +echo stderr:; cat "$at_stderr" +echo stdout:; cat "$at_stdout" +at_fn_check_status 0 $at_status "$at_srcdir/tune.at:16" $at_failed && at_fn_log_failure $at_traceon; } From a074a7436dea5e323060c78a562136f33b0c82c5 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Mon, 15 Mar 2021 10:41:35 +0000 Subject: [PATCH 28/44] * Mon Mar 15 2021 Andrew Price - 3.4.1-1 - New upstream version --- .gitignore | 1 + gfs2-utils.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index facb12a..2daf545 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /gfs2-utils-3.3.0.tar.gz /gfs2-utils-3.4.0.tar.gz +/gfs2-utils-3.4.1.tar.gz diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 8616ac3..3b7c2cc 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,5 +1,5 @@ Name: gfs2-utils -Version: 3.4.0 +Version: 3.4.1 Release: 1%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) @@ -63,6 +63,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Mon Mar 15 2021 Andrew Price - 3.4.1-1 +- New upstream version + * Mon Mar 08 2021 Andrew Price - 3.4.0-1 - New upstream version - Update testsuite script diff --git a/sources b/sources index f879e91..b779448 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gfs2-utils-3.4.0.tar.gz) = 01d3f582705a5dc9ee9919d3cd5798118233797f1400a7d2387a2e5072cdc347c6d5c8140aa242c0d00a2b26f31ae19386938f22761c76b3dbfb7a71f97c7420 +SHA512 (gfs2-utils-3.4.1.tar.gz) = 998c6d15e2f4b00ffffe18b8ab84f3ae11daf7ba4d10bc4e5d602ecc370b8f4de2fe44af4d7b9926785d4a39680139a9ae8a66d6863ff19b1a60fd999a60495e From c1bedfabfa631a72a6ab8c83b82354c2cdc5df6d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 22 Jul 2021 00:10:11 +0000 Subject: [PATCH 29/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 3b7c2cc..43f955e 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.4.1 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -63,6 +63,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jul 22 2021 Fedora Release Engineering - 3.4.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Mon Mar 15 2021 Andrew Price - 3.4.1-1 - New upstream version From 009a3940f3987324440465ec08666c4d87480629 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 04:21:55 +0000 Subject: [PATCH 30/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 43f955e..e79c924 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.4.1 -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -63,6 +63,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 3.4.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Thu Jul 22 2021 Fedora Release Engineering - 3.4.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 56e8974ead862577d526a9e17918d3de3957b8ec Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Thu, 23 Jun 2022 15:41:47 +0100 Subject: [PATCH 31/44] * Thu Jun 23 2022 Andrew Price - 3.4.1-4 - gfs2/edit: always use "%s"-style format for printf()-style functions - Custom patch to fix a printw() call missed by the above Fixes a build failure due to format-security warnings being treated as errors --- ...le_format_for_printf_style_functions.patch | 33 +++++++++++++++++++ 1-fix-missed-printw.patch | 12 +++++++ gfs2-utils.spec | 9 ++++- 3 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch create mode 100644 1-fix-missed-printw.patch diff --git a/0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch b/0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch new file mode 100644 index 0000000..1c5d7d7 --- /dev/null +++ b/0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch @@ -0,0 +1,33 @@ +commit 17fb470356a6d55988f05ac70f06b382ef982604 +Author: Sergei Trofimovich +Date: Sun Nov 7 09:00:31 2021 +0000 + + gfs2/edit: always use "%s"-style format for printf()-style functions + + `ncurses-6.3` added printf-style function attributes and now makes + it easier to catch cases when user input is used in place of format + string when built with CFLAGS=-Werror=format-security: + + hexedit.c:227:9: error: format not a string literal and no format arguments [-Werror=format-security] + 227 | printw(s2); + | ^~~~~~ + + Let's wrap all the missing places with "%s" format. + +diff --git a/gfs2/edit/hexedit.c b/gfs2/edit/hexedit.c +index 798639b5..88ee3e5f 100644 +--- a/gfs2/edit/hexedit.c ++++ b/gfs2/edit/hexedit.c +@@ -221,10 +221,10 @@ static void gfs2instr(const char *s1, const char *s2) + { + COLORS_HIGHLIGHT; + move(line,0); +- printw(s1); ++ printw("%s", s1); + COLORS_NORMAL; + move(line,17); +- printw(s2); ++ printw("%s", s2); + line++; + } + diff --git a/1-fix-missed-printw.patch b/1-fix-missed-printw.patch new file mode 100644 index 0000000..be4c2d7 --- /dev/null +++ b/1-fix-missed-printw.patch @@ -0,0 +1,12 @@ +diff -urN gfs2-utils-3.4.1.old/gfs2/edit/gfs2hex.c gfs2-utils-3.4.1/gfs2/edit/gfs2hex.c +--- gfs2-utils-3.4.1.old/gfs2/edit/gfs2hex.c 2022-06-23 15:28:41.957428587 +0100 ++++ gfs2-utils-3.4.1/gfs2/edit/gfs2hex.c 2022-06-23 15:29:38.013944443 +0100 +@@ -374,7 +374,7 @@ + if (termlines) { + check_highlight(TRUE); + move(line,2); +- printw(title); ++ printw("%s", title); + check_highlight(FALSE); + } + else diff --git a/gfs2-utils.spec b/gfs2-utils.spec index e79c924..d0bcb5c 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.4.1 -Release: 3%{?dist} +Release: 4%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -21,6 +21,8 @@ BuildRequires: bzip2-devel BuildRequires: make Source: https://releases.pagure.org/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://pagure.io/gfs2-utils +Patch: 0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch +Patch: 1-fix-missed-printw.patch %prep %autosetup -p1 @@ -63,6 +65,11 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jun 23 2022 Andrew Price - 3.4.1-4 +- gfs2/edit: always use "%s"-style format for printf()-style functions +- Custom patch to fix a printw() call missed by the above + Fixes a build failure due to format-security warnings being treated as errors + * Thu Jan 20 2022 Fedora Release Engineering - 3.4.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From 05ff9d3929e95a73b5d9437badaeb747b6e62999 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 21 Jul 2022 04:32:13 +0000 Subject: [PATCH 32/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index d0bcb5c..d387ad7 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.4.1 -Release: 4%{?dist} +Release: 5%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -65,6 +65,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jul 21 2022 Fedora Release Engineering - 3.4.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jun 23 2022 Andrew Price - 3.4.1-4 - gfs2/edit: always use "%s"-style format for printf()-style functions - Custom patch to fix a printw() call missed by the above From 5af69c86ff0a4781a669d6435f993749fe836366 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 04:47:19 +0000 Subject: [PATCH 33/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index d387ad7..d70129c 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.4.1 -Release: 5%{?dist} +Release: 6%{?dist} License: GPLv2+ and LGPLv2+ Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} @@ -65,6 +65,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 3.4.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Thu Jul 21 2022 Fedora Release Engineering - 3.4.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 1e1999af85f70a41f427c790668ed8eb34583378 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Thu, 9 Feb 2023 16:32:20 +0000 Subject: [PATCH 34/44] * Thu Feb 09 2023 Andrew Price - 3.5.0-1 - New upstream release - Drop all patches - Exclude i686 for https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval - Migrate to SPDX license identifier --- .gitignore | 1 + ...le_format_for_printf_style_functions.patch | 33 ------------------- 1-fix-missed-printw.patch | 12 ------- gfs2-utils.spec | 17 +++++++--- sources | 2 +- 5 files changed, 14 insertions(+), 51 deletions(-) delete mode 100644 0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch delete mode 100644 1-fix-missed-printw.patch diff --git a/.gitignore b/.gitignore index 2daf545..e258909 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /gfs2-utils-3.3.0.tar.gz /gfs2-utils-3.4.0.tar.gz /gfs2-utils-3.4.1.tar.gz +/gfs2-utils-3.5.0.tar.gz diff --git a/0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch b/0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch deleted file mode 100644 index 1c5d7d7..0000000 --- a/0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch +++ /dev/null @@ -1,33 +0,0 @@ -commit 17fb470356a6d55988f05ac70f06b382ef982604 -Author: Sergei Trofimovich -Date: Sun Nov 7 09:00:31 2021 +0000 - - gfs2/edit: always use "%s"-style format for printf()-style functions - - `ncurses-6.3` added printf-style function attributes and now makes - it easier to catch cases when user input is used in place of format - string when built with CFLAGS=-Werror=format-security: - - hexedit.c:227:9: error: format not a string literal and no format arguments [-Werror=format-security] - 227 | printw(s2); - | ^~~~~~ - - Let's wrap all the missing places with "%s" format. - -diff --git a/gfs2/edit/hexedit.c b/gfs2/edit/hexedit.c -index 798639b5..88ee3e5f 100644 ---- a/gfs2/edit/hexedit.c -+++ b/gfs2/edit/hexedit.c -@@ -221,10 +221,10 @@ static void gfs2instr(const char *s1, const char *s2) - { - COLORS_HIGHLIGHT; - move(line,0); -- printw(s1); -+ printw("%s", s1); - COLORS_NORMAL; - move(line,17); -- printw(s2); -+ printw("%s", s2); - line++; - } - diff --git a/1-fix-missed-printw.patch b/1-fix-missed-printw.patch deleted file mode 100644 index be4c2d7..0000000 --- a/1-fix-missed-printw.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urN gfs2-utils-3.4.1.old/gfs2/edit/gfs2hex.c gfs2-utils-3.4.1/gfs2/edit/gfs2hex.c ---- gfs2-utils-3.4.1.old/gfs2/edit/gfs2hex.c 2022-06-23 15:28:41.957428587 +0100 -+++ gfs2-utils-3.4.1/gfs2/edit/gfs2hex.c 2022-06-23 15:29:38.013944443 +0100 -@@ -374,7 +374,7 @@ - if (termlines) { - check_highlight(TRUE); - move(line,2); -- printw(title); -+ printw("%s", title); - check_highlight(FALSE); - } - else diff --git a/gfs2-utils.spec b/gfs2-utils.spec index d70129c..586bcae 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,11 +1,14 @@ Name: gfs2-utils -Version: 3.4.1 -Release: 6%{?dist} -License: GPLv2+ and LGPLv2+ +Version: 3.5.0 +Release: 1%{?dist} +# Refer to doc/README.licence in the upstream tarball +License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) %ifnarch %{arm} %{?fedora:Recommends: kmod(gfs2.ko) kmod(dlm.ko)} %endif +# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +ExcludeArch: %{ix86} BuildRequires: ncurses-devel BuildRequires: kernel-headers BuildRequires: automake @@ -21,8 +24,6 @@ BuildRequires: bzip2-devel BuildRequires: make Source: https://releases.pagure.org/gfs2-utils/gfs2-utils-%{version}.tar.gz URL: https://pagure.io/gfs2-utils -Patch: 0-gfs2_edit_always_use_s_style_format_for_printf_style_functions.patch -Patch: 1-fix-missed-printw.patch %prep %autosetup -p1 @@ -65,6 +66,12 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Feb 09 2023 Andrew Price - 3.5.0-1 +- New upstream release +- Drop all patches +- Exclude i686 for https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +- Migrate to SPDX license identifier + * Thu Jan 19 2023 Fedora Release Engineering - 3.4.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild diff --git a/sources b/sources index b779448..310735a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gfs2-utils-3.4.1.tar.gz) = 998c6d15e2f4b00ffffe18b8ab84f3ae11daf7ba4d10bc4e5d602ecc370b8f4de2fe44af4d7b9926785d4a39680139a9ae8a66d6863ff19b1a60fd999a60495e +SHA512 (gfs2-utils-3.5.0.tar.gz) = 9fb47bab0b082b4379ea0ccb5066a95a9dfb5912cde9ca950b7771a4699ecf3df1f99ebd709893866eaffa77f7d8894f6fadef423df79e3f7563d8f94d137765 From c378aa91c68f5dd977cd17499bfa2372c9ec3e43 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Tue, 11 Apr 2023 18:37:03 +0100 Subject: [PATCH 35/44] * Tue Apr 11 2023 Andrew Price - 3.5.1-1 - New upstream release --- .gitignore | 1 + gfs2-utils.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index e258909..0c329f8 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /gfs2-utils-3.4.0.tar.gz /gfs2-utils-3.4.1.tar.gz /gfs2-utils-3.5.0.tar.gz +/gfs2-utils-3.5.1.tar.gz diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 586bcae..e95949b 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,5 +1,5 @@ Name: gfs2-utils -Version: 3.5.0 +Version: 3.5.1 Release: 1%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later @@ -66,6 +66,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Tue Apr 11 2023 Andrew Price - 3.5.1-1 +- New upstream release + * Thu Feb 09 2023 Andrew Price - 3.5.0-1 - New upstream release - Drop all patches diff --git a/sources b/sources index 310735a..4278534 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gfs2-utils-3.5.0.tar.gz) = 9fb47bab0b082b4379ea0ccb5066a95a9dfb5912cde9ca950b7771a4699ecf3df1f99ebd709893866eaffa77f7d8894f6fadef423df79e3f7563d8f94d137765 +SHA512 (gfs2-utils-3.5.1.tar.gz) = 08c7b1870b1fb76496f7ab4ce3c121e4e5f5a37760831536817ed880ef030d765a533c53ba9913ae080b4a98b4efaffa112fcf92acd4e939199d1dae8d0e6f9b From 8a2056d72b6047abdb5a38ddc0cafd2528231df3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 21:13:19 +0000 Subject: [PATCH 36/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index e95949b..75a2f4f 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.5.1 -Release: 1%{?dist} +Release: 2%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) @@ -66,6 +66,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 3.5.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Tue Apr 11 2023 Andrew Price - 3.5.1-1 - New upstream release From 2a63457c456237db8a83f32d94d847296b9ed00c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 20:41:10 +0000 Subject: [PATCH 37/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 75a2f4f..5a3969b 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.5.1 -Release: 2%{?dist} +Release: 3%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) @@ -66,6 +66,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Fri Jan 19 2024 Fedora Release Engineering - 3.5.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Wed Jul 19 2023 Fedora Release Engineering - 3.5.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From e87fb43e6fdc0d47d8d596a0e563854008c34cb0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jan 2024 12:56:36 +0000 Subject: [PATCH 38/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 5a3969b..b64b2dc 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.5.1 -Release: 3%{?dist} +Release: 4%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) @@ -66,6 +66,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Wed Jan 24 2024 Fedora Release Engineering - 3.5.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Fedora Release Engineering - 3.5.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 5a9f1acadd7a7279e47c0b6cf9f4742bb46ccedc Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 00:35:26 +0000 Subject: [PATCH 39/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index b64b2dc..a8a7f45 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.5.1 -Release: 4%{?dist} +Release: 5%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) @@ -66,6 +66,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jul 18 2024 Fedora Release Engineering - 3.5.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Wed Jan 24 2024 Fedora Release Engineering - 3.5.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 11929a37617d1c91789c8c47764c74797f2e4997 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 19:57:40 +0000 Subject: [PATCH 40/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index a8a7f45..845a3ff 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.5.1 -Release: 5%{?dist} +Release: 6%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) @@ -66,6 +66,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 3.5.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Thu Jul 18 2024 Fedora Release Engineering - 3.5.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 9914a4c60a73ccffb857a41715c2bc513544baf3 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Mon, 20 Jan 2025 18:06:53 +0000 Subject: [PATCH 41/44] * Mon Jan 20 2025 Andrew Price - 3.5.1-7 - Don't hardcode /usr/sbin in the spec --- gfs2-utils.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 845a3ff..778e1d5 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.5.1 -Release: 6%{?dist} +Release: 7%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) @@ -39,8 +39,8 @@ make check || { cat tests/testsuite.log; exit 1; } %install %make_install # Don't ship gfs2_{trace,lockcapture} in this package -rm -f %{buildroot}/usr/sbin/gfs2_trace -rm -f %{buildroot}/usr/sbin/gfs2_lockcapture +rm -f %{buildroot}%{_sbindir}/gfs2_trace +rm -f %{buildroot}%{_sbindir}/gfs2_lockcapture rm -f %{buildroot}%{_mandir}/man8/gfs2_trace.8 rm -f %{buildroot}%{_mandir}/man8/gfs2_lockcapture.8 @@ -66,6 +66,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Mon Jan 20 2025 Andrew Price - 3.5.1-7 +- Don't hardcode /usr/sbin in the spec + * Thu Jan 16 2025 Fedora Release Engineering - 3.5.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 0d360ede59aafd48958f891bb7f5d79eb654b0d4 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Thu, 27 Feb 2025 17:13:30 +0000 Subject: [PATCH 42/44] * Thu Feb 27 2025 Andrew Price - 3.6.1-1 - New upstream release --- .gitignore | 1 + gfs2-utils.spec | 8 +++++--- sources | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 0c329f8..3076a6f 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /gfs2-utils-3.4.1.tar.gz /gfs2-utils-3.5.0.tar.gz /gfs2-utils-3.5.1.tar.gz +/gfs2-utils-3.6.1.tar.gz diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 778e1d5..58beb29 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils -Version: 3.5.1 -Release: 7%{?dist} +Version: 3.6.1 +Release: 1%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) @@ -55,7 +55,6 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_sbindir}/gfs2_grow %{_sbindir}/gfs2_jadd %{_sbindir}/mkfs.gfs2 -%{_sbindir}/gfs2_convert %{_sbindir}/gfs2_edit %{_sbindir}/tunegfs2 %{_sbindir}/glocktop @@ -66,6 +65,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Thu Feb 27 2025 Andrew Price - 3.6.1-1 +- New upstream release + * Mon Jan 20 2025 Andrew Price - 3.5.1-7 - Don't hardcode /usr/sbin in the spec diff --git a/sources b/sources index 4278534..bf0a0ab 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (gfs2-utils-3.5.1.tar.gz) = 08c7b1870b1fb76496f7ab4ce3c121e4e5f5a37760831536817ed880ef030d765a533c53ba9913ae080b4a98b4efaffa112fcf92acd4e939199d1dae8d0e6f9b +SHA512 (gfs2-utils-3.6.1.tar.gz) = c620cd7cac29af927a6325ffe024f3090285083f8a094935f318026e7fadb9b63cdbccc4962141ff93a2994fe32d138bf1ff999a58dfe268c034156132785346 From 940e1380316390487b89742392d76a7e43575db4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 21:20:59 +0000 Subject: [PATCH 43/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- gfs2-utils.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gfs2-utils.spec b/gfs2-utils.spec index 58beb29..3f1220a 100644 --- a/gfs2-utils.spec +++ b/gfs2-utils.spec @@ -1,6 +1,6 @@ Name: gfs2-utils Version: 3.6.1 -Release: 1%{?dist} +Release: 2%{?dist} # Refer to doc/README.licence in the upstream tarball License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Utilities for managing the global file system (GFS2) @@ -65,6 +65,9 @@ modifying, and correcting inconsistencies in GFS2 file systems. %{_prefix}/lib/udev/rules.d/82-gfs2-withdraw.rules %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 3.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Thu Feb 27 2025 Andrew Price - 3.6.1-1 - New upstream release From 1cd5e8054480bdecdc4a5d84de6661712e19d329 Mon Sep 17 00:00:00 2001 From: Andrew Price Date: Mon, 28 Jul 2025 11:21:17 +0100 Subject: [PATCH 44/44] Migrate tests to tmt For https://fedoraproject.org/wiki/Changes/DisableSTI --- .fmf/version | 1 + plans/testsuite.fmf | 5 +++++ tests/tests.yml | 11 ----------- tests/testsuite.fmf | 2 ++ 4 files changed, 8 insertions(+), 11 deletions(-) create mode 100644 .fmf/version create mode 100644 plans/testsuite.fmf delete mode 100644 tests/tests.yml create mode 100644 tests/testsuite.fmf diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/plans/testsuite.fmf b/plans/testsuite.fmf new file mode 100644 index 0000000..2f86880 --- /dev/null +++ b/plans/testsuite.fmf @@ -0,0 +1,5 @@ +summary: Run testsuite +discover: + how: fmf +execute: + how: tmt diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100644 index aaaac51..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,11 +0,0 @@ -- hosts: localhost - roles: - - role: standard-test-basic - tags: - - classic - environment: - PATH: ".:{{ ansible_env.PATH }}" - tests: - - upstream_test_suite: - dir: . - run: ./testsuite diff --git a/tests/testsuite.fmf b/tests/testsuite.fmf new file mode 100644 index 0000000..dd9714f --- /dev/null +++ b/tests/testsuite.fmf @@ -0,0 +1,2 @@ +summary: Upstream testsuite +test: ./testsuite