]> git.apps.os.sepia.ceph.com Git - xfstests-dev.git/commit
generic: add test for direct io partial writes
authorBoris Burkov <boris@bur.io>
Thu, 23 Feb 2023 18:01:51 +0000 (10:01 -0800)
committerZorro Lang <zlang@kernel.org>
Sat, 25 Feb 2023 13:54:09 +0000 (21:54 +0800)
commit744a8a6be38fb1c535624e1aca69d8187688f33a
treefcde91295474d2640db68a93d551051a2f9dad5a
parente4561119eb12a62ed52a1a537a8e9fc24b82d29c
generic: add test for direct io partial writes

btrfs recently had a bug where a direct io partial write resulted in a
hole in the file. Add a new generic test which creates a 2MiB file,
mmaps it, touches the first byte, then does an O_DIRECT write of the
mmapped buffer into a new file. This should result in the mapped pages
being a mix of in and out of page cache and thus a partial write, for
filesystems using iomap and IOMAP_DIO_PARTIAL.

Signed-off-by: Boris Burkov <boris@bur.io>
Reviewed-by: Zorro Lang <zlang@redhat.com>
Reviewed-by: David Disseldorp <ddiss@suse.de>
Reviewed-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: Zorro Lang <zlang@kernel.org>
.gitignore
src/Makefile
src/dio-buf-fault.c [new file with mode: 0644]
tests/generic/708 [new file with mode: 0755]
tests/generic/708.out [new file with mode: 0644]