Signed-off-by: Cyril Hrubis <chrubis@xxxxxxx> --- v2: - make use of grep -c instead of wc -l - Add WRITE_ZEROES string to the grep regexp tests/loop/011 | 37 +++++++++++++++++++++++++++++++++++++ tests/loop/011.out | 3 +++ 2 files changed, 40 insertions(+) create mode 100755 tests/loop/011 create mode 100644 tests/loop/011.out diff --git a/tests/loop/011 b/tests/loop/011 new file mode 100755 index 0000000..baabe5c --- /dev/null +++ b/tests/loop/011 @@ -0,0 +1,37 @@ +#!/bin/bash +# SPDX-License-Identifier: GPL-3.0+ +# Copyright (C) 2024 Cyril Hrubis +# +# Regression test for patch "loop: Disable fallocate() zero and discard if not supported". +# + +. tests/loop/rc +DESCRIPTION="Make sure unsupported backing file fallocate does not fill dmesg with errors" + +requires() { + _have_program mkfs.ext2 +} + +test() { + local loop_dev; + echo "Running ${TEST_NAME}" + + mkdir "$TMPDIR/tmpfs" + mount -t tmpfs testfs "$TMPDIR/tmpfs" + dd if=/dev/zero of="$TMPDIR/tmpfs/disk.img" bs=1M count=100 &> /dev/null + + if ! loop_dev="$(losetup -f --show "$TMPDIR/tmpfs/disk.img")"; then + return 1 + fi + + mkfs.ext2 /dev/loop0 &> /dev/null + + errors=$(_dmesg_since_test_start |grep -c "operation not supported error, dev .*WRITE_ZEROES") + + losetup -d "$loop_dev" + umount "$TMPDIR/tmpfs" + + echo "Found $errors error(s) in dmesg" + + echo "Test complete" +} diff --git a/tests/loop/011.out b/tests/loop/011.out new file mode 100644 index 0000000..cd88fd5 --- /dev/null +++ b/tests/loop/011.out @@ -0,0 +1,3 @@ +Running loop/011 +Found 1 error(s) in dmesg +Test complete -- 2.44.2