- immnd prioritize re-introduce rsp from immd. - immnd ignore broadcast events from IMMD if re-introduce on-going. --- src/imm/immnd/immnd_evt.c | 12 ++++++++++++ src/imm/immnd/immnd_mds.c | 5 ++++- 2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/src/imm/immnd/immnd_evt.c b/src/imm/immnd/immnd_evt.c index afc2106a0..087d512af 100644 --- a/src/imm/immnd/immnd_evt.c +++ b/src/imm/immnd/immnd_evt.c @@ -625,6 +625,18 @@ void immnd_process_evt(void) return; } + if ((cb->mIntroduced == 2) && + ((evt->info.immnd.type == IMMND_EVT_D2ND_SYNC_START) || + (evt->info.immnd.type == IMMND_EVT_D2ND_SYNC_ABORT) || + (evt->info.immnd.type == IMMND_EVT_D2ND_PBE_PRTO_PURGE_MUTATIONS) || + (evt->info.immnd.type == IMMND_EVT_D2ND_DUMP_OK) || + (evt->info.immnd.type == IMMND_EVT_D2ND_LOADING_OK))) { + LOG_WA("DISCARD message from IMMD %x as re-intro on-going", + evt->sinfo.node_id); + immnd_evt_destroy(evt, true, __LINE__); + return; + } + if ((evt->info.immnd.type != IMMND_EVT_D2ND_GLOB_FEVS_REQ) && (evt->info.immnd.type != IMMND_EVT_D2ND_GLOB_FEVS_REQ_2)) immsv_msg_trace_rec(evt->sinfo.dest, evt); diff --git a/src/imm/immnd/immnd_mds.c b/src/imm/immnd/immnd_mds.c index 02cb4b552..d9cccd5d9 100644 --- a/src/imm/immnd/immnd_mds.c +++ b/src/imm/immnd/immnd_mds.c @@ -552,7 +552,10 @@ static uint32_t immnd_mds_rcv(IMMND_CB *cb, MDS_CALLBACK_RECEIVE_INFO *rcv_info) } /* Put it in IMMND's Event Queue */ - if (pEvt->info.immnd.type == IMMND_EVT_A2ND_IMM_INIT) + if (pEvt->info.immnd.type == IMMND_EVT_D2ND_INTRO_RSP) + rc = m_NCS_IPC_SEND(&cb->immnd_mbx, (NCSCONTEXT)pEvt, + NCS_IPC_PRIORITY_VERY_HIGH); + else if (pEvt->info.immnd.type == IMMND_EVT_A2ND_IMM_INIT) rc = m_NCS_IPC_SEND(&cb->immnd_mbx, (NCSCONTEXT)pEvt, NCS_IPC_PRIORITY_HIGH); else -- 2.17.1 _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel