Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/nvmf/controller/nvmft_controller.c
| Show First 20 Lines • Show All 221 Lines • ▼ Show 20 Lines | nvmft_handoff_io_queue(struct nvmft_port *np, enum nvmf_trtype trtype, | ||||
| mtx_lock(&np->lock); | mtx_lock(&np->lock); | ||||
| TAILQ_FOREACH(ctrlr, &np->controllers, link) { | TAILQ_FOREACH(ctrlr, &np->controllers, link) { | ||||
| if (ctrlr->cntlid == cntlid) | if (ctrlr->cntlid == cntlid) | ||||
| break; | break; | ||||
| } | } | ||||
| if (ctrlr == NULL) { | if (ctrlr == NULL) { | ||||
| mtx_unlock(&np->lock); | mtx_unlock(&np->lock); | ||||
| printf("NVMFT: Nonexistent controller %u for I/O queue %u from %.*s\n", | printf("NVMFT: Nonexistent controller %u for I/O queue %u from %.*s\n", | ||||
| ctrlr->cntlid, qid, (int)sizeof(data->hostnqn), | cntlid, qid, (int)sizeof(data->hostnqn), | ||||
| data->hostnqn); | data->hostnqn); | ||||
| nvmft_connect_invalid_parameters(qp, cmd, true, | nvmft_connect_invalid_parameters(qp, cmd, true, | ||||
| offsetof(struct nvmf_fabric_connect_data, cntlid)); | offsetof(struct nvmf_fabric_connect_data, cntlid)); | ||||
| nvmft_qpair_destroy(qp); | nvmft_qpair_destroy(qp); | ||||
| return (ENOENT); | return (ENOENT); | ||||
| } | } | ||||
| if (memcmp(ctrlr->hostid, data->hostid, sizeof(ctrlr->hostid)) != 0) { | if (memcmp(ctrlr->hostid, data->hostid, sizeof(ctrlr->hostid)) != 0) { | ||||
| ▲ Show 20 Lines • Show All 924 Lines • Show Last 20 Lines | |||||