linux-nvme.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCHv3 0/6] Fixup return value for nvme_submit_sync_cmd()
@ 2021-02-25 10:55 Hannes Reinecke
  2021-02-25 10:55 ` [PATCH 1/6] nvme: simplify error logic in nvme_validate_ns() Hannes Reinecke
                   ` (5 more replies)
  0 siblings, 6 replies; 19+ messages in thread
From: Hannes Reinecke @ 2021-02-25 10:55 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: linux-nvme, Daniel Wagner, Sagi Grimberg, Keith Busch, Hannes Reinecke

here are some small patches for fixing up the return value of nvme_submit_sync_cmd().
As Keith correctly noted, nvme_submit_sync_cmd() should be returning
an error if the command could not be performed; however, currently
only pci does that.
So we need to fix up nvme_cancel_request() to return an -EINTR
on any pending sync commands during reset.
And modify nvme-fc to return the same nvme status after timing out
or cancelling requests.
Plus, finally, adding a new flag 'NVME_REQ_TIMEOUT' to indicate
that a command had been aborted due to a timeout, and translates that
back into -ETIMEDOUT as a return code for nvme_submit_sync_cmd().

As usual, comments and reviews are welcome.

Changes to v2:
- Include reviews from Sagi
- Simplify error logic from nvme_validate_ns()

Changes to v1:
- Include reviews from Daniel
- Include changes for nvme-fc to return the same status as the
  other transports

Hannes Reinecke (6):
  nvme: simplify error logic in nvme_validate_ns()
  nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request()
  nvme-fc: set NVME_REQ_CANCELLED in nvme_fc_terminate_exchange()
  nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been
    aborted
  nvme: return NVME_SC_ABORT_QUEUE for cancelled commands
  nvme: return -ETIMEDOUT in nvme_submit_sync_cmd()

 drivers/nvme/host/core.c | 11 +++++++----
 drivers/nvme/host/fc.c   | 11 ++++++++---
 drivers/nvme/host/nvme.h |  1 +
 drivers/nvme/host/rdma.c |  1 +
 drivers/nvme/host/tcp.c  |  1 +
 5 files changed, 18 insertions(+), 7 deletions(-)

-- 
2.29.2


_______________________________________________
Linux-nvme mailing list
Linux-nvme@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-nvme

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

end of thread, other threads:[~2021-02-26  7:11 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-25 10:55 [PATCHv3 0/6] Fixup return value for nvme_submit_sync_cmd() Hannes Reinecke
2021-02-25 10:55 ` [PATCH 1/6] nvme: simplify error logic in nvme_validate_ns() Hannes Reinecke
2021-02-25 16:36   ` Keith Busch
2021-02-26  1:13   ` Chao Leng
2021-02-26  7:10     ` Hannes Reinecke
2021-02-25 10:55 ` [PATCH 2/6] nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request() Hannes Reinecke
2021-02-26  1:13   ` Chao Leng
2021-02-25 10:55 ` [PATCH 3/6] nvme-fc: set NVME_REQ_CANCELLED in nvme_fc_terminate_exchange() Hannes Reinecke
2021-02-25 16:37   ` Keith Busch
2021-02-25 10:55 ` [PATCH 4/6] nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been aborted Hannes Reinecke
2021-02-25 10:55 ` [PATCH 5/6] nvme: return NVME_SC_ABORT_QUEUE for cancelled commands Hannes Reinecke
2021-02-25 16:43   ` Keith Busch
2021-02-25 17:34     ` Hannes Reinecke
2021-02-26  0:59   ` Chao Leng
2021-02-26  7:00     ` Hannes Reinecke
2021-02-25 10:55 ` [PATCH 6/6] nvme: return -ETIMEDOUT in nvme_submit_sync_cmd() Hannes Reinecke
2021-02-25 16:31   ` Keith Busch
2021-02-25 17:28     ` Hannes Reinecke
2021-02-26  1:07   ` Chao Leng

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).