On 7/28/25 9:44 AM, Mike Snitzer wrote: > On Sun, Jul 27, 2025 at 11:39:18AM -0400, Chuck Lever wrote: >> On 7/24/25 3:30 PM, Mike Snitzer wrote: >>> Hi, >>> >>> Some workloads benefit from NFSD avoiding the page cache, particularly >>> those with a working set that is significantly larger than available >>> system memory. This patchset introduces _optional_ support to >>> configure the use of O_DIRECT or DONTCACHE for NFSD's READ and WRITE >>> support. The NFSD default to use page cache is left unchanged. >>> >>> The performance win associated with using NFSD DIRECT was previously >>> summarized here: >>> https://lore.kernel.org/linux-nfs/aEslwqa9iMeZjjlV@xxxxxxxxxx/ >>> This picture offers a nice summary of performance gains: >>> https://original.art/NFSD_direct_vs_buffered_IO.jpg >>> >>> Similarly, NFS and LOCALIO in particular also benefit from avoiding >>> the page cache for workloads that have a working set that is >>> significantly larger than available system memory. Enter: NFS DIRECT, >>> which makes it possible to always enable LOCALIO to use O_DIRECT even >>> if the IO is not DIO-aligned. >>> >>> For this v5 I've combined the NFSD and NFSD patchsets because the NFS >>> changes do depend on the the NFSD changes. In addition, I think it >>> makes sense to review/test these changes together. >> >> I'm ready to pull the six NFSD patches in this series into nfsd-testing. >> IMO we want regression and performance testing of NFSD, outside of the >> LOCALIO paths, before claiming merge readiness. > > Makes sense, the NFSD changes are independent. LOCALIO's access to > the dio alignment attrs in nfsd_file is a convenience. As I was drifting off to sleep last night, my mind hallucinated the idea that maybe all (three) caching modes should align the READ payload. Would that make sense / simplify 06/13 ? -- Chuck Lever