From 40ef5e29113b10447f226a3e4a028d7d19c2bffc Mon Sep 17 00:00:00 2001 From: "Darrick J. Wong" Date: Thu, 5 Aug 2021 08:43:28 -0700 Subject: [PATCH] tests: skip u_direct_io if losetup fails This new test requires a loop device to run testing. While it checks for some "obvious" parameters that might cause the test to fail such as not being root and no losetup executable, it doesn't actually check that the losetup -a call succeeds. This causes a test regression in my package building container (where there is only a minimal /dev with no loop devices available) so I can't build debian packages. Fix the test to skip out if we can't create a loop device. Signed-off-by: Darrick J. Wong Signed-off-by: Theodore Ts'o --- tests/u_direct_io/script | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/u_direct_io/script b/tests/u_direct_io/script index 0b5d70830..b4f07752c 100644 --- a/tests/u_direct_io/script +++ b/tests/u_direct_io/script @@ -9,6 +9,11 @@ elif test ! -x $DEBUGFS_EXE; then else dd if=/dev/zero of=$TMPFILE bs=1M count=128 > /dev/null 2>&1 LOOP=$(losetup --show --sector-size 4096 -f $TMPFILE) + if [ ! -b "$LOOP" ]; then + echo "$test_name: $DESCRIPTION: skipped (no loop devices)" + rm -f $TMPFILE + exit 0 + fi echo mke2fs -F -o Linux -t ext4 -O ^metadata_csum,^uninit_bg -D \$LOOP > $OUT $MKE2FS -F -o Linux -t ext4 -O ^metadata_csum,^uninit_bg -D $LOOP 2>&1 | \ sed -f $cmd_dir/filter.sed >> $OUT -- 2.47.2