lib/nvme: remove extra function calls in tcp transport.
Signed-off-by: Seth Howell <seth.howell@intel.com> Change-Id: I031cb5263598d09fb4956873c35d74ec3173fe63 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/478875 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
parent
b2225ff593
commit
738b9569f0
@ -230,8 +230,8 @@ fail:
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
static void
|
||||
nvme_tcp_qpair_disconnect(struct spdk_nvme_qpair *qpair)
|
||||
void
|
||||
nvme_tcp_ctrlr_disconnect_qpair(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_qpair *qpair)
|
||||
{
|
||||
struct nvme_tcp_qpair *tqpair = nvme_tcp_qpair(qpair);
|
||||
struct nvme_tcp_pdu *pdu;
|
||||
@ -249,8 +249,8 @@ nvme_tcp_qpair_disconnect(struct spdk_nvme_qpair *qpair)
|
||||
}
|
||||
}
|
||||
|
||||
static int
|
||||
nvme_tcp_qpair_destroy(struct spdk_nvme_qpair *qpair)
|
||||
int
|
||||
nvme_tcp_ctrlr_delete_io_qpair(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_qpair *qpair)
|
||||
{
|
||||
struct nvme_tcp_qpair *tqpair;
|
||||
|
||||
@ -258,7 +258,7 @@ nvme_tcp_qpair_destroy(struct spdk_nvme_qpair *qpair)
|
||||
return -1;
|
||||
}
|
||||
|
||||
nvme_tcp_qpair_disconnect(qpair);
|
||||
nvme_tcp_ctrlr_disconnect_qpair(ctrlr, qpair);
|
||||
nvme_tcp_qpair_abort_reqs(qpair, 1);
|
||||
nvme_qpair_deinit(qpair);
|
||||
tqpair = nvme_tcp_qpair(qpair);
|
||||
@ -274,21 +274,13 @@ nvme_tcp_ctrlr_enable(struct spdk_nvme_ctrlr *ctrlr)
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* This function must only be called while holding g_spdk_nvme_driver->lock */
|
||||
int
|
||||
nvme_tcp_ctrlr_scan(struct spdk_nvme_probe_ctx *probe_ctx,
|
||||
bool direct_connect)
|
||||
{
|
||||
return nvme_fabric_ctrlr_scan(probe_ctx, direct_connect);
|
||||
}
|
||||
|
||||
int
|
||||
nvme_tcp_ctrlr_destruct(struct spdk_nvme_ctrlr *ctrlr)
|
||||
{
|
||||
struct nvme_tcp_ctrlr *tctrlr = nvme_tcp_ctrlr(ctrlr);
|
||||
|
||||
if (ctrlr->adminq) {
|
||||
nvme_tcp_qpair_destroy(ctrlr->adminq);
|
||||
nvme_tcp_ctrlr_delete_io_qpair(ctrlr, ctrlr->adminq);
|
||||
}
|
||||
|
||||
nvme_ctrlr_destruct_finish(ctrlr);
|
||||
@ -298,30 +290,6 @@ nvme_tcp_ctrlr_destruct(struct spdk_nvme_ctrlr *ctrlr)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
nvme_tcp_ctrlr_set_reg_4(struct spdk_nvme_ctrlr *ctrlr, uint32_t offset, uint32_t value)
|
||||
{
|
||||
return nvme_fabric_ctrlr_set_reg_4(ctrlr, offset, value);
|
||||
}
|
||||
|
||||
int
|
||||
nvme_tcp_ctrlr_set_reg_8(struct spdk_nvme_ctrlr *ctrlr, uint32_t offset, uint64_t value)
|
||||
{
|
||||
return nvme_fabric_ctrlr_set_reg_8(ctrlr, offset, value);
|
||||
}
|
||||
|
||||
int
|
||||
nvme_tcp_ctrlr_get_reg_4(struct spdk_nvme_ctrlr *ctrlr, uint32_t offset, uint32_t *value)
|
||||
{
|
||||
return nvme_fabric_ctrlr_get_reg_4(ctrlr, offset, value);
|
||||
}
|
||||
|
||||
int
|
||||
nvme_tcp_ctrlr_get_reg_8(struct spdk_nvme_ctrlr *ctrlr, uint32_t offset, uint64_t *value)
|
||||
{
|
||||
return nvme_fabric_ctrlr_get_reg_8(ctrlr, offset, value);
|
||||
}
|
||||
|
||||
static int
|
||||
nvme_tcp_qpair_process_send_queue(struct nvme_tcp_qpair *tqpair)
|
||||
{
|
||||
@ -645,12 +613,6 @@ nvme_tcp_qpair_submit_request(struct spdk_nvme_qpair *qpair,
|
||||
return nvme_tcp_qpair_capsule_cmd_send(tqpair, tcp_req);
|
||||
}
|
||||
|
||||
int
|
||||
nvme_tcp_ctrlr_delete_io_qpair(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_qpair *qpair)
|
||||
{
|
||||
return nvme_tcp_qpair_destroy(qpair);
|
||||
}
|
||||
|
||||
int
|
||||
nvme_tcp_qpair_reset(struct spdk_nvme_qpair *qpair)
|
||||
{
|
||||
@ -1509,13 +1471,13 @@ fail:
|
||||
|
||||
/*
|
||||
* Since admin queues take the ctrlr_lock before entering this function,
|
||||
* we can call nvme_tcp_qpair_disconnect. For other qpairs we need
|
||||
* we can call nvme_tcp_ctrlr_disconnect_qpair. For other qpairs we need
|
||||
* to call the generic function which will take the lock for us.
|
||||
*/
|
||||
qpair->transport_failure_reason = SPDK_NVME_QPAIR_FAILURE_UNKNOWN;
|
||||
|
||||
if (nvme_qpair_is_admin_queue(qpair)) {
|
||||
nvme_tcp_qpair_disconnect(qpair);
|
||||
nvme_tcp_ctrlr_disconnect_qpair(qpair->ctrlr, qpair);
|
||||
} else {
|
||||
nvme_ctrlr_disconnect_qpair(qpair);
|
||||
}
|
||||
@ -1562,17 +1524,17 @@ nvme_tcp_qpair_icreq_send(struct nvme_tcp_qpair *tqpair)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
nvme_tcp_qpair_connect(struct nvme_tcp_qpair *tqpair)
|
||||
int
|
||||
nvme_tcp_ctrlr_connect_qpair(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_qpair *qpair)
|
||||
{
|
||||
struct sockaddr_storage dst_addr;
|
||||
struct sockaddr_storage src_addr;
|
||||
int rc;
|
||||
struct spdk_nvme_ctrlr *ctrlr;
|
||||
struct nvme_tcp_qpair *tqpair;
|
||||
int family;
|
||||
long int port;
|
||||
|
||||
ctrlr = tqpair->qpair.ctrlr;
|
||||
tqpair = nvme_tcp_qpair(qpair);
|
||||
|
||||
switch (ctrlr->trid.adrfam) {
|
||||
case SPDK_NVMF_ADRFAM_IPV4:
|
||||
@ -1641,18 +1603,6 @@ nvme_tcp_qpair_connect(struct nvme_tcp_qpair *tqpair)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
nvme_tcp_ctrlr_connect_qpair(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_qpair *qpair)
|
||||
{
|
||||
return nvme_tcp_qpair_connect(nvme_tcp_qpair(qpair));
|
||||
}
|
||||
|
||||
void
|
||||
nvme_tcp_ctrlr_disconnect_qpair(struct spdk_nvme_ctrlr *ctrlr, struct spdk_nvme_qpair *qpair)
|
||||
{
|
||||
return nvme_tcp_qpair_disconnect(qpair);
|
||||
}
|
||||
|
||||
static struct spdk_nvme_qpair *
|
||||
nvme_tcp_ctrlr_create_qpair(struct spdk_nvme_ctrlr *ctrlr,
|
||||
uint16_t qid, uint32_t qsize,
|
||||
@ -1680,13 +1630,13 @@ nvme_tcp_ctrlr_create_qpair(struct spdk_nvme_ctrlr *ctrlr,
|
||||
|
||||
rc = nvme_tcp_alloc_reqs(tqpair);
|
||||
if (rc) {
|
||||
nvme_tcp_qpair_destroy(qpair);
|
||||
nvme_tcp_ctrlr_delete_io_qpair(ctrlr, qpair);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
rc = nvme_transport_ctrlr_connect_qpair(ctrlr, qpair);
|
||||
if (rc < 0) {
|
||||
nvme_tcp_qpair_destroy(qpair);
|
||||
nvme_tcp_ctrlr_delete_io_qpair(ctrlr, qpair);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user