[LTP] [RFC] [PATCH 0/2] io_uring READ(V), WRITE(v) operation tests
Sachin Sant
sachinp@linux.ibm.com
Wed Mar 18 12:03:26 CET 2026
This patch series adds a set of test case to validate
IOURING READ & WRITE (io_uring03), READV & WRITEV (io_uring04)
operations. The patch also adds a common header file to
avoid code duplication.
These patches have been tested successfully on ppc64le
arch (fedora and SLES flavours)
Code is available
at https://github.com/sacsant/ltp/tree/uring_fio
Test run:
$ ./io_uring03
tst_tmpdir.c:308: TINFO: Using /tmp/LTP_io_XN0m3T as tmpdir (tmpfs filesystem)
tst_test.c:2059: TINFO: LTP version: 20210524-3958-g3203be536
......
tst_test.c:1887: TINFO: Overall timeout per run is 0h 00m 30s
io_uring03.c:195: TINFO: Testing IORING_OP_WRITE
io_uring03.c:199: TPASS: IORING_OP_WRITE completed successfully
io_uring03.c:205: TINFO: Testing IORING_OP_READ
io_uring03.c:210: TPASS: IORING_OP_READ completed successfully
io_uring03.c:214: TPASS: Data integrity verified
io_uring03.c:236: TINFO: Testing partial I/O operations
io_uring03.c:247: TPASS: Partial write (first half) succeeded
io_uring03.c:252: TPASS: Partial write (second half) succeeded
io_uring03.c:260: TPASS: Full read after partial writes succeeded
io_uring03.c:264: TPASS: Partial I/O data integrity verified
Summary:
passed 7
failed 0
broken 0
skipped 0
warnings 0
$ ./io_uring04
tst_tmpdir.c:308: TINFO: Using /tmp/LTP_io_ekmpZP as tmpdir (tmpfs filesystem)
tst_test.c:2059: TINFO: LTP version: 20210524-3958-g3203be536
.......
tst_test.c:1887: TINFO: Overall timeout per run is 0h 00m 30s
io_uring04.c:218: TINFO: Testing IORING_OP_WRITEV and IORING_OP_READV
io_uring04.c:226: TINFO: Writing 4096 bytes using 4 vectors
io_uring04.c:230: TPASS: IORING_OP_WRITEV completed successfully
io_uring04.c:235: TINFO: Reading 4096 bytes using 4 vectors
io_uring04.c:239: TPASS: IORING_OP_READV completed successfully
io_uring04.c:258: TPASS: Data integrity verified across all 4 vectors
io_uring04.c:270: TINFO: Testing partial vector operations
io_uring04.c:284: TPASS: Partial IORING_OP_WRITEV (2 vectors) succeeded
io_uring04.c:294: TPASS: Partial IORING_OP_READV (2 vectors) succeeded
io_uring04.c:305: TPASS: Partial vector data integrity verified
io_uring04.c:319: TINFO: Testing vectors with varying sizes
io_uring04.c:352: TPASS: IORING_OP_WRITEV with varying sizes succeeded
io_uring04.c:359: TPASS: IORING_OP_READV with varying sizes succeeded
io_uring04.c:365: TPASS: Varying size vector data integrity verified
Summary:
passed 9
failed 0
broken 0
skipped 0
warnings 0
$
Sachin Sant (2):
io_uring: Test IORING READ and WRITE operations
io_uring: Test READV and WRITEV operations
runtest/syscalls | 2 +
testcases/kernel/syscalls/io_uring/.gitignore | 2 +
.../kernel/syscalls/io_uring/io_uring03.c | 145 ++++++++++
.../kernel/syscalls/io_uring/io_uring04.c | 248 ++++++++++++++++++
.../syscalls/io_uring/io_uring_common.h | 227 ++++++++++++++++
5 files changed, 624 insertions(+)
create mode 100644 testcases/kernel/syscalls/io_uring/io_uring03.c
create mode 100644 testcases/kernel/syscalls/io_uring/io_uring04.c
create mode 100644 testcases/kernel/syscalls/io_uring/io_uring_common.h
--
2.39.1
More information about the ltp
mailing list