Add a new test for specific squota scenarios (btrfs/301) Also made modifications for passing existing qgroups tests when possible and for passing all tests with simple quota enabled via mkfs and with squota-aware `btrfs check`. Since this required reading sysfs files of scratch fses, did a bit of refactoring to make those checks target a device rather than assuming TEST_DEV. btrfs/301 depends on the kernel patchset: https://lore.kernel.org/linux-btrfs/cover.1694563454.git.boris@xxxxxx/ and the btrfs-progs patchset: https://lore.kernel.org/linux-btrfs/cover.1695836680.git.boris@xxxxxx/ (and config appropriate binaries to use squota-aware versions) --- Changelog: v3: - change btrfs/400 to btrfs/301 v2: - new sysfs helpers in common - better gating for the new squota test - fix various formatting issues - get rid of noisy dmesg logging Boris Burkov (6): common: refactor sysfs_attr functions btrfs: quota mode helpers btrfs/301: new test for simple quotas btrfs: quota rescan helpers btrfs: use new rescan wrapper btrfs: skip squota incompatible tests common/btrfs | 56 ++++++ common/rc | 127 ++++++++----- tests/btrfs/017 | 1 + tests/btrfs/022 | 1 + tests/btrfs/028 | 2 +- tests/btrfs/057 | 1 + tests/btrfs/091 | 3 +- tests/btrfs/104 | 2 +- tests/btrfs/123 | 2 +- tests/btrfs/126 | 2 +- tests/btrfs/139 | 2 +- tests/btrfs/153 | 2 +- tests/btrfs/171 | 6 +- tests/btrfs/179 | 2 +- tests/btrfs/180 | 2 +- tests/btrfs/190 | 2 +- tests/btrfs/193 | 2 +- tests/btrfs/210 | 2 +- tests/btrfs/224 | 6 +- tests/btrfs/230 | 2 +- tests/btrfs/232 | 2 +- tests/btrfs/301 | 423 ++++++++++++++++++++++++++++++++++++++++++++ tests/btrfs/301.out | 2 + 23 files changed, 587 insertions(+), 65 deletions(-) create mode 100755 tests/btrfs/301 create mode 100644 tests/btrfs/301.out -- 2.42.0