Changes in v4 (per John's comments): - Verify sysfs_atomic_unit_min_byte attribute (nvme) - Perform atomic write test using sysfs_atomic_unit_min_byte (nvme) - fix spelling mis (nvme) - Remove tests that don't use the RWF_ATOMIC flag (scsi+nvme) Changes in v3: - Remove _have_xfs_io routine and use _have_program. - Comment cleanup in 0001 - Add SKIP_REASONS when xfs_io -A option is absent. - Keep lines <=80 characters. - Move device_requires logic in 0001 and 0002 to common/rc. Changes in v2: - Add additional comments in common/xfs - Remove xfs_io and kernel version checking - Simplify paths for sysfs attributes - Fix failed case output (missing echo) in scsi/009 - Add local variable that sets Test # and description (test_desc) for scsi/009 and nvme/059 - Only use scsi_debug device if no scsi test device is provided. - nvme testing done with qemu-nvme. - scsi testing done with scsi_debug and qemu-scsi (no atomic write support). No testing on atomic write capable scsi devices was done. ------------------------------------------------------------------------------------------- Add tests for atomic write support. Tests will be delivered for scsi (using scsi_debug) and nvme. NVMe can use the qemu-nvme emulated device that supports Controller-based Atomic Parameters (QEMU 9.2). The xfs_io utility delivered with the xfsprogs-devel package (version 6.12) is required by these tests. The Linux Kernel 6.11 (and greater) supports Atomic Writes and is required by these tests. Alan Adamson (2): scsi/009: add atomic write tests nvme/059: add atomic write tests common/rc | 8 ++ common/xfs | 58 ++++++++++++++ tests/nvme/059 | 146 ++++++++++++++++++++++++++++++++++++ tests/nvme/059.out | 9 +++ tests/scsi/009 | 183 +++++++++++++++++++++++++++++++++++++++++++++ tests/scsi/009.out | 13 ++++ 6 files changed, 417 insertions(+) create mode 100755 tests/nvme/059 create mode 100644 tests/nvme/059.out create mode 100755 tests/scsi/009 create mode 100644 tests/scsi/009.out -- 2.43.5