]> git.apps.os.sepia.ceph.com Git - xfstests-dev.git/commit
generic: read multiple extents with io_uring
authorFilipe Manana <fdmanana@suse.com>
Thu, 3 Mar 2022 11:36:42 +0000 (11:36 +0000)
committerEryu Guan <guaneryu@gmail.com>
Sun, 10 Apr 2022 12:25:01 +0000 (20:25 +0800)
commitcce62cbb35cdfab197ce7297c2997c3d460aaab2
treebc2fac8cb4fa53608c8a12de6abc138932c12949
parent4837b6aff4d3e466d3dfc3120fe4568ecf717180
generic: read multiple extents with io_uring

Test doing a read, with io_uring, over a file range that includes
multiple extents. The read operation triggers page faults when
accessing all pages of the read buffer except for the pages
corresponding to the first extent.  We want to check that the
operation results in reading all the extents and that it returns the
correct data.

This is motivated by an issue found with MariaDB when using io_uring
and running on btrfs. There's a patch for btrfs to address the issue

ca93e44bfb5f ("btrfs: fallback to blocking mode when doing async dio
over multiple extents")

Signed-off-by: Filipe Manana <fdmanana@suse.com>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
.gitignore
src/Makefile
src/uring_read_fault.c [new file with mode: 0644]
tests/generic/678 [new file with mode: 0755]
tests/generic/678.out [new file with mode: 0644]