osaf/services/saf/amf/amfd/comp.cc | 4 ++-- osaf/services/saf/amf/amfd/include/su.h | 5 +---- osaf/services/saf/amf/amfd/node.cc | 6 +++--- osaf/services/saf/amf/amfd/sg.cc | 4 ++-- osaf/services/saf/amf/amfd/sg_2n_fsm.cc | 12 ++++++------ osaf/services/saf/amf/amfd/sg_nored_fsm.cc | 16 ++++++++-------- osaf/services/saf/amf/amfd/sg_npm_fsm.cc | 14 +++++++------- osaf/services/saf/amf/amfd/sg_nway_fsm.cc | 19 +++++++++---------- osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc | 16 ++++++++-------- osaf/services/saf/amf/amfd/sgproc.cc | 16 ++++++---------- osaf/services/saf/amf/amfd/su.cc | 14 +++++++++++--- osaf/services/saf/amf/amfd/util.cc | 25 +++++++++---------------- 12 files changed, 72 insertions(+), 79 deletions(-)
diff --git a/osaf/services/saf/amf/amfd/comp.cc b/osaf/services/saf/amf/amfd/comp.cc --- a/osaf/services/saf/amf/amfd/comp.cc +++ b/osaf/services/saf/amf/amfd/comp.cc @@ -1126,7 +1126,7 @@ static void comp_ccb_apply_modify_hdlr(s param.name = comp->comp_info.name; comp_type = avd_comptype_get(&comp->saAmfCompType); - m_AVD_GET_SU_NODE_PTR(avd_cb, comp->su, su_node_ptr); + su_node_ptr = comp->su->get_node_ptr(); if ((su_node_ptr->node_state == AVD_AVND_STATE_PRESENT) || (su_node_ptr->node_state == AVD_AVND_STATE_NO_CONFIG) || @@ -1567,7 +1567,7 @@ static void comp_ccb_apply_delete_hdlr(s /* send a message to the AVND deleting the * component. */ - m_AVD_GET_SU_NODE_PTR(avd_cb, comp->su, su_node_ptr); + su_node_ptr = comp->su->get_node_ptr(); if ((su_node_ptr->node_state == AVD_AVND_STATE_PRESENT) || (su_node_ptr->node_state == AVD_AVND_STATE_NO_CONFIG) || (su_node_ptr->node_state == AVD_AVND_STATE_NCS_INIT)) { diff --git a/osaf/services/saf/amf/amfd/include/su.h b/osaf/services/saf/amf/amfd/include/su.h --- a/osaf/services/saf/amf/amfd/include/su.h +++ b/osaf/services/saf/amf/amfd/include/su.h @@ -115,6 +115,7 @@ class AVD_SU { void set_all_susis_assigned(void); void set_term_state(bool state); void set_su_switch(SaToggleState state); + struct avd_avnd_tag *get_node_ptr(void); private: void send_attribute_update(AVSV_AMF_SU_ATTR_ID attrib_id); @@ -140,10 +141,6 @@ typedef struct { (i_su->saAmfSUOperState == SA_AMF_OPERATIONAL_ENABLED)\ ) -#define m_AVD_GET_SU_NODE_PTR(avd_cb,i_su,su_node_ptr) \ - if(true == i_su->su_is_external) su_node_ptr = avd_cb->ext_comp_info.local_avnd_node; \ - else su_node_ptr = i_su->su_on_node; - /** * Get SUs from IMM and create internal objects * diff --git a/osaf/services/saf/amf/amfd/node.cc b/osaf/services/saf/amf/amfd/node.cc --- a/osaf/services/saf/amf/amfd/node.cc +++ b/osaf/services/saf/amf/amfd/node.cc @@ -877,7 +877,7 @@ void avd_node_admin_lock_unlock_shutdown su = node->list_of_su; while (su != NULL) { - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (m_AVD_APP_SU_IS_INSVC(su, su_node_ptr) && ((su->saAmfSUPreInstantiable) ? @@ -920,8 +920,8 @@ void avd_node_admin_lock_unlock_shutdown */ su_sg = su->sg_of_su->list_of_su; while (su_sg != NULL) { - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); - m_AVD_GET_SU_NODE_PTR(cb, su_sg, su_sg_node_ptr); + su_node_ptr = su->get_node_ptr(); + su_sg_node_ptr = su_sg->get_node_ptr(); if ((su != su_sg) && (su_node_ptr == su_sg_node_ptr) && diff --git a/osaf/services/saf/amf/amfd/sg.cc b/osaf/services/saf/amf/amfd/sg.cc --- a/osaf/services/saf/amf/amfd/sg.cc +++ b/osaf/services/saf/amf/amfd/sg.cc @@ -752,7 +752,7 @@ static void sg_nd_attribute_update(AVD_S /* This value has to be updated on each SU on this SG */ su = sg->list_of_su; while (su) { - m_AVD_GET_SU_NODE_PTR(avd_cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if ((su_node_ptr) && (su_node_ptr->node_state == AVD_AVND_STATE_PRESENT)) { param.name = su->name; @@ -1152,7 +1152,7 @@ static void sg_admin_op_cb(SaImmOiHandle /* Avoid multiple admin operations on other SUs belonging to the same SG. */ for (su = sg->list_of_su; su != NULL; su = su->sg_list_su_next) { - m_AVD_GET_SU_NODE_PTR(avd_cb, su, node); + node = su->get_node_ptr(); if (su->pend_cbk.invocation != 0) { report_admin_op_error(immOiHandle, invocation, SA_AIS_ERR_TRY_AGAIN, NULL, "Admin operation'%u' is already going on su'%s' belonging to the same SG", diff --git a/osaf/services/saf/amf/amfd/sg_2n_fsm.cc b/osaf/services/saf/amf/amfd/sg_2n_fsm.cc --- a/osaf/services/saf/amf/amfd/sg_2n_fsm.cc +++ b/osaf/services/saf/amf/amfd/sg_2n_fsm.cc @@ -932,7 +932,7 @@ static uint32_t avd_sg_2n_su_fault_su_op } } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -1935,7 +1935,7 @@ static uint32_t avd_sg_2n_susi_sucss_su_ (su->sg_of_su->su_oper_list.su == su)) { /* quiesced all and SU is in the operation list */ - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); avd_sg_2n_act_susi(cb, su->sg_of_su, &s_susi); if (susi != NULL) { @@ -2223,7 +2223,7 @@ static uint32_t avd_sg_2n_susi_sucss_su_ /* realign the SG. */ } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* the admin state of the SU is shutdown change it to lock. */ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -2731,7 +2731,7 @@ uint32_t avd_sg_2n_susi_fail_func(AVD_CL goto done; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* the admin state of the SU is shutdown change it to lock. */ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -3046,7 +3046,7 @@ static void avd_sg_2n_node_fail_su_oper( avd_sidep_sg_take_action(su->sg_of_su); } /* else (s_susi != AVD_SU_SI_REL_NULL) */ - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* the admin state of the SU is shutdown change it to lock. */ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -3072,7 +3072,7 @@ static void avd_sg_2n_node_fail_su_oper( avd_sg_su_oper_list_del(cb, su, false); su->delete_all_susis(); - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* the admin state of the SU is shutdown change it to lock. */ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { diff --git a/osaf/services/saf/amf/amfd/sg_nored_fsm.cc b/osaf/services/saf/amf/amfd/sg_nored_fsm.cc --- a/osaf/services/saf/amf/amfd/sg_nored_fsm.cc +++ b/osaf/services/saf/amf/amfd/sg_nored_fsm.cc @@ -232,7 +232,7 @@ uint32_t avd_sg_nored_su_fault_func(AVD_ if (avd_susi_mod_send(su->list_of_susi, SA_AMF_HA_QUIESCED) != NCSCC_RC_SUCCESS) return NCSCC_RC_FAILURE; - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -271,7 +271,7 @@ uint32_t avd_sg_nored_su_fault_func(AVD_ if (avd_susi_mod_send(su->list_of_susi, SA_AMF_HA_QUIESCED) != NCSCC_RC_SUCCESS) return NCSCC_RC_FAILURE; - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -503,7 +503,7 @@ uint32_t avd_sg_nored_susi_sucss_func(AV if (avd_susi_del_send(su->list_of_susi) != NCSCC_RC_SUCCESS) return NCSCC_RC_FAILURE; - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->sg_of_su->admin_si == su->list_of_susi->si) { avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED); @@ -593,7 +593,7 @@ uint32_t avd_sg_nored_susi_sucss_func(AV m_AVD_SET_SG_FSM(cb, (su->sg_of_su), AVD_SG_FSM_SG_REALIGN); - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -779,7 +779,7 @@ uint32_t avd_sg_nored_susi_fail_func(AVD if (avd_susi_del_send(su->list_of_susi) == NCSCC_RC_FAILURE) return NCSCC_RC_FAILURE; - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->sg_of_su->admin_si == su->list_of_susi->si) { avd_si_admin_state_set((su->sg_of_su->admin_si), SA_AMF_ADMIN_LOCKED); @@ -817,7 +817,7 @@ uint32_t avd_sg_nored_susi_fail_func(AVD if (avd_susi_del_send(su->list_of_susi) == NCSCC_RC_FAILURE) return NCSCC_RC_FAILURE; - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -1022,7 +1022,7 @@ void avd_sg_nored_node_fail_func(AVD_CL_ avd_sg_su_oper_list_del(cb, su, false); - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -1064,7 +1064,7 @@ void avd_sg_nored_node_fail_func(AVD_CL_ if (su->sg_of_su->su_oper_list.su == su) { avd_sg_su_oper_list_del(cb, su, false); - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); diff --git a/osaf/services/saf/amf/amfd/sg_npm_fsm.cc b/osaf/services/saf/amf/amfd/sg_npm_fsm.cc --- a/osaf/services/saf/amf/amfd/sg_npm_fsm.cc +++ b/osaf/services/saf/amf/amfd/sg_npm_fsm.cc @@ -985,7 +985,7 @@ static uint32_t avd_sg_npm_su_fault_su_o return NCSCC_RC_FAILURE; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -1305,7 +1305,7 @@ static uint32_t avd_sg_npm_su_fault_sg_r return NCSCC_RC_FAILURE; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -1712,7 +1712,7 @@ static uint32_t avd_sg_npm_susi_sucss_sg /* Send D2N-INFO_SU_SI_ASSIGN message remove all to this SU. If * the SUs admin state is shutdown change it to LOCK. */ - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -2562,7 +2562,7 @@ static uint32_t avd_sg_npm_susi_sucss_su /* Send D2N-INFO_SU_SI_ASSIGN message remove all to this SU. If * the SUs admin state is shutdown change it to LOCK. */ - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* If the admin state of the SU is shutdown change it to lock*/ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -3047,7 +3047,7 @@ uint32_t avd_sg_npm_susi_fail_func(AVD_C return NCSCC_RC_FAILURE; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -3664,7 +3664,7 @@ static void avd_sg_npm_node_fail_sg_relg /* remove the SU from the operation list. */ avd_sg_su_oper_list_del(cb, su, false); - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -3806,7 +3806,7 @@ static void avd_sg_npm_node_fail_su_oper /* remove the SU from the operation list. */ avd_sg_su_oper_list_del(cb, su, false); - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { diff --git a/osaf/services/saf/amf/amfd/sg_nway_fsm.cc b/osaf/services/saf/amf/amfd/sg_nway_fsm.cc --- a/osaf/services/saf/amf/amfd/sg_nway_fsm.cc +++ b/osaf/services/saf/amf/amfd/sg_nway_fsm.cc @@ -1809,7 +1809,7 @@ uint32_t avd_sg_nway_su_fault_sg_realign } /* => su is present in the su-oper list */ - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if ((SA_AMF_ADMIN_SHUTTING_DOWN == su->saAmfSUAdminState) || (SA_AMF_ADMIN_SHUTTING_DOWN == su_node_ptr->saAmfNodeAdminState)) { @@ -1962,8 +1962,7 @@ uint32_t avd_sg_nway_su_fault_su_oper(AV TRACE_ENTER2("SU '%s'",su->name.value); if (su->sg_of_su->su_oper_list.su == su) { - - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* => su-lock/shutdown is followed by su-disable event */ if ((SA_AMF_ADMIN_SHUTTING_DOWN == su->saAmfSUAdminState) || @@ -2431,7 +2430,7 @@ uint32_t avd_sg_nway_susi_succ_sg_realig goto done; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* if su-shutdown semantics in progress, mark it locked */ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -2522,7 +2521,7 @@ uint32_t avd_sg_nway_susi_succ_sg_realig goto done; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* if su-shutdown semantics in progress, mark it locked */ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -2626,7 +2625,7 @@ uint32_t avd_sg_nway_susi_succ_sg_realig } else if (!susi && (AVSV_SUSI_ACT_DEL == act)) { /* => remove all success */ /* if su-shutdown semantics in progress, mark it locked */ - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -2773,7 +2772,7 @@ uint32_t avd_sg_nway_susi_succ_su_oper(A goto done; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* if su-shutdown semantics in progress, mark it locked */ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -2812,7 +2811,7 @@ uint32_t avd_sg_nway_susi_succ_su_oper(A goto done; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); /* if su-shutdown semantics in progress, mark it locked */ if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -3269,7 +3268,7 @@ void avd_sg_nway_node_fail_su_oper(AVD_C m_AVD_CHK_OPLIST(su, is_su_present); if (is_su_present) { - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); @@ -3652,7 +3651,7 @@ void avd_sg_nway_node_fail_sg_realign(AV m_AVD_CHK_OPLIST(su, is_su_present); if (true == is_su_present) { - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { diff --git a/osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc b/osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc --- a/osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc +++ b/osaf/services/saf/amf/amfd/sg_nwayact_fsm.cc @@ -395,7 +395,7 @@ uint32_t avd_sg_nacvred_su_fault_func(AV } m_AVD_CHK_OPLIST(su, flag); if (flag == true) { - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -427,7 +427,7 @@ uint32_t avd_sg_nacvred_su_fault_func(AV return NCSCC_RC_FAILURE; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -746,7 +746,7 @@ uint32_t avd_sg_nacvred_susi_sucss_func( return NCSCC_RC_FAILURE; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->sg_of_su->admin_si != AVD_SI_NULL) { if ((su->sg_of_su->admin_si->list_of_sisu->su == su) && (su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) { @@ -948,7 +948,7 @@ uint32_t avd_sg_nacvred_susi_sucss_func( m_AVD_SET_SG_FSM(cb, (su->sg_of_su), AVD_SG_FSM_SG_REALIGN); - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -1169,7 +1169,7 @@ uint32_t avd_sg_nacvred_susi_fail_func(A return NCSCC_RC_FAILURE; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->sg_of_su->admin_si != AVD_SI_NULL) { if ((su->sg_of_su->admin_si->list_of_sisu->su == su) && (su->sg_of_su->admin_si->list_of_sisu->si_next == AVD_SU_SI_REL_NULL)) { @@ -1246,7 +1246,7 @@ uint32_t avd_sg_nacvred_susi_fail_func(A return NCSCC_RC_SUCCESS; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); m_AVD_SET_SG_FSM(cb, (su->sg_of_su), AVD_SG_FSM_SG_REALIGN); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -1492,7 +1492,7 @@ void avd_sg_nacvred_node_fail_func(AVD_C if (flag == true) { avd_sg_su_oper_list_del(cb, su, false); - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { @@ -1545,7 +1545,7 @@ void avd_sg_nacvred_node_fail_func(AVD_C su->sg_of_su->si_tobe_redistributed = NULL; m_AVSV_SEND_CKPT_UPDT_ASYNC_RMV(cb, su->sg_of_su, AVSV_CKPT_AVD_SI_TRANS); } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (su->saAmfSUAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { su->set_admin_state(SA_AMF_ADMIN_LOCKED); } else if (su_node_ptr->saAmfNodeAdminState == SA_AMF_ADMIN_SHUTTING_DOWN) { diff --git a/osaf/services/saf/amf/amfd/sgproc.cc b/osaf/services/saf/amf/amfd/sgproc.cc --- a/osaf/services/saf/amf/amfd/sgproc.cc +++ b/osaf/services/saf/amf/amfd/sgproc.cc @@ -444,7 +444,7 @@ void avd_su_oper_state_evh(AVD_CL_CB *cb goto done; } - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if (n2d_msg->msg_info.n2d_opr_state.rec_rcvr.saf_amf == SA_AMF_NODE_SWITCHOVER) { saflog(LOG_NOTICE, amfSvcUsrName, "Node Switch-Over requested by '%s'", @@ -661,7 +661,6 @@ void avd_su_oper_state_evh(AVD_CL_CB *cb * the SG FSM. */ if (su->sg_of_su->sg_ncs_spec == true) { - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); if (su->saAmfSUAdminState == SA_AMF_ADMIN_UNLOCKED) { su->set_readiness_state(SA_AMF_READINESS_IN_SERVICE); /* Run the SG FSM */ @@ -676,9 +675,7 @@ void avd_su_oper_state_evh(AVD_CL_CB *cb } } } else { /* if(su->sg_of_su->sg_ncs_spec == true) */ - old_state = su->saAmfSuReadinessState; - m_AVD_GET_SU_NODE_PTR(cb, su, su_node_ptr); /* If oper state of Uninstantiated SU got ENABLED so try to instantiate it after evaluating SG. */ @@ -1302,8 +1299,7 @@ void avd_sg_app_node_su_inst_func(AVD_CL } else { i_su->set_oper_state(SA_AMF_OPERATIONAL_ENABLED); - - m_AVD_GET_SU_NODE_PTR(cb, i_su, su_node_ptr); + su_node_ptr = i_su->get_node_ptr(); if (m_AVD_APP_SU_IS_INSVC(i_su, su_node_ptr)) { i_su->set_readiness_state(SA_AMF_READINESS_IN_SERVICE); @@ -1368,7 +1364,7 @@ uint32_t avd_sg_app_su_inst_func(AVD_CL_ i_su = sg->list_of_su; while (i_su != NULL) { - m_AVD_GET_SU_NODE_PTR(cb, i_su, su_node_ptr); + su_node_ptr = i_su->get_node_ptr(); num_su++; /* Check if the SU is inservice */ if (i_su->saAmfSuReadinessState == SA_AMF_READINESS_IN_SERVICE) { @@ -1384,8 +1380,8 @@ uint32_t avd_sg_app_su_inst_func(AVD_CL_ (i_su->saAmfSUPresenceState == SA_AMF_PRESENCE_UNINSTANTIATED) && (su_node_ptr->saAmfNodeOperState == SA_AMF_OPERATIONAL_ENABLED) && (i_su->saAmfSUOperState == SA_AMF_OPERATIONAL_ENABLED) && - (i_su->term_state == false)) { - m_AVD_GET_SU_NODE_PTR(cb, i_su, su_node_ptr); + (i_su->term_state == false)) { + su_node_ptr = i_su->get_node_ptr(); if (m_AVD_APP_SU_IS_INSVC(i_su, su_node_ptr)) { i_su->set_readiness_state(SA_AMF_READINESS_IN_SERVICE); @@ -1479,7 +1475,7 @@ uint32_t avd_sg_app_sg_admin_func(AVD_CL * state. */ for (i_su = sg->list_of_su; i_su != NULL; i_su = i_su->sg_list_su_next) { - m_AVD_GET_SU_NODE_PTR(cb, i_su, i_su_node_ptr); + i_su_node_ptr = i_su->get_node_ptr(); // TODO(nagu) remove saAmfSUPreInstantiable check and move into m_AVD_APP_SU_IS_INSVC if (m_AVD_APP_SU_IS_INSVC(i_su, i_su_node_ptr) && ((i_su->saAmfSUPreInstantiable) ? diff --git a/osaf/services/saf/amf/amfd/su.cc b/osaf/services/saf/amf/amfd/su.cc --- a/osaf/services/saf/amf/amfd/su.cc +++ b/osaf/services/saf/amf/amfd/su.cc @@ -924,7 +924,7 @@ static void su_admin_op_cb(SaImmOiHandle goto done; } - m_AVD_GET_SU_NODE_PTR(cb, su, node); + node = su->get_node_ptr(); if (node->admin_node_pend_cbk.admin_oper != 0) { report_admin_op_error(immoi_handle, invocation, SA_AIS_ERR_TRY_AGAIN, NULL, "Node'%s' hosting SU'%s', undergoing admin operation'%u'", node->name.value, @@ -1486,7 +1486,7 @@ static void su_ccb_apply_delete_hdlr(str goto done; } - m_AVD_GET_SU_NODE_PTR(avd_cb, su, su_node_ptr); + su_node_ptr = su->get_node_ptr(); if ((su_node_ptr->node_state == AVD_AVND_STATE_PRESENT) || (su_node_ptr->node_state == AVD_AVND_STATE_NO_CONFIG) || @@ -1605,7 +1605,7 @@ void AVD_SU::send_attribute_update(AVSV_ TRACE_LEAVE2("avd is not in active state"); return; } - m_AVD_GET_SU_NODE_PTR(avd_cb, this, su_node_ptr); + param.class_id = AVSV_SA_AMF_SU; param.act = AVSV_OBJ_OPR_MOD; param.name = name; @@ -1625,6 +1625,7 @@ void AVD_SU::send_attribute_update(AVSV_ } /*Update this value on the node hosting this SU*/ + su_node_ptr = get_node_ptr(); if ((su_node_ptr) && ((su_node_ptr->node_state == AVD_AVND_STATE_PRESENT) || (su_node_ptr->node_state == AVD_AVND_STATE_NO_CONFIG) || (su_node_ptr->node_state == AVD_AVND_STATE_NCS_INIT))) { @@ -1708,3 +1709,10 @@ void AVD_SU::set_su_switch(SaToggleState TRACE("%s su_switch %u", name.value, su_switch); m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(avd_cb, this, AVSV_CKPT_SU_SWITCH); } + +struct avd_avnd_tag *AVD_SU::get_node_ptr(void) { + if (su_is_external == true) + return avd_cb->ext_comp_info.local_avnd_node; + else + return su_on_node; +} diff --git a/osaf/services/saf/amf/amfd/util.cc b/osaf/services/saf/amf/amfd/util.cc --- a/osaf/services/saf/amf/amfd/util.cc +++ b/osaf/services/saf/amf/amfd/util.cc @@ -338,11 +338,10 @@ uint32_t avd_snd_presence_msg(AVD_CL_CB { uint32_t rc = NCSCC_RC_FAILURE; AVD_DND_MSG *d2n_msg; - AVD_AVND *node = NULL; + AVD_AVND *node = su->get_node_ptr(); - m_AVD_GET_SU_NODE_PTR(cb, su, node); - - TRACE_ENTER2("%s '%s'", (term_state == true) ? "Terminate" : "Instantiate", su->name.value); + TRACE_ENTER2("%s '%s'", (term_state == true) ? "Terminate" : "Instantiate", + su->name.value); /* prepare the node update message. */ d2n_msg = new AVSV_DND_MSG(); @@ -356,7 +355,6 @@ uint32_t avd_snd_presence_msg(AVD_CL_CB TRACE("Sending %u to %x", AVSV_D2N_PRESENCE_SU_MSG, node->node_info.nodeId); - /* send the message */ if (avd_d2n_msg_snd(cb, node, d2n_msg) != NCSCC_RC_SUCCESS) { LOG_ER("%s: snd to %x failed", __FUNCTION__, node->node_info.nodeId); d2n_msg_free(d2n_msg); @@ -575,12 +573,9 @@ done: uint32_t avd_snd_su_msg(AVD_CL_CB *cb, AVD_SU *su) { - AVD_AVND *node = NULL; - TRACE_ENTER(); - m_AVD_GET_SU_NODE_PTR(cb, su, node); - + AVD_AVND *node = su->get_node_ptr(); AVD_DND_MSG *su_msg = new AVSV_DND_MSG(); su_msg->msg_type = AVSV_D2N_REG_SU_MSG; su_msg->msg_info.d2n_reg_su.nodeid = node->node_info.nodeId; @@ -693,11 +688,9 @@ static SaAmfCompCapabilityModelT get_com * **************************************************************************/ -uint32_t avd_snd_susi_msg(AVD_CL_CB *cb, AVD_SU *su, AVD_SU_SI_REL *susi, AVSV_SUSI_ACT actn, bool single_csi, - AVD_COMP_CSI_REL *compcsi) { - +uint32_t avd_snd_susi_msg(AVD_CL_CB *cb, AVD_SU *su, AVD_SU_SI_REL *susi, + AVSV_SUSI_ACT actn, bool single_csi, AVD_COMP_CSI_REL *compcsi) { AVD_DND_MSG *susi_msg; - AVD_AVND *avnd; AVD_COMP_CSI_REL *l_compcsi; AVD_SU_SI_REL *l_susi, *i_susi; AVSV_SUSI_ASGN *compcsi_info; @@ -705,11 +698,11 @@ uint32_t avd_snd_susi_msg(AVD_CL_CB *cb, TRACE_ENTER(); - /* Get the node information from the SU */ - m_AVD_GET_SU_NODE_PTR(cb, su, avnd); + AVD_AVND *avnd = su->get_node_ptr(); /* Need not proceed further if node is not in proper state */ - if ((avnd->node_state == AVD_AVND_STATE_ABSENT) || (avnd->node_state == AVD_AVND_STATE_GO_DOWN)) + if ((avnd->node_state == AVD_AVND_STATE_ABSENT) || + (avnd->node_state == AVD_AVND_STATE_GO_DOWN)) return NCSCC_RC_SUCCESS; /* Initialize the local variables to avoid warnings */ ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available. Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ Opensaf-devel mailing list Opensaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/opensaf-devel