linux-nfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/4] NFSD DIRECT: misaligned READs fixup, add handling for misaligned WRITEs
@ 2025-08-05 18:44 Mike Snitzer
  2025-08-05 18:44 ` [PATCH v4 1/4] NFSD: avoid using iov_iter_is_aligned() in nfsd_iter_read() Mike Snitzer
                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: Mike Snitzer @ 2025-08-05 18:44 UTC (permalink / raw)
  To: Chuck Lever, Jeff Layton; +Cc: linux-nfs

Hi,

This series builds on what has been staged in the nfsd-testing branch.

This code has proven to work well during my testing.  Any suggestions
for further refinement are welcome.

Changes since v3:
- fixed nfsd_vfs_write() so work that only needs to happen once, after
  IO is submitted, isn't performed each iteration of the for loop,
  thanks for catching this Chuck.
- updated NFSD's misaligned READ and WRITE handling to not use
  iov_iter_is_aligned() because it will soon be removed upstream.
  - Chuck, provided both you and Jeff agree with patch 1's incremental
    changes, patch 1 should be folded into what you already have in your
    nfsd-testing branch (more justification in patch 1's header)
- dropped the NFSD misaligned DIO NFS reexport patch in favor of
  adding STATX_DIOALIGN support to NFS (the patch to add support will
  be provided in the next NFS DIRECT v7 patchset that I'll post soon).

Changes since v2:
- fixed patch 2 by moving redundant work out of nfsd_vfs_write()'s for
  loop, thanks to Jeff's review.
- added Jeff's Reviewed-by to patches 1-3.
- Left patch 4 in the series because it is pragmatic, but feel free to
  drop it if you'd prefer to see this cat skinned a different way.

Changes since v1:
- switched to using an EVENT_CLASS to create nfsd_analyze_{read,write}_dio
- added 4th patch, if user configured use of NFSD_IO_DIRECT then NFS
  reexports should use it too (in future, with per-export controls
  we'll have the benefit of finer-grained control; but until then we'd
  do well to offer comprehensive use of NFSD_IO_DIRECT if it enabled).

Thanks,
Mike

Mike Snitzer (4):
  NFSD: avoid using iov_iter_is_aligned() in nfsd_iter_read()
  NFSD: refactor nfsd_read_vector_dio to EVENT_CLASS useful for READ and WRITE
  NFSD: prepare nfsd_vfs_write() to use O_DIRECT on misaligned WRITEs
  NFSD: issue WRITEs using O_DIRECT even if IO is misaligned

 fs/nfsd/trace.h |  52 +++++++++----
 fs/nfsd/vfs.c   | 199 +++++++++++++++++++++++++++++++++++++++---------
 2 files changed, 202 insertions(+), 49 deletions(-)

-- 
2.44.0


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2025-08-07 15:53 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-05 18:44 [PATCH v4 0/4] NFSD DIRECT: misaligned READs fixup, add handling for misaligned WRITEs Mike Snitzer
2025-08-05 18:44 ` [PATCH v4 1/4] NFSD: avoid using iov_iter_is_aligned() in nfsd_iter_read() Mike Snitzer
2025-08-06 13:18   ` Chuck Lever
2025-08-06 15:57     ` Mike Snitzer
2025-08-06 15:58       ` Chuck Lever
2025-08-07 15:50       ` sparse warnings with nfsd-testing [was: Re: [PATCH v4 1/4] NFSD: avoid using iov_iter_is_aligned() in nfsd_iter_read()] Mike Snitzer
2025-08-07 15:51         ` Chuck Lever
2025-08-07 15:53           ` Mike Snitzer
2025-08-05 18:44 ` [PATCH v4 2/4] NFSD: refactor nfsd_read_vector_dio to EVENT_CLASS useful for READ and WRITE Mike Snitzer
2025-08-05 18:44 ` [PATCH v4 3/4] NFSD: prepare nfsd_vfs_write() to use O_DIRECT on misaligned WRITEs Mike Snitzer
2025-08-05 18:44 ` [PATCH v4 4/4] NFSD: issue WRITEs using O_DIRECT even if IO is misaligned Mike Snitzer
2025-08-06 13:53   ` Chuck Lever
2025-08-06 15:55     ` Mike Snitzer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).