Please review it by this weekend.

Thanks
-Nagu

> -----Original Message-----
> From: Nagendra Kumar
> Sent: 02 August 2016 17:34
> To: hans.nordeb...@ericsson.com; Praveen Malviya;
> minh.c...@dektech.com.au; gary....@dektech.com.au
> Cc: opensaf-devel@lists.sourceforge.net
> 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
> Opensaf-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/opensaf-devel

------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to