nvmf/fc: simplify nvmf_fc_master_enqueue_event
Remove some of the boilerplate code from each case and replace with just an spdk_msg_fn assignment. This also reduces the size of an upcoming change needed in this function. Signed-off-by: Jim Harris <james.r.harris@intel.com> Change-Id: Ia209073cfb66032f2cca6bb44a09e1984ef2110c Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4257 Reviewed-by: Anil Veerabhadrappa <anil.veerabhadrappa@broadcom.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Community-CI: Broadcom CI Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
This commit is contained in:
parent
ae8c48d4bb
commit
7d5318cfb1
@ -3854,6 +3854,7 @@ nvmf_fc_master_enqueue_event(enum spdk_fc_event event_type, void *args,
|
||||
{
|
||||
int err = 0;
|
||||
struct spdk_nvmf_fc_adm_api_data *api_data = NULL;
|
||||
spdk_msg_fn event_fn = NULL;
|
||||
|
||||
SPDK_DEBUGLOG(SPDK_LOG_NVMF_FC_ADM_API, "Enqueue event %d.\n", event_type);
|
||||
|
||||
@ -3882,53 +3883,43 @@ nvmf_fc_master_enqueue_event(enum spdk_fc_event event_type, void *args,
|
||||
|
||||
switch (event_type) {
|
||||
case SPDK_FC_HW_PORT_INIT:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_hw_port_init,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_hw_port_init;
|
||||
break;
|
||||
|
||||
case SPDK_FC_HW_PORT_ONLINE:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_hw_port_online,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_hw_port_online;
|
||||
break;
|
||||
|
||||
case SPDK_FC_HW_PORT_OFFLINE:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_hw_port_offline,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_hw_port_offline;
|
||||
break;
|
||||
|
||||
case SPDK_FC_NPORT_CREATE:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_nport_create,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_nport_create;
|
||||
break;
|
||||
|
||||
case SPDK_FC_NPORT_DELETE:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_nport_delete,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_nport_delete;
|
||||
break;
|
||||
|
||||
case SPDK_FC_IT_ADD:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_i_t_add,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_i_t_add;
|
||||
break;
|
||||
|
||||
case SPDK_FC_IT_DELETE:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_i_t_delete,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_i_t_delete;
|
||||
break;
|
||||
|
||||
case SPDK_FC_ABTS_RECV:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_abts_recv,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_abts_recv;
|
||||
break;
|
||||
|
||||
case SPDK_FC_LINK_BREAK:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_hw_port_link_break,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_hw_port_link_break;
|
||||
break;
|
||||
|
||||
case SPDK_FC_HW_PORT_RESET:
|
||||
nvmf_fc_adm_run_on_master_thread(nvmf_fc_adm_evnt_hw_port_reset,
|
||||
(void *)api_data);
|
||||
event_fn = nvmf_fc_adm_evnt_hw_port_reset;
|
||||
break;
|
||||
|
||||
case SPDK_FC_UNRECOVERABLE_ERR:
|
||||
@ -3941,6 +3932,8 @@ nvmf_fc_master_enqueue_event(enum spdk_fc_event event_type, void *args,
|
||||
done:
|
||||
|
||||
if (err == 0) {
|
||||
assert(event_fn != NULL);
|
||||
nvmf_fc_adm_run_on_master_thread(event_fn, (void *)api_data);
|
||||
SPDK_DEBUGLOG(SPDK_LOG_NVMF_FC_ADM_API, "Enqueue event %d done successfully\n", event_type);
|
||||
} else {
|
||||
SPDK_ERRLOG("Enqueue event %d failed, err = %d\n", event_type, err);
|
||||
|
Loading…
Reference in New Issue
Block a user