[PATCH 6/6] nvme: ignore retries for multipath devices
Christoph Hellwig
hch at lst.de
Mon Oct 2 09:22:54 PDT 2017
> diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
> index 1ef11ca..ac7676a 100644
> --- a/drivers/nvme/host/core.c
> +++ b/drivers/nvme/host/core.c
> @@ -201,7 +201,8 @@ static inline bool nvme_req_needs_retry(struct request *req)
> return false;
> if (nvme_req(req)->status & NVME_SC_DNR)
> return false;
> - if (nvme_req(req)->retries >= nvme_max_retries)
> + if (nvme_req(req)->retries >= nvme_max_retries &&
> + !(req->cmd_flags & REQ_NVME_MPATH))
> return false;
> return true;
All failover logic is inside a nvme_req_needs_retry() conditional,
so this change looks completely broken - it basically disables
failover.
More information about the Linux-nvme
mailing list