Hi Nagu,
I think I can just replace "cb" by "avd_cb", and testing the patch. Then
you can correct it later.
Thanks,
Minh
On 17/08/16 12:50, minh chau wrote:
> Hi Nagu,
>
> I got this.
>
> CXX osafamfd-sg_2n_fsm.o
> CXX osafamfd-sg_nored_fsm.o
> sg_2n_fsm.cc: In member function ‘virtual SaAisErrorT
> SG_2N::si_swap(AVD_SI*, SaInvocationT)’:
> sg_2n_fsm.cc:775:6: error: ‘cb’ was not declared in this scope
> ((cb->node_id_avd_other != 0) && (cb->other_avd_adest != 0))) {
> ^
> Makefile:1176: recipe for target 'osafamfd-sg_2n_fsm.o' failed
> make[7]: *** [osafamfd-sg_2n_fsm.o] Error 1
>
> Thanks,
> Minh
>
> On 16/08/16 19:32, Nagendra Kumar wrote:
>> Please review it by this weekend.
>>
>> Thanks
>> -Nagu
>>
>>> -----Original Message-----
>>> From: Nagendra Kumar
>>> Sent: 02 August 2016 17:34
>>> To: [email protected]; Praveen Malviya;
>>> [email protected]; [email protected]
>>> Cc: [email protected]
>>> Subject: [devel] [PATCH 1 of 1] amfd: mark stby_sync_state out of
>>> sync if
>>> peer amfd is absent [#1850]
>>>
>>> osaf/services/saf/amf/amfd/main.cc | 2 +-
>>> osaf/services/saf/amf/amfd/sg_2n_fsm.cc | 3 ++-
>>> osaf/services/saf/amf/amfd/sgproc.cc | 8 +-------
>>> 3 files changed, 4 insertions(+), 9 deletions(-)
>>>
>>>
>>> If standby amfd is not available then stby_sync_state should be in
>>> out of sync
>>> state.
>>> Else, Amfd should be in out of sync state.
>>> This is to avoid issues like 1841
>>>
>>> diff --git a/osaf/services/saf/amf/amfd/main.cc
>>> b/osaf/services/saf/amf/amfd/main.cc
>>> --- a/osaf/services/saf/amf/amfd/main.cc
>>> +++ b/osaf/services/saf/amf/amfd/main.cc
>>> @@ -542,7 +542,7 @@ static uint32_t initialize(void)
>>> cb->fully_initialized = false;
>>> cb->swap_switch = false;
>>> cb->active_services_exist = true;
>>> - cb->stby_sync_state = AVD_STBY_IN_SYNC;
>>> + cb->stby_sync_state = AVD_STBY_OUT_OF_SYNC;
>>> cb->sync_required = true;
>>>
>>> cb->heartbeat_tmr.is_active = false;
>>> 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
>>> @@ -771,7 +771,8 @@ SaAisErrorT SG_2N::si_swap(AVD_SI *si, S
>>> goto done;
>>> }
>>>
>>> - if (si->sg_of_si->sg_ncs_spec) {
>>> + if ((si->sg_of_si->sg_ncs_spec) &&
>>> + ((cb->node_id_avd_other != 0) && (cb-
>>>> other_avd_adest != 0))) {
>>> if (avd_cb->stby_sync_state == AVD_STBY_OUT_OF_SYNC) {
>>> LOG_ER("%s SWAP failed - Cold sync in progress", si-
>>>> name.value);
>>> rc = SA_AIS_ERR_TRY_AGAIN;
>>> 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
>>> @@ -1997,14 +1997,8 @@ void avd_node_down_mw_susi_failover(AVD_
>>> if ((i_su->sg_of_su->sg_redundancy_model ==
>>> SA_AMF_2N_REDUNDANCY_MODEL) &&
>>> (i_su->sg_of_su->sg_fsm_state ==
>>> AVD_SG_FSM_STABLE))
>>> (void) avd_clm_track_start();
>>> - /* If Std ctlr went down in middle of Cold sync, then we need
>>> - to reset the sync state to IN_SYNC. */
>>> - if ((i_su->sg_of_su->sg_redundancy_model ==
>>> SA_AMF_2N_REDUNDANCY_MODEL) &&
>>> - (cb->stby_sync_state ==
>>> AVD_STBY_OUT_OF_SYNC)) {
>>> - TRACE("Marking sync_state as in_sync");
>>> - cb->stby_sync_state = AVD_STBY_IN_SYNC;
>>> - }
>>> /* Free all the SU SI assignments*/
>>> +
>>> i_su->delete_all_susis();
>>>
>>> } /* for (const auto& i_su : avnd->list_of_su) */
>>>
>>> ------------------------------------------------------------------------------
>>>
>>>
>>> _______________________________________________
>>> Opensaf-devel mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/opensaf-devel
>
------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel