nvmf: move g_tgt.tgt to a single global variable
Eliminate struct nvmf_tgt and the g_tgt global variable. Change-Id: I6b737c4b85dc7d063ead1df5417d344c0f35a30d Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-on: https://review.gerrithub.io/403384 Reviewed-by: Jim Harris <james.r.harris@intel.com> Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
parent
42313b374b
commit
270df2bfd7
@ -57,7 +57,7 @@ spdk_add_nvmf_discovery_subsystem(void)
|
||||
{
|
||||
struct spdk_nvmf_subsystem *subsystem;
|
||||
|
||||
subsystem = spdk_nvmf_subsystem_create(g_tgt.tgt, SPDK_NVMF_DISCOVERY_NQN,
|
||||
subsystem = spdk_nvmf_subsystem_create(g_spdk_nvmf_tgt, SPDK_NVMF_DISCOVERY_NQN,
|
||||
SPDK_NVMF_SUBTYPE_DISCOVERY, 0);
|
||||
if (subsystem == NULL) {
|
||||
SPDK_ERRLOG("Failed creating discovery nvmf library subsystem\n");
|
||||
@ -120,8 +120,8 @@ spdk_nvmf_parse_nvmf_tgt(void)
|
||||
spdk_nvmf_read_config_file_params(sp, &opts);
|
||||
}
|
||||
|
||||
g_tgt.tgt = spdk_nvmf_tgt_create(&opts);
|
||||
if (!g_tgt.tgt) {
|
||||
g_spdk_nvmf_tgt = spdk_nvmf_tgt_create(&opts);
|
||||
if (!g_spdk_nvmf_tgt) {
|
||||
SPDK_ERRLOG("spdk_nvmf_tgt_create() failed\n");
|
||||
return -1;
|
||||
}
|
||||
@ -180,7 +180,7 @@ spdk_nvmf_parse_subsystem(struct spdk_conf_section *sp)
|
||||
return -1;
|
||||
}
|
||||
|
||||
subsystem = spdk_nvmf_subsystem_create(g_tgt.tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||
subsystem = spdk_nvmf_subsystem_create(g_spdk_nvmf_tgt, nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||
if (subsystem == NULL) {
|
||||
goto done;
|
||||
}
|
||||
@ -285,7 +285,7 @@ spdk_nvmf_parse_subsystem(struct spdk_conf_section *sp)
|
||||
snprintf(trid.trsvcid, sizeof(trid.trsvcid), "%s", port);
|
||||
free(address_dup);
|
||||
|
||||
ret = spdk_nvmf_tgt_listen(g_tgt.tgt, &trid);
|
||||
ret = spdk_nvmf_tgt_listen(g_spdk_nvmf_tgt, &trid);
|
||||
if (ret) {
|
||||
SPDK_ERRLOG("Failed to listen on transport %s address %s\n",
|
||||
transport, address);
|
||||
|
@ -45,13 +45,9 @@ struct spdk_nvmf_tgt_conf {
|
||||
uint32_t acceptor_poll_rate;
|
||||
};
|
||||
|
||||
struct nvmf_tgt {
|
||||
struct spdk_nvmf_tgt *tgt;
|
||||
};
|
||||
|
||||
extern struct spdk_nvmf_tgt_conf g_spdk_nvmf_tgt_conf;
|
||||
|
||||
extern struct nvmf_tgt g_tgt;
|
||||
extern struct spdk_nvmf_tgt *g_spdk_nvmf_tgt;
|
||||
|
||||
int spdk_nvmf_parse_conf(void);
|
||||
|
||||
|
@ -289,7 +289,7 @@ spdk_rpc_get_nvmf_subsystems(struct spdk_jsonrpc_request *request,
|
||||
}
|
||||
|
||||
spdk_json_write_array_begin(w);
|
||||
subsystem = spdk_nvmf_subsystem_get_first(g_tgt.tgt);
|
||||
subsystem = spdk_nvmf_subsystem_get_first(g_spdk_nvmf_tgt);
|
||||
while (subsystem) {
|
||||
dump_nvmf_subsystem(w, subsystem);
|
||||
subsystem = spdk_nvmf_subsystem_get_next(subsystem);
|
||||
@ -605,7 +605,7 @@ spdk_rpc_construct_nvmf_subsystem(struct spdk_jsonrpc_request *request,
|
||||
SPDK_NOTICELOG("Ignoring it and continuing.\n");
|
||||
}
|
||||
|
||||
subsystem = spdk_nvmf_subsystem_create(g_tgt.tgt, req.nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||
subsystem = spdk_nvmf_subsystem_create(g_spdk_nvmf_tgt, req.nqn, SPDK_NVMF_SUBTYPE_NVME, 0);
|
||||
if (!subsystem) {
|
||||
goto invalid;
|
||||
}
|
||||
@ -629,7 +629,7 @@ spdk_rpc_construct_nvmf_subsystem(struct spdk_jsonrpc_request *request,
|
||||
goto invalid;
|
||||
}
|
||||
|
||||
if (spdk_nvmf_tgt_listen(g_tgt.tgt, &trid)) {
|
||||
if (spdk_nvmf_tgt_listen(g_spdk_nvmf_tgt, &trid)) {
|
||||
goto invalid;
|
||||
}
|
||||
|
||||
@ -729,7 +729,7 @@ spdk_rpc_delete_nvmf_subsystem(struct spdk_jsonrpc_request *request,
|
||||
goto invalid;
|
||||
}
|
||||
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_tgt.tgt, req.nqn);
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_spdk_nvmf_tgt, req.nqn);
|
||||
if (!subsystem) {
|
||||
goto invalid;
|
||||
}
|
||||
@ -809,7 +809,7 @@ nvmf_rpc_listen_paused(struct spdk_nvmf_subsystem *subsystem,
|
||||
struct nvmf_rpc_listener_ctx *ctx = cb_arg;
|
||||
|
||||
if (ctx->op == NVMF_RPC_LISTEN_ADD) {
|
||||
if (spdk_nvmf_tgt_listen(g_tgt.tgt, &ctx->trid)) {
|
||||
if (spdk_nvmf_tgt_listen(g_spdk_nvmf_tgt, &ctx->trid)) {
|
||||
SPDK_ERRLOG("Unable to add listener.\n");
|
||||
goto invalid;
|
||||
}
|
||||
@ -867,7 +867,7 @@ nvmf_rpc_subsystem_add_listener(struct spdk_jsonrpc_request *request,
|
||||
return;
|
||||
}
|
||||
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_tgt.tgt, ctx->nqn);
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_spdk_nvmf_tgt, ctx->nqn);
|
||||
if (!subsystem) {
|
||||
SPDK_ERRLOG("Unable to find subsystem with NQN %s\n", ctx->nqn);
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS, "Invalid parameters");
|
||||
@ -916,7 +916,7 @@ nvmf_rpc_subsystem_remove_listener(struct spdk_jsonrpc_request *request,
|
||||
return;
|
||||
}
|
||||
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_tgt.tgt, ctx->nqn);
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_spdk_nvmf_tgt, ctx->nqn);
|
||||
if (!subsystem) {
|
||||
SPDK_ERRLOG("Unable to find subsystem with NQN %s\n", ctx->nqn);
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS, "Invalid parameters");
|
||||
@ -1057,7 +1057,7 @@ nvmf_rpc_subsystem_add_ns(struct spdk_jsonrpc_request *request,
|
||||
ctx->request = request;
|
||||
ctx->response_sent = false;
|
||||
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_tgt.tgt, ctx->nqn);
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_spdk_nvmf_tgt, ctx->nqn);
|
||||
if (!subsystem) {
|
||||
SPDK_ERRLOG("Unable to find subsystem with NQN %s\n", ctx->nqn);
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS, "Invalid parameters");
|
||||
@ -1164,7 +1164,7 @@ nvmf_rpc_subsystem_remove_ns(struct spdk_jsonrpc_request *request,
|
||||
ctx->request = request;
|
||||
ctx->response_sent = false;
|
||||
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_tgt.tgt, ctx->nqn);
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_spdk_nvmf_tgt, ctx->nqn);
|
||||
if (!subsystem) {
|
||||
SPDK_ERRLOG("Unable to find subsystem with NQN %s\n", ctx->nqn);
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS, "Invalid parameters");
|
||||
@ -1296,7 +1296,7 @@ nvmf_rpc_subsystem_add_host(struct spdk_jsonrpc_request *request,
|
||||
ctx->op = NVMF_RPC_HOST_ADD;
|
||||
ctx->response_sent = false;
|
||||
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_tgt.tgt, ctx->nqn);
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_spdk_nvmf_tgt, ctx->nqn);
|
||||
if (!subsystem) {
|
||||
SPDK_ERRLOG("Unable to find subsystem with NQN %s\n", ctx->nqn);
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS, "Invalid parameters");
|
||||
@ -1338,7 +1338,7 @@ nvmf_rpc_subsystem_remove_host(struct spdk_jsonrpc_request *request,
|
||||
ctx->op = NVMF_RPC_HOST_REMOVE;
|
||||
ctx->response_sent = false;
|
||||
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_tgt.tgt, ctx->nqn);
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_spdk_nvmf_tgt, ctx->nqn);
|
||||
if (!subsystem) {
|
||||
SPDK_ERRLOG("Unable to find subsystem with NQN %s\n", ctx->nqn);
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS, "Invalid parameters");
|
||||
@ -1386,7 +1386,7 @@ nvmf_rpc_subsystem_allow_any_host(struct spdk_jsonrpc_request *request,
|
||||
ctx->op = NVMF_RPC_HOST_ALLOW_ANY;
|
||||
ctx->response_sent = false;
|
||||
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_tgt.tgt, ctx->nqn);
|
||||
subsystem = spdk_nvmf_tgt_find_subsystem(g_spdk_nvmf_tgt, ctx->nqn);
|
||||
if (!subsystem) {
|
||||
SPDK_ERRLOG("Unable to find subsystem with NQN %s\n", ctx->nqn);
|
||||
spdk_jsonrpc_send_error_response(request, SPDK_JSONRPC_ERROR_INVALID_PARAMS, "Invalid parameters");
|
||||
|
@ -59,7 +59,7 @@ struct nvmf_tgt_poll_group {
|
||||
struct spdk_nvmf_poll_group *group;
|
||||
};
|
||||
|
||||
struct nvmf_tgt g_tgt = {};
|
||||
struct spdk_nvmf_tgt *g_spdk_nvmf_tgt = NULL;
|
||||
|
||||
static enum nvmf_tgt_state g_tgt_state;
|
||||
|
||||
@ -178,7 +178,7 @@ nvmf_tgt_create_poll_group(void *ctx)
|
||||
pg = &g_poll_groups[spdk_env_get_current_core()];
|
||||
assert(pg != NULL);
|
||||
|
||||
pg->group = spdk_nvmf_poll_group_create(g_tgt.tgt);
|
||||
pg->group = spdk_nvmf_poll_group_create(g_spdk_nvmf_tgt);
|
||||
if (pg->group == NULL) {
|
||||
SPDK_ERRLOG("Failed to create poll group for core %u\n", spdk_env_get_current_core());
|
||||
}
|
||||
@ -262,7 +262,7 @@ nvmf_tgt_advance_state(void)
|
||||
case NVMF_TGT_INIT_START_SUBSYSTEMS: {
|
||||
struct spdk_nvmf_subsystem *subsystem;
|
||||
|
||||
subsystem = spdk_nvmf_subsystem_get_first(g_tgt.tgt);
|
||||
subsystem = spdk_nvmf_subsystem_get_first(g_spdk_nvmf_tgt);
|
||||
|
||||
if (subsystem) {
|
||||
spdk_nvmf_subsystem_start(subsystem, nvmf_tgt_subsystem_started, NULL);
|
||||
@ -272,7 +272,7 @@ nvmf_tgt_advance_state(void)
|
||||
break;
|
||||
}
|
||||
case NVMF_TGT_INIT_START_ACCEPTOR:
|
||||
g_acceptor_poller = spdk_poller_register(acceptor_poll, g_tgt.tgt,
|
||||
g_acceptor_poller = spdk_poller_register(acceptor_poll, g_spdk_nvmf_tgt,
|
||||
g_spdk_nvmf_tgt_conf.acceptor_poll_rate);
|
||||
SPDK_NOTICELOG("Acceptor running\n");
|
||||
g_tgt_state = NVMF_TGT_RUNNING;
|
||||
@ -287,7 +287,7 @@ nvmf_tgt_advance_state(void)
|
||||
case NVMF_TGT_FINI_STOP_SUBSYSTEMS: {
|
||||
struct spdk_nvmf_subsystem *subsystem;
|
||||
|
||||
subsystem = spdk_nvmf_subsystem_get_first(g_tgt.tgt);
|
||||
subsystem = spdk_nvmf_subsystem_get_first(g_spdk_nvmf_tgt);
|
||||
|
||||
if (subsystem) {
|
||||
spdk_nvmf_subsystem_stop(subsystem, nvmf_tgt_subsystem_stopped, NULL);
|
||||
@ -303,7 +303,7 @@ nvmf_tgt_advance_state(void)
|
||||
nvmf_tgt_destroy_poll_group_done);
|
||||
break;
|
||||
case NVMF_TGT_FINI_FREE_RESOURCES:
|
||||
spdk_nvmf_tgt_destroy(g_tgt.tgt);
|
||||
spdk_nvmf_tgt_destroy(g_spdk_nvmf_tgt);
|
||||
g_tgt_state = NVMF_TGT_STOPPED;
|
||||
break;
|
||||
case NVMF_TGT_STOPPED:
|
||||
|
Loading…
Reference in New Issue
Block a user