Blob Blame History Raw
From 1fc0439a5bd27697fb5daa911f776de4a69e0ca3 Mon Sep 17 00:00:00 2001
From: "Brian C. Lane" <bcl@redhat.com>
Date: Mon, 29 Feb 2016 14:31:35 -0800
Subject: [PATCH 28/28] tests: Fix t1700 failing on a host with a 4k xfs
 filesystem (#1260664)

The problem is that mkfs.xfs won't work if the file it is trying to
create is on a filesystem with a sector size larger than the passed
-ssize value. So a host with 4k disks (eg. s390) and the xfs filesystem
will fail with the error message:
    illegal sector size 512; hw sector is 4096

Failures setting up the environment for the test aren't parted bugs.
This stops treating mkfs and dd errors as test failures, skipping the fs
and logging a warning.

Related: rhbz#1260664
---
 tests/t1700-probe-fs.sh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/tests/t1700-probe-fs.sh b/tests/t1700-probe-fs.sh
index 94ed9ae..b13cec0 100755
--- a/tests/t1700-probe-fs.sh
+++ b/tests/t1700-probe-fs.sh
@@ -39,13 +39,13 @@ for type in ext2 ext3 ext4 btrfs xfs nilfs2 ntfs vfat hfsplus; do
       hfsplus) fsname=hfs+;;
   esac
 
-  # create an $type file system
+  # create an $type file system, creation failures are not parted bugs,
+  # skip the filesystem instead of failing the test.
   if [ "$type" = "xfs" ]; then
-      # Work around a problem with s390
-      mkfs.xfs -ssize=$ss -dfile,name=$dev,size=${n_sectors}s || fail=1
+      mkfs.xfs -ssize=$ss -dfile,name=$dev,size=${n_sectors}s || { warn_ "$ME: mkfs.$type failed, skipping"; continue; }
   else
-      dd if=/dev/null of=$dev bs=$ss seek=$n_sectors >/dev/null || fail=1
-      mkfs.$type $force $dev || { warn_ $ME: mkfs.$type failed; fail=1; continue; }
+      dd if=/dev/null of=$dev bs=$ss seek=$n_sectors >/dev/null || { warn_ "$ME: dd failed, skipping $type"; continue; }
+      mkfs.$type $force $dev || { warn_ "$ME: mkfs.$type failed skipping"; continue; }
   fi
 
   # probe the $type file system
@@ -57,7 +57,7 @@ done
 # Some features should indicate ext4 by themselves.
 for feature in uninit_bg flex_bg; do
   # create an ext3 file system
-  dd if=/dev/null of=$dev bs=1024 seek=4096 >/dev/null || fail=1
+  dd if=/dev/null of=$dev bs=1024 seek=4096 >/dev/null || skip_ "dd failed"
   mkfs.ext3 -F $dev >/dev/null || skip_ "mkfs.ext3 failed"
 
   # set the feature
-- 
2.5.0