Lines Matching defs:cmd

848 	struct spdk_nvmf_fabric_connect_cmd *cmd = &req->cmd->connect_cmd;
856 cmd->recfmt, cmd->qid, cmd->sqsize);
877 if (cmd->recfmt != 0) {
878 SPDK_ERRLOG("Connect command unsupported RECFMT %u\n", cmd->recfmt);
888 if (cmd->sqsize == 0) {
894 if (cmd->qid == 0) {
895 if (cmd->sqsize >= transport->opts.max_aq_depth) {
897 cmd->sqsize, transport->opts.max_aq_depth - 1);
901 } else if (cmd->sqsize >= transport->opts.max_queue_depth) {
903 cmd->sqsize, transport->opts.max_queue_depth - 1);
908 qpair->sq_head_max = cmd->sqsize;
909 qpair->qid = cmd->qid;
925 if (cmd->qid == 0) {
936 ctrlr = nvmf_ctrlr_create(subsystem, req, cmd, data);
1481 struct spdk_nvmf_fabric_prop_get_cmd *cmd = &req->cmd->prop_get_cmd;
1490 cmd->attrib.size, cmd->ofst);
1492 switch (cmd->attrib.size) {
1500 SPDK_DEBUGLOG(nvmf, "Invalid size value %d\n", cmd->attrib.size);
1506 prop = find_prop(cmd->ofst, size);
1522 if (cmd->ofst == prop->ofst) {
1540 struct spdk_nvmf_fabric_prop_set_cmd *cmd = &req->cmd->prop_set_cmd;
1548 cmd->attrib.size, cmd->ofst, cmd->value.u64);
1550 switch (cmd->attrib.size) {
1558 SPDK_DEBUGLOG(nvmf, "Invalid size value %d\n", cmd->attrib.size);
1564 prop = find_prop(cmd->ofst, size);
1566 SPDK_INFOLOG(nvmf, "Invalid offset 0x%x\n", cmd->ofst);
1574 value = cmd->value.u64;
1583 if (cmd->ofst == prop->ofst) {
1609 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1611 SPDK_DEBUGLOG(nvmf, "Set Features - Arbitration (cdw11 = 0x%0x)\n", cmd->cdw11);
1613 ctrlr->feat.arbitration.raw = cmd->cdw11;
1623 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1626 SPDK_DEBUGLOG(nvmf, "Set Features - Power Management (cdw11 = 0x%0x)\n", cmd->cdw11);
1629 if (cmd->cdw11_bits.feat_power_management.bits.ps != 0) {
1630 SPDK_ERRLOG("Invalid power state %u\n", cmd->cdw11_bits.feat_power_management.bits.ps);
1636 ctrlr->feat.power_management.raw = cmd->cdw11;
1673 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1676 SPDK_DEBUGLOG(nvmf, "Set Features - Temperature Threshold (cdw11 = 0x%0x)\n", cmd->cdw11);
1678 if (!temp_threshold_opts_valid(&cmd->cdw11_bits.feat_temp_threshold)) {
1691 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1694 SPDK_DEBUGLOG(nvmf, "Get Features - Temperature Threshold (cdw11 = 0x%0x)\n", cmd->cdw11);
1696 if (!temp_threshold_opts_valid(&cmd->cdw11_bits.feat_temp_threshold)) {
1712 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1716 SPDK_DEBUGLOG(nvmf, "Get Features - Interrupt Vector Configuration (cdw11 = 0x%0x)\n", cmd->cdw11);
1718 iv_conf.bits.iv = cmd->cdw11_bits.feat_interrupt_vector_configuration.bits.iv;
1729 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1732 SPDK_DEBUGLOG(nvmf, "Set Features - Error Recovery (cdw11 = 0x%0x)\n", cmd->cdw11);
1734 if (cmd->cdw11_bits.feat_error_recovery.bits.dulbe) {
1745 ctrlr->feat.error_recovery.raw = cmd->cdw11;
1755 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1757 SPDK_DEBUGLOG(nvmf, "Set Features - Volatile Write Cache (cdw11 = 0x%0x)\n", cmd->cdw11);
1759 ctrlr->feat.volatile_write_cache.raw = cmd->cdw11;
1771 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1773 SPDK_DEBUGLOG(nvmf, "Set Features - Write Atomicity (cdw11 = 0x%0x)\n", cmd->cdw11);
1775 ctrlr->feat.write_atomicity.raw = cmd->cdw11;
1795 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1801 if (!cmd->cdw11_bits.feat_host_identifier.bits.exhid) {
1824 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1830 if (cmd->nsid == SPDK_NVME_GLOBAL_NS_TAG) {
1836 ns = nvmf_ctrlr_get_ns(ctrlr, cmd->nsid);
1852 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1858 if (cmd->nsid == SPDK_NVME_GLOBAL_NS_TAG) {
1861 ns->mask = cmd->cdw11;
1866 ns = nvmf_ctrlr_get_ns(ctrlr, cmd->nsid);
1872 ns->mask = cmd->cdw11;
1881 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1887 ns = nvmf_ctrlr_get_ns(ctrlr, cmd->nsid);
1907 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
1914 ns = nvmf_ctrlr_get_ns(ctrlr, cmd->nsid);
1915 ptpl = cmd->cdw11_bits.feat_rsv_persistence.bits.ptpl;
1917 if (cmd->nsid != SPDK_NVME_GLOBAL_NS_TAG && ns && nvmf_ns_is_ptpl_capable(ns)) {
1919 } else if (cmd->nsid == SPDK_NVME_GLOBAL_NS_TAG) {
2014 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
2017 SPDK_DEBUGLOG(nvmf, "Set Features - Keep Alive Timer (%u ms)\n", cmd->cdw11);
2023 if (cmd->cdw11_bits.feat_keep_alive_timer.bits.kato == 0) {
2025 } else if (cmd->cdw11_bits.feat_keep_alive_timer.bits.kato < MIN_KEEP_ALIVE_TIMEOUT_IN_MS) {
2030 cmd->cdw11_bits.feat_keep_alive_timer.bits.kato,
2039 if (cmd->cdw11_bits.feat_keep_alive_timer.bits.kato != 0) {
2057 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
2062 req->cmd->nvme_cmd.cdw11);
2064 if (cmd->cdw11_bits.feat_num_of_queues.bits.ncqr == UINT16_MAX ||
2065 cmd->cdw11_bits.feat_num_of_queues.bits.nsqr == UINT16_MAX) {
2155 data_local.aer_cids[i] = req->cmd->nvme_cmd.cid;
2205 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
2208 cmd->cdw11);
2209 ctrlr->feat.async_event_configuration.raw = cmd->cdw11;
2642 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
2656 offset = (uint64_t)cmd->cdw12 | ((uint64_t)cmd->cdw13 << 32);
2664 rae = cmd->cdw10_bits.get_log_page.rae;
2665 numdl = cmd->cdw10_bits.get_log_page.numdl;
2666 numdu = cmd->cdw11_bits.get_log_page.numdu;
2676 lid = cmd->cdw10_bits.get_log_page.lid;
2719 uint32_t rgo = cmd->cdw10_bits.get_log_page.lsp & 1;
2776 struct spdk_nvme_cmd *cmd,
2823 struct spdk_nvme_cmd *cmd,
2827 nvmf_ctrlr_identify_ns(ctrlr, cmd, rsp, nsdata, cmd->nsid);
2835 struct spdk_nvme_cmd *cmd = spdk_nvmf_request_get_cmd(req);
2845 nvmf_ctrlr_identify_ns(ctrlr, cmd, rsp, &nvmf_nsdata, req->orig_nsid);
2874 struct spdk_nvme_cmd *cmd = spdk_nvmf_request_get_cmd(req);
2876 struct spdk_nvmf_ns *ns = nvmf_ctrlr_get_ns(ctrlr, cmd->nsid);
2885 nvmf_ctrlr_identify_ns(ctrlr, cmd, rsp, &nsdata, cmd->nsid);
2887 rc = spdk_nvmf_request_get_bdev(cmd->nsid, req, &bdev, &desc, &ch);
2901 cmd->nsid = ns->passthru_nsid;
3060 struct spdk_nvme_cmd *cmd,
3094 struct spdk_nvme_cmd *cmd,
3099 uint8_t csi = cmd->cdw11_bits.identify.csi;
3100 struct spdk_nvmf_ns *ns = _nvmf_ctrlr_get_ns_safe(ctrlr, cmd->nsid, rsp);
3112 return nvmf_ns_identify_iocs_zns(ns, cmd, rsp, nsdata);
3133 struct spdk_nvme_cmd *cmd,
3158 struct spdk_nvme_cmd *cmd,
3176 struct spdk_nvme_cmd *cmd,
3181 uint8_t csi = cmd->cdw11_bits.identify.csi;
3187 return nvmf_ctrlr_identify_iocs_nvm(ctrlr, cmd, rsp, cdata);
3189 return nvmf_ctrlr_identify_iocs_zns(ctrlr, cmd, rsp, cdata);
3205 struct spdk_nvme_cmd *cmd,
3213 if (cmd->nsid >= 0xfffffffeUL) {
3214 SPDK_ERRLOG("Identify Active Namespace List with invalid NSID %u\n", cmd->nsid);
3223 if (ns->opts.nsid <= cmd->nsid || !nvmf_ctrlr_ns_is_visible(ctrlr, ns->opts.nsid)) {
3267 struct spdk_nvme_cmd *cmd,
3275 ns = nvmf_ctrlr_get_ns(ctrlr, cmd->nsid);
3308 struct spdk_nvme_cmd *cmd,
3324 if (cmd->cdw10_bits.identify.cntid != 0xFFFF &&
3325 cmd->cdw10_bits.identify.cntid != ctrlr->cntlid) {
3354 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
3368 cns = cmd->cdw10_bits.identify.cns;
3393 ret = nvmf_ctrlr_identify_active_ns_list(ctrlr, cmd, rsp, (void *)&tmpbuf);
3396 ret = nvmf_ctrlr_identify_ns_id_descriptor_list(ctrlr, cmd, rsp,
3400 ret = spdk_nvmf_ns_identify_iocs_specific(ctrlr, cmd, rsp, (void *)&tmpbuf, req->length);
3403 ret = spdk_nvmf_ctrlr_identify_iocs_specific(ctrlr, cmd, rsp, (void *)&tmpbuf, req->length);
3406 ret = nvmf_ctrlr_identify_iocs(ctrlr, cmd, rsp, (void *)&tmpbuf, req->length);
3439 if (ctrlr->aer_req[i]->cmd->nvme_cmd.cid == cid) {
3486 uint16_t cid = req->cmd->nvme_cmd.cdw10_bits.abort.cid;
3519 uint16_t sqid = req->cmd->nvme_cmd.cdw10_bits.abort.sqid;
3572 rc = spdk_nvmf_request_get_bdev(req_to_abort->cmd->nvme_cmd.nsid, req_to_abort,
3613 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
3617 feature = cmd->cdw10_bits.get_features.fid;
3637 ana_state = nvmf_ctrlr_get_ana_state_from_nsid(ctrlr, cmd->nsid);
3701 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
3708 save = cmd->cdw10_bits.set_features.sv;
3715 feature = cmd->cdw10_bits.set_features.fid;
3735 ana_state = nvmf_ctrlr_get_ana_state_from_nsid(ctrlr, cmd->nsid);
3739 if (cmd->nsid == SPDK_NVME_GLOBAL_NS_TAG) {
3823 is_cmd_ctrlr_specific(struct spdk_nvme_cmd *cmd)
3825 switch (cmd->opc) {
3850 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
3856 if (cmd->opc == SPDK_NVME_OPC_ASYNC_EVENT_REQUEST) {
3868 if (cmd->fuse != 0 ||
3869 (is_cmd_ctrlr_specific(cmd) && (cmd->nsid != 0))) {
3885 if (req->iovcnt && spdk_nvme_opc_get_data_transfer(cmd->opc) == SPDK_NVME_DATA_CONTROLLER_TO_HOST) {
3891 switch (cmd->opc) {
3904 /* Call a custom adm cmd handler if set. Aborts are handled in a different path (see nvmf_passthru_admin_cmd) */
3905 if (g_nvmf_custom_admin_cmd_hdlrs[cmd->opc].hdlr && cmd->opc != SPDK_NVME_OPC_ABORT) {
3906 rc = g_nvmf_custom_admin_cmd_hdlrs[cmd->opc].hdlr(req);
3916 if (ctrlr->subsys->passthrough && cmd->nsid && cmd->nsid != SPDK_NVME_GLOBAL_NS_TAG) {
3920 switch (cmd->opc) {
3948 SPDK_INFOLOG(nvmf, "Unsupported admin opcode 0x%x\n", cmd->opc);
3960 cap_hdr = &req->cmd->nvmf_cmd;
4290 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
4311 switch (cmd->opc) {
4338 racqa = cmd->cdw10_bits.resv_acquire.racqa;
4370 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
4375 if (cmd->fuse == SPDK_NVME_CMD_FUSE_FIRST) {
4386 } else if (cmd->opc != SPDK_NVME_OPC_COMPARE) {
4395 } else if (cmd->fuse == SPDK_NVME_CMD_FUSE_SECOND) {
4402 } else if (cmd->opc != SPDK_NVME_OPC_WRITE) {
4465 if ((req->cmd->nvme_cmd.opc != SPDK_NVME_OPC_WRITE) &&
4466 (req->cmd->nvme_cmd.opc != SPDK_NVME_OPC_READ)) {
4471 if (req->cmd->nvme_cmd.fuse != SPDK_NVME_CMD_FUSE_NONE) {
4476 ns = nvmf_ctrlr_get_ns(req->qpair->ctrlr, req->cmd->nvme_cmd.nsid);
4516 struct spdk_nvme_cmd *cmd = &req->cmd->nvme_cmd;
4523 nsid = cmd->nsid;
4535 SPDK_DEBUGLOG(nvmf, "Unsuccessful query for nsid %u\n", cmd->nsid);
4562 cmd->nsid, cmd->opc);
4570 if (spdk_unlikely(cmd->fuse & SPDK_NVME_CMD_FUSE_MASK)) {
4575 SPDK_ERRLOG("Second fused cmd expected - failing first one (cntlid:%u, qid:%u, opcode:0x%x)\n",
4577 req->qpair->first_fused_req->cmd->nvmf_cmd.opcode);
4588 req->cmd->nvme_cmd.nsid = ns->passthru_nsid;
4597 switch (cmd->opc) {
4638 req->cmd->nvme_cmd.nsid = ns->passthru_nsid;
4644 SPDK_INFOLOG(nvmf, "Unsupported IO opcode 0x%x\n", cmd->opc);
4693 rsp->cid = req->cmd->nvme_cmd.cid;
4694 nsid = req->cmd->nvme_cmd.nsid;
4695 opcode = req->cmd->nvmf_cmd.opcode;
4701 is_aer = req->cmd->nvme_cmd.opc == SPDK_NVME_OPC_ASYNC_EVENT_REQUEST;
4751 /* AER cmd is an exception */
4826 if (spdk_unlikely(req->cmd->nvmf_cmd.opcode == SPDK_NVME_OPC_FABRIC ||
4835 nsid = req->cmd->nvme_cmd.nsid;
4889 if (req->cmd->nvmf_cmd.opcode != SPDK_NVME_OPC_FABRIC) {
4891 req->cmd->nvmf_cmd.opcode, qpair->qid);
4894 if (req->cmd->nvmf_cmd.fctype != SPDK_NVMF_FABRIC_COMMAND_CONNECT) {
4896 req->cmd->nvmf_cmd.fctype, qpair->qid);
4903 if (req->cmd->nvmf_cmd.opcode != SPDK_NVME_OPC_FABRIC) {
4905 req->cmd->nvmf_cmd.opcode, qpair->qid);
4908 if (req->cmd->nvmf_cmd.fctype != SPDK_NVMF_FABRIC_COMMAND_AUTHENTICATION_SEND &&
4909 req->cmd->nvmf_cmd.fctype != SPDK_NVMF_FABRIC_COMMAND_AUTHENTICATION_RECV) {
4911 req->cmd->nvmf_cmd.fctype, qpair->qid);
4917 req->cmd->nvmf_cmd.opcode, qpair->qid, qpair->state);
4943 spdk_nvme_print_command(qpair->qid, &req->cmd->nvme_cmd);
4949 if (spdk_unlikely(req->cmd->nvmf_cmd.opcode == SPDK_NVME_OPC_FABRIC)) {
4963 nvmf_ctrlr_get_dif_ctx(struct spdk_nvmf_ctrlr *ctrlr, struct spdk_nvme_cmd *cmd,
4969 if (ctrlr == NULL || cmd == NULL) {
4973 ns = nvmf_ctrlr_get_ns(ctrlr, cmd->nsid);
4980 switch (cmd->opc) {
4984 return nvmf_bdev_ctrlr_get_dif_ctx(desc, cmd, dif_ctx);
5006 if (spdk_unlikely(req->cmd->nvmf_cmd.opcode == SPDK_NVME_OPC_FABRIC)) {
5014 return nvmf_ctrlr_get_dif_ctx(ctrlr, &req->cmd->nvme_cmd, dif_ctx);
5045 req->cmd->nvme_cmd.nsid = ns->passthru_nsid;
5054 struct spdk_nvme_cmd *cmd = spdk_nvmf_request_get_cmd(req);
5057 if (g_nvmf_custom_admin_cmd_hdlrs[cmd->opc].nsid != 0) {
5058 bdev_nsid = g_nvmf_custom_admin_cmd_hdlrs[cmd->opc].nsid;
5060 bdev_nsid = cmd->nsid;
5124 return &req->cmd->nvme_cmd;