Linux NFS development
 help / color / mirror / Atom feed
* [PATCH 0/3] pNFS/flexfiles: honor clora_changed and report cancelled I/O
@ 2026-06-24 19:50 Benjamin Coddington
  2026-06-24 19:50 ` [PATCH 1/3] pNFS: report clora_changed in the cb_layoutrecall_file tracepoint Benjamin Coddington
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Benjamin Coddington @ 2026-06-24 19:50 UTC (permalink / raw)
  To: Trond Myklebust, Anna Schumaker; +Cc: linux-nfs

RFC 8881 section 20.3.3 lets CB_LAYOUTRECALL carry clora_changed: when it
is FALSE the client may flush modified data to the data servers before
returning the layout; only when it is TRUE should it stop writing to the
DS and redirect through the MDS.  The client decodes cbl_layoutchanged but
has ignored it since commit b739a5bd9d9f ("NFSv4/flexfiles: Cancel I/O if
the layout is recalled or revoked"), cancelling in-flight DS I/O
unconditionally -- which can leave a write incomplete at the DS with no
write layout held.

This series teaches the client to honor clora_changed: on an unchanged
recall it drains its in-flight DS writes before LAYOUTRETURN instead of
cancelling them; when it does cancel (changed recall, or revoke) the
cancelled I/O is reported to the server as NFS4ERR_NXIO so it can
reconcile the affected mirror instance.  Patch 1 adds clora_changed to the
recall tracepoint.

Based on v7.1.

Benjamin Coddington (3):
  pNFS: report clora_changed in the cb_layoutrecall_file tracepoint
  pNFS: honor clora_changed when recalling a layout
  NFSv4/flexfiles: report cancelled I/O as a layout error

 fs/nfs/callback_proc.c                 |  5 ++-
 fs/nfs/flexfilelayout/flexfilelayout.c | 23 ++++++++++-
 fs/nfs/nfs4trace.h                     | 55 +++++++++++++++++++++++++-
 fs/nfs/pnfs.c                          | 21 +++++-----
 fs/nfs/pnfs.h                          |  2 +-
 5 files changed, 92 insertions(+), 14 deletions(-)

-- 
2.53.0


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

end of thread, other threads:[~2026-06-24 20:37 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-24 19:50 [PATCH 0/3] pNFS/flexfiles: honor clora_changed and report cancelled I/O Benjamin Coddington
2026-06-24 19:50 ` [PATCH 1/3] pNFS: report clora_changed in the cb_layoutrecall_file tracepoint Benjamin Coddington
2026-06-24 20:30   ` Anna Schumaker
2026-06-24 19:50 ` [PATCH 2/3] pNFS: honor clora_changed when recalling a layout Benjamin Coddington
2026-06-24 20:37   ` Anna Schumaker
2026-06-24 19:50 ` [PATCH 3/3] NFSv4/flexfiles: report cancelled I/O as a layout error Benjamin Coddington

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox