if (nvmet_req_subsys(req)->type == NVME_NQN_DISC)
                return nvmet_parse_discovery_cmd(req);
 
-       ret = nvmet_check_ctrl_status(req, cmd);
+       ret = nvmet_check_ctrl_status(req);
        if (unlikely(ret))
                return ret;
 
 
 
 static u16 nvmet_parse_io_cmd(struct nvmet_req *req)
 {
-       struct nvme_command *cmd = req->cmd;
        u16 ret;
 
-       ret = nvmet_check_ctrl_status(req, cmd);
+       ret = nvmet_check_ctrl_status(req);
        if (unlikely(ret))
                return ret;
 
        return status;
 }
 
-u16 nvmet_check_ctrl_status(struct nvmet_req *req, struct nvme_command *cmd)
+u16 nvmet_check_ctrl_status(struct nvmet_req *req)
 {
        if (unlikely(!(req->sq->ctrl->cc & NVME_CC_ENABLE))) {
                pr_err("got cmd %d while CC.EN == 0 on qid = %d\n",
-                      cmd->common.opcode, req->sq->qid);
+                      req->cmd->common.opcode, req->sq->qid);
                return NVME_SC_CMD_SEQ_ERROR | NVME_SC_DNR;
        }
 
        if (unlikely(!(req->sq->ctrl->csts & NVME_CSTS_RDY))) {
                pr_err("got cmd %d while CSTS.RDY == 0 on qid = %d\n",
-                      cmd->common.opcode, req->sq->qid);
+                      req->cmd->common.opcode, req->sq->qid);
                return NVME_SC_CMD_SEQ_ERROR | NVME_SC_DNR;
        }
        return 0;
 
 u16 nvmet_ctrl_find_get(const char *subsysnqn, const char *hostnqn, u16 cntlid,
                struct nvmet_req *req, struct nvmet_ctrl **ret);
 void nvmet_ctrl_put(struct nvmet_ctrl *ctrl);
-u16 nvmet_check_ctrl_status(struct nvmet_req *req, struct nvme_command *cmd);
+u16 nvmet_check_ctrl_status(struct nvmet_req *req);
 
 struct nvmet_subsys *nvmet_subsys_alloc(const char *subsysnqn,
                enum nvme_subsys_type type);