mirror of https://gitee.com/openkylin/linux.git
nvmet: update error log page in nvmet_alloc_ctrl()
Instead of updating the error log page in the caller of the nvmet_alloc_ctrt() update the error log page in the nvmet_alloc_ctrl(). Signed-off-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com> Reviewed-by: Sagi Grimberg <sagi@grimberg.me> Signed-off-by: Christoph Hellwig <hch@lst.de>
This commit is contained in:
parent
76affbe6d6
commit
a56f14c26d
|
@ -1311,6 +1311,7 @@ u16 nvmet_alloc_ctrl(const char *subsysnqn, const char *hostnqn,
|
|||
pr_warn("connect request for invalid subsystem %s!\n",
|
||||
subsysnqn);
|
||||
req->cqe->result.u32 = IPO_IATTR_CONNECT_DATA(subsysnqn);
|
||||
req->error_loc = offsetof(struct nvme_common_command, dptr);
|
||||
goto out;
|
||||
}
|
||||
|
||||
|
@ -1321,6 +1322,7 @@ u16 nvmet_alloc_ctrl(const char *subsysnqn, const char *hostnqn,
|
|||
req->cqe->result.u32 = IPO_IATTR_CONNECT_DATA(hostnqn);
|
||||
up_read(&nvmet_config_sem);
|
||||
status = NVME_SC_CONNECT_INVALID_HOST | NVME_SC_DNR;
|
||||
req->error_loc = offsetof(struct nvme_common_command, dptr);
|
||||
goto out_put_subsystem;
|
||||
}
|
||||
up_read(&nvmet_config_sem);
|
||||
|
|
|
@ -190,12 +190,8 @@ static void nvmet_execute_admin_connect(struct nvmet_req *req)
|
|||
|
||||
status = nvmet_alloc_ctrl(d->subsysnqn, d->hostnqn, req,
|
||||
le32_to_cpu(c->kato), &ctrl);
|
||||
if (status) {
|
||||
if (status == (NVME_SC_INVALID_FIELD | NVME_SC_DNR))
|
||||
req->error_loc =
|
||||
offsetof(struct nvme_common_command, opcode);
|
||||
if (status)
|
||||
goto out;
|
||||
}
|
||||
|
||||
ctrl->pi_support = ctrl->port->pi_enable && ctrl->subsys->pi_support;
|
||||
|
||||
|
|
Loading…
Reference in New Issue