mbox series

[0/4] pNFS/flexfiles: Cancel I/O if the layout is revoked

Message ID 20221005195738.4552-1-trondmy@kernel.org (mailing list archive)
Headers show
Series pNFS/flexfiles: Cancel I/O if the layout is revoked | expand

Message

Trond Myklebust Oct. 5, 2022, 7:57 p.m. UTC
From: Trond Myklebust <trond.myklebust@hammerspace.com>

The pNFS/flexfiles driver is capable of having a lot of outstanding I/O
in the RPC layer when it flushes out the writeback data. If the server
decides to recall or revoke the layout when this happens, then it takes
a while for that I/O to complete.
To speed things up, add an API to allow the flexfiles driver to cancel
that I/O and hence return the layout earlier.

Trond Myklebust (4):
  SUNRPC: Fix races with rpc_killall_tasks()
  SUNRPC: Add a helper to allow pNFS drivers to selectively cancel RPC
    calls
  SUNRPC: Add API to force the client to disconnect
  NFSv4/flexfiles: Cancel I/O if the layout is recalled or revoked

 fs/nfs/flexfilelayout/flexfilelayout.c | 84 +++++++++++++++++++++++++-
 fs/nfs/pnfs.c                          |  9 ++-
 fs/nfs/pnfs.h                          |  9 +++
 include/linux/sunrpc/clnt.h            |  1 +
 include/linux/sunrpc/sched.h           |  6 ++
 net/sunrpc/clnt.c                      | 57 +++++++++++++++--
 net/sunrpc/sched.c                     | 51 +++++++++++-----
 net/sunrpc/xprtsock.c                  |  3 +-
 8 files changed, 194 insertions(+), 26 deletions(-)