summaryrefslogtreecommitdiffstats
path: root/tools/memory-model
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2023-09-26 17:42:26 +0100
committerDavid Howells <dhowells@redhat.com>2023-12-24 15:08:52 +0000
commit92b6cc5d1e7cbe569f00e9c1249ac8214fd5e2d2 (patch)
tree56f0fd811b3fce31f05ce885454b3327787c3b44 /tools/memory-model
parent46ed60dcd4f2c94d27735743ce55cd8d6b93cc1d (diff)
downloadlinux-92b6cc5d1e7cbe569f00e9c1249ac8214fd5e2d2.tar.gz
linux-92b6cc5d1e7cbe569f00e9c1249ac8214fd5e2d2.tar.bz2
linux-92b6cc5d1e7cbe569f00e9c1249ac8214fd5e2d2.zip
netfs: Add iov_iters to (sub)requests to describe various buffers
Add three iov_iter structs: (1) Add an iov_iter (->iter) to the I/O request to describe the unencrypted-side buffer. (2) Add an iov_iter (->io_iter) to the I/O request to describe the encrypted-side I/O buffer. This may be a different size to the buffer in (1). (3) Add an iov_iter (->io_iter) to the I/O subrequest to describe the part of the I/O buffer for that subrequest. This will allow future patches to point to a bounce buffer instead for purposes of handling oversize writes, decryption (where we want to save the encrypted data to the cache) and decompression. These iov_iters persist for the lifetime of the (sub)request, and so can be accessed multiple times without worrying about them being deallocated upon return to the caller. The network filesystem must appropriately advance the iterator before terminating the request. Signed-off-by: David Howells <dhowells@redhat.com> cc: 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/memory-model')
0 files changed, 0 insertions, 0 deletions