On Fri, 08 Nov 2024 17:32:01 +0000, David Howells wrote: > This set of patches is primarily about two things: improving read > performance and supporting monolithic single-blob objects that have to be > read/written as such (e.g. AFS directory contents). The implementation of > the two parts is interwoven as each makes the other possible. > > READ PERFORMANCE > ================ > > [...] Applied to the vfs-6.14.netfs branch of the vfs/vfs.git tree. Patches in the vfs-6.14.netfs branch should appear in linux-next soon. Please report any outstanding bugs that were missed during review in a new review to the original patch series allowing us to drop it. It's encouraged to provide Acked-bys and Reviewed-bys even though the patch has now been applied. If possible patch trailers will be updated. Note that commit hashes shown below are subject to change due to rebase, trailer updates or similar. If in doubt, please check the listed branch. tree: https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git branch: vfs-6.14.netfs [01/33] kheaders: Ignore silly-rename files https://git.kernel.org/vfs/vfs/c/3033d243b97c [02/33] netfs: Remove call to folio_index() https://git.kernel.org/vfs/vfs/c/f709cec9dc52 [03/33] netfs: Fix a few minor bugs in netfs_page_mkwrite() https://git.kernel.org/vfs/vfs/c/07a80742a52b [04/33] netfs: Remove unnecessary references to pages https://git.kernel.org/vfs/vfs/c/53f5f31a1549 [05/33] netfs: Use a folio_queue allocation and free functions https://git.kernel.org/vfs/vfs/c/1d044b4cb3e9 [06/33] netfs: Add a tracepoint to log the lifespan of folio_queue structs https://git.kernel.org/vfs/vfs/c/7583f643f714 [07/33] netfs: Abstract out a rolling folio buffer implementation https://git.kernel.org/vfs/vfs/c/2029a747a14d [08/33] netfs: Make netfs_advance_write() return size_t https://git.kernel.org/vfs/vfs/c/34961bbe07a5 [09/33] netfs: Split retry code out of fs/netfs/write_collect.c https://git.kernel.org/vfs/vfs/c/8816207a3e26 [10/33] netfs: Drop the error arg from netfs_read_subreq_terminated() https://git.kernel.org/vfs/vfs/c/44c5114bb155 [11/33] netfs: Drop the was_async arg from netfs_read_subreq_terminated() https://git.kernel.org/vfs/vfs/c/3c8a83f74e0e [12/33] netfs: Don't use bh spinlock https://git.kernel.org/vfs/vfs/c/5c962f9982cd [13/33] afs: Don't use mutex for I/O operation lock https://git.kernel.org/vfs/vfs/c/244059f6472c [14/33] afs: Fix EEXIST error returned from afs_rmdir() to be ENOTEMPTY https://git.kernel.org/vfs/vfs/c/10e890507ed5 [15/33] afs: Fix directory format encoding struct https://git.kernel.org/vfs/vfs/c/c8f34615191c [16/33] netfs: Remove some extraneous directory invalidations https://git.kernel.org/vfs/vfs/c/ab143ef48b3b [17/33] cachefiles: Add some subrequest tracepoints https://git.kernel.org/vfs/vfs/c/46599823a281 [18/33] cachefiles: Add auxiliary data trace https://git.kernel.org/vfs/vfs/c/499c9d489d7b [19/33] afs: Add more tracepoints to do with tracking validity https://git.kernel.org/vfs/vfs/c/606d920396fd [20/33] netfs: Add functions to build/clean a buffer in a folio_queue https://git.kernel.org/vfs/vfs/c/823f8d570db5 [21/33] netfs: Add support for caching single monolithic objects such as AFS dirs https://git.kernel.org/vfs/vfs/c/5ae8e69c119a [22/33] afs: Make afs_init_request() get a key if not given a file https://git.kernel.org/vfs/vfs/c/bfeb953ddf0b [23/33] afs: Use netfslib for directories https://git.kernel.org/vfs/vfs/c/2b6bae4ca558 [24/33] afs: Use netfslib for symlinks, allowing them to be cached https://git.kernel.org/vfs/vfs/c/a16c68c66f52 [25/33] afs: Eliminate afs_read https://git.kernel.org/vfs/vfs/c/b84e275b6da2 [26/33] afs: Fix cleanup of immediately failed async calls https://git.kernel.org/vfs/vfs/c/355d07737082 [27/33] afs: Make {Y,}FS.FetchData an asynchronous operation https://git.kernel.org/vfs/vfs/c/e31fb01515da [28/33] netfs: Change the read result collector to only use one work item https://git.kernel.org/vfs/vfs/c/1bd9011ee163 [29/33] afs: Make afs_mkdir() locally initialise a new directory's content https://git.kernel.org/vfs/vfs/c/4e93a341aec1 [30/33] afs: Use the contained hashtable to search a directory https://git.kernel.org/vfs/vfs/c/08890740b1d7 [31/33] afs: Locally initialise the contents of a new symlink on creation https://git.kernel.org/vfs/vfs/c/d4f4a6bde676 [32/33] afs: Add a tracepoint for afs_read_receive() https://git.kernel.org/vfs/vfs/c/f06ba511d8d5 [33/33] netfs: Report on NULL folioq in netfs_writeback_unlock_folios() https://git.kernel.org/vfs/vfs/c/19375843912f