src/imm/agent/imma_om_api.cc | 2 --
src/imm/immnd/immnd_evt.c | 8 --------
src/imm/immnd/immnd_mds.c | 26 ++++++++++++++++++++++++--
3 files changed, 24 insertions(+), 12 deletions(-)
diff --git a/src/imm/agent/imma_om_api.cc b/src/imm/agent/imma_om_api.cc
--- a/src/imm/agent/imma_om_api.cc
+++ b/src/imm/agent/imma_om_api.cc
@@ -139,7 +139,6 @@ SaAisErrorT saImmOmInitialize_o2(SaImmHa
cl_node->isImmA2x11 = true;
if
(requested_version.minorVersion >= 0x12) {
cl_node->isImmA2x12 =
true;
- TRACE("DBG: version
A.2.18 is set");
}
}
}
@@ -203,7 +202,6 @@ SaAisErrorT saImmOmInitialize(SaImmHandl
cl_node->isImmA2x11 = true;
if
(requested_version.minorVersion >= 0x12) {
cl_node->isImmA2x12 = true;
-
TRACE("DBG: version A.2.18 is set");
}
}
}
diff --git a/src/imm/immnd/immnd_evt.c b/src/imm/immnd/immnd_evt.c
--- a/src/imm/immnd/immnd_evt.c
+++ b/src/imm/immnd/immnd_evt.c
@@ -9431,14 +9431,6 @@ static void immnd_evt_proc_finalize_sync
"SA_IMM_KEEP_REPOSITORY":"SA_IMM_INIT_FROM_FILE");
}
immnd_adjustEpoch(cb, true);
- /* If the node is payload give the indication to
clm_init_sel_obj
- * because payload nodes are not subscribing for AVD up
- */
- if(!immnd_cb->isNodeTypeController && !cb->clm_hdl){
- TRACE_8("clm_init_sel_obj indication is given at
payload");
- ncs_sel_obj_ind(&immnd_cb->clm_init_sel_obj);
-
- }
/* Sync completed for client => trigger active resurrect. */
memset(&send_evt, '\0', sizeof(IMMSV_EVT));
diff --git a/src/imm/immnd/immnd_mds.c b/src/imm/immnd/immnd_mds.c
--- a/src/imm/immnd/immnd_mds.c
+++ b/src/imm/immnd/immnd_mds.c
@@ -204,7 +204,22 @@ uint32_t immnd_mds_register(IMMND_CB *cb
LOG_WA("MDS AVD Subscription Failed");
goto error1;
}
- }
+ } else {
+
+ /* STEP 6: Subscribe to CLMS events in MDS. This will be
+ used for CLM registration at Payloads.*/
+
+ svc_id[0] = NCSMDS_SVC_ID_CLMS;
+ svc_info.i_op = MDS_SUBSCRIBE;
+ svc_info.info.svc_subscribe.i_scope = NCSMDS_SCOPE_NONE;
+ svc_info.info.svc_subscribe.i_num_svcs = 1;
+ svc_info.info.svc_subscribe.i_svc_ids = svc_id;
+
+ if (ncsmds_api(&svc_info) == NCSCC_RC_FAILURE) {
+ LOG_WA("MDS CLMS Subscription Failed");
+ goto error1;
+ }
+ }
cb->node_id = m_NCS_GET_NODE_ID;
TRACE_2("cb->node_id:%x", cb->node_id);
@@ -629,7 +644,14 @@ static uint32_t immnd_mds_svc_evt(IMMND_
ncs_sel_obj_ind(&immnd_cb->clm_init_sel_obj);
}
}
- }
+ } else if(!cb->isNodeTypeController && svc_evt->i_svc_id ==
NCSMDS_SVC_ID_CLMS){
+ if (svc_evt->i_change == NCSMDS_UP) {
+ TRACE_8("MDS UP dest: %" PRIx64 ", node ID: %x, svc_id:
%d",
+ svc_evt->i_dest, svc_evt->i_node_id,
svc_evt->i_svc_id);
+ TRACE_8("CLMS is UP");
+ ncs_sel_obj_ind(&immnd_cb->clm_init_sel_obj);
+ }
+ }
/* IMMA events from other nodes can not happen */
if ((svc_evt->i_svc_id == NCSMDS_SVC_ID_IMMA_OM) || (svc_evt->i_svc_id
== NCSMDS_SVC_ID_IMMA_OI))
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel