diff options
author | David Howells <dhowells@redhat.com> | 2021-07-09 10:41:17 +0300 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2023-12-28 12:42:44 +0300 |
commit | 21d706d5cf570917594b21edee81893bdce09ab8 (patch) | |
tree | a692b502c516bfafba77a2d98088155fe314ea0c /tools/perf/scripts/python/export-to-sqlite.py | |
parent | 92b6cc5d1e7cbe569f00e9c1249ac8214fd5e2d2 (diff) | |
download | linux-21d706d5cf570917594b21edee81893bdce09ab8.tar.xz |
netfs: Add support for DIO buffering
Add a bvec array pointer and an iterator to netfs_io_request for either
holding a copy of a DIO iterator or a list of all the bits of buffer
pointed to by a DIO iterator.
There are two problems: Firstly, if an iovec-class iov_iter is passed to
->read_iter() or ->write_iter(), this cannot be passed directly to
kernel_sendmsg() or kernel_recvmsg() as that may cause locking recursion if
a fault is generated, so we need to keep track of the pages involved
separately.
Secondly, if the I/O is asynchronous, we must copy the iov_iter describing
the buffer before returning to the caller as it may be immediately
deallocated.
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: Jeff Layton <jlayton@kernel.org>
cc: linux-cachefs@redhat.com
cc: linux-fsdevel@vger.kernel.org
cc: linux-mm@kvack.org
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions