[PATCHv3 0/4] block and nvme passthrough error handling

Keith Busch kbusch at kernel.org
Fri May 21 13:21:41 PDT 2021


This series gets blk_execute_rq() to process polled requests and return
queueing errors so the caller may know if their request wasn't
dispatched.

Changes since v2:

  Dropped patch 5 (ioctl polling flag) since there is currently no real
  use case.

  Move blk_execute_rq's poll handling to a small helper function
  (patch 1)

  Return blk_status_t instead of errno (patch 3)

  Removed "extern" header declaration, and named the parameters (patch 3)

  Initialize nvme status to 0 (patch 4)

  Add helper function for blk_status_t to nvme passthrough return code
  (patch 4)

Keith Busch (4):
  block: support polling through blk_execute_rq
  nvme: use blk_execute_rq() for passthrough commands
  block: return errors from blk_execute_rq()
  nvme: use return value from blk_execute_rq()

 block/blk-exec.c               | 25 ++++++++++++--
 drivers/nvme/host/core.c       | 63 ++++++++++++++--------------------
 drivers/nvme/host/fabrics.c    | 13 ++++---
 drivers/nvme/host/fabrics.h    |  2 +-
 drivers/nvme/host/fc.c         |  2 +-
 drivers/nvme/host/ioctl.c      |  6 +---
 drivers/nvme/host/nvme.h       |  4 +--
 drivers/nvme/host/rdma.c       |  3 +-
 drivers/nvme/host/tcp.c        |  2 +-
 drivers/nvme/target/loop.c     |  2 +-
 drivers/nvme/target/passthru.c |  8 ++---
 include/linux/blkdev.h         |  4 ++-
 12 files changed, 69 insertions(+), 65 deletions(-)

-- 
2.25.4




More information about the Linux-nvme mailing list