[LTP] [PATCH 0/5] Add LVM and NFS tests for file data integrity

Martin Doucha mdoucha@suse.cz
Fri Nov 1 15:11:05 CET 2024


Most of the existing read/write tests don't verify whether the data written
to the filesystem can also be correctly read back. Add a new reusable test
program that will check file data integrity. The test randomly switches
between multiple read/write syscalls and allows setting direct (unbuffered)
I/O mode independently for read or write operations.

Also enable the new test in LVM and NFS runfiles with all combinations
of direct and buffered I/O operations.

Martin Doucha (5):
  Move preadv()/pwritev() backup definitions to LAPI
  Add safe readv()/writev() functions
  Add test for file data integrity
  Add support for setting loop device size in shell tests
  Add test for data integrity over NFS

 doc/developers/writing_tests.rst              |   2 +-
 include/lapi/pwritev2.h                       |  26 --
 include/lapi/{preadv2.h => uio.h}             |  30 +-
 include/tst_safe_macros.h                     |  13 +
 include/tst_safe_prw.h                        |  58 ++++
 lib/tst_safe_macros.c                         |  45 +++
 runtest/net.nfs                               |  11 +
 testcases/kernel/fs/fsplough/.gitignore       |   1 +
 testcases/kernel/fs/fsplough/Makefile         |   8 +
 testcases/kernel/fs/fsplough/fsplough.c       | 279 ++++++++++++++++++
 testcases/kernel/syscalls/preadv/preadv.h     |  22 --
 testcases/kernel/syscalls/preadv/preadv01.c   |   2 +-
 testcases/kernel/syscalls/preadv/preadv02.c   |   2 +-
 testcases/kernel/syscalls/preadv/preadv03.c   |   2 +-
 testcases/kernel/syscalls/preadv2/preadv201.c |   2 +-
 testcases/kernel/syscalls/preadv2/preadv202.c |   2 +-
 testcases/kernel/syscalls/preadv2/preadv203.c |   2 +-
 testcases/kernel/syscalls/pwritev/pwritev.h   |  22 --
 testcases/kernel/syscalls/pwritev/pwritev01.c |   2 +-
 testcases/kernel/syscalls/pwritev/pwritev02.c |   2 +-
 testcases/kernel/syscalls/pwritev/pwritev03.c |   2 +-
 .../kernel/syscalls/pwritev2/pwritev201.c     |   2 +-
 .../kernel/syscalls/pwritev2/pwritev202.c     |   2 +-
 testcases/lib/tst_test.sh                     |   3 +-
 testcases/misc/lvm/datafiles/runfile.tpl      |   4 +
 testcases/network/nfs/nfs_stress/nfs10.sh     |  36 +++
 26 files changed, 498 insertions(+), 84 deletions(-)
 delete mode 100644 include/lapi/pwritev2.h
 rename include/lapi/{preadv2.h => uio.h} (50%)
 create mode 100644 testcases/kernel/fs/fsplough/.gitignore
 create mode 100644 testcases/kernel/fs/fsplough/Makefile
 create mode 100644 testcases/kernel/fs/fsplough/fsplough.c
 delete mode 100644 testcases/kernel/syscalls/preadv/preadv.h
 delete mode 100644 testcases/kernel/syscalls/pwritev/pwritev.h
 create mode 100755 testcases/network/nfs/nfs_stress/nfs10.sh

-- 
2.46.0



More information about the ltp mailing list