mbox series

[2,00/14] NFSD backchannel fixes

Message ID 170629091560.20612.563908774748586696.stgit@manet.1015granger.net (mailing list archive)
Headers show
Series NFSD backchannel fixes | expand

Message

Chuck Lever Jan. 26, 2024, 5:45 p.m. UTC
The first four patches fix bugs that prevent NFSD's backchannel
from reliably retransmitting after a client reconnects.

Following that are some new trace points that might be helpful for
field troubleshooting.

Then there are some minor clean-ups.

Changes since RFC:
- Replace the msleep with queue_delayed_work
- Refinements to patch descriptions

---

Chuck Lever (14):
      NFSD: Reset cb_seq_status after NFS4ERR_DELAY
      NFSD: Convert the callback workqueue to use delayed_work
      NFSD: Reschedule CB operations when backchannel rpc_clnt is shut down
      NFSD: Retransmit callbacks after client reconnects
      NFSD: Add nfsd_seq4_status trace event
      NFSD: Replace dprintks in nfsd4_cb_sequence_done()
      NFSD: Rename nfsd_cb_state trace point
      NFSD: Add callback operation lifetime trace points
      SUNRPC: Remove EXPORT_SYMBOL_GPL for svc_process_bc()
      NFSD: Remove unused @reason argument
      NFSD: Replace comment with lockdep assertion
      NFSD: Remove BUG_ON in nfsd4_process_cb_update()
      SUNRPC: Remove stale comments
      NFSD: Remove redundant cb_seq_status initialization


 fs/nfsd/nfs4callback.c   |  94 +++++++++++++++--------
 fs/nfsd/nfs4state.c      |   1 +
 fs/nfsd/state.h          |   2 +-
 fs/nfsd/trace.h          | 162 ++++++++++++++++++++++++++++++++++++++-
 include/trace/misc/nfs.h |  34 ++++++++
 net/sunrpc/svc.c         |   1 -
 net/sunrpc/xprtsock.c    |   9 ---
 7 files changed, 261 insertions(+), 42 deletions(-)

--
Chuck Lever

Comments

Benjamin Coddington Jan. 26, 2024, 8:10 p.m. UTC | #1
On 26 Jan 2024, at 12:45, Chuck Lever wrote:

> The first four patches fix bugs that prevent NFSD's backchannel
> from reliably retransmitting after a client reconnects.
>
> Following that are some new trace points that might be helpful for
> field troubleshooting.
>
> Then there are some minor clean-ups.
>
> Changes since RFC:
> - Replace the msleep with queue_delayed_work
> - Refinements to patch descriptions
>
> ---
>
> Chuck Lever (14):
>       NFSD: Reset cb_seq_status after NFS4ERR_DELAY
>       NFSD: Convert the callback workqueue to use delayed_work
>       NFSD: Reschedule CB operations when backchannel rpc_clnt is shut down
>       NFSD: Retransmit callbacks after client reconnects
>       NFSD: Add nfsd_seq4_status trace event
>       NFSD: Replace dprintks in nfsd4_cb_sequence_done()
>       NFSD: Rename nfsd_cb_state trace point
>       NFSD: Add callback operation lifetime trace points
>       SUNRPC: Remove EXPORT_SYMBOL_GPL for svc_process_bc()
>       NFSD: Remove unused @reason argument
>       NFSD: Replace comment with lockdep assertion
>       NFSD: Remove BUG_ON in nfsd4_process_cb_update()
>       SUNRPC: Remove stale comments
>       NFSD: Remove redundant cb_seq_status initialization
>
>
>  fs/nfsd/nfs4callback.c   |  94 +++++++++++++++--------
>  fs/nfsd/nfs4state.c      |   1 +
>  fs/nfsd/state.h          |   2 +-
>  fs/nfsd/trace.h          | 162 ++++++++++++++++++++++++++++++++++++++-
>  include/trace/misc/nfs.h |  34 ++++++++
>  net/sunrpc/svc.c         |   1 -
>  net/sunrpc/xprtsock.c    |   9 ---
>  7 files changed, 261 insertions(+), 42 deletions(-)
>
> --
> Chuck Lever

These all make sense, even to me.  For the series:

Reviewed-by: Benjamin Coddington <bcodding@redhat.com>

Ben