Hi,

I will ask Hans N to push this patch tomorrow if there are no more comments.

Thanks,
Quyen

-----Original Message-----
From: Hans Nordebäck [mailto:hans.nordeb...@ericsson.com] 
Sent: Friday, March 11, 2016 3:23 PM
To: Quyen Dao; gary....@dektech.com.au; praveen.malv...@oracle.com;
nagendr...@oracle.com
Cc: opensaf-devel@lists.sourceforge.net
Subject: Re: [PATCH 1 of 1] amfd: do not checkpoint the nway sg fsm in case
of no change [#1697]

ack, code review only/Thanks HansN

On 03/09/2016 11:35 AM, Quyen Dao wrote:
>   osaf/services/saf/amf/amfd/sg_nway_fsm.cc |  1 -
>   1 files changed, 0 insertions(+), 1 deletions(-)
>
>
> After the nway application AMF entities are created, active amfd calls 
> avd_sg_nway_si_assign function to assign any unassigned SI but all SUs 
> are locked so no SI are assigned and the FSM is still stable. In this 
> function, it always checkpoints the nway sg fsm with state STABLE (at 
> the beginning of the function) to standby even the fsm state is not
changed.
> When the standby amfd receives the checkpoint message, it founds that 
> the nway sg doesn't exist in its database and does an assert to 
> generate the coredump. The nway sg doesn't exist in standby is because 
> checkpoint message arrives before the ccb_apply_ccb (which informs the
nway sg creation) from immnd.
>
> Object's checkpoint message arrives to standby when the corresponding 
> object doesn't exist is a rare and race condition case, it needs a general
solution.
>
> But to solve for this particular crash, it is changed to not 
> checkpoint the nway sg fsm state as it's not changed (this is the correct
behaviour and aligned with other sg).
> Since nway sg fsm is not checkpointed because of no change, crash will not
happen.
>
> 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
> @@ -1234,7 +1234,6 @@ uint32_t avd_sg_nway_si_assign(AVD_CL_CB
>       TRACE_ENTER2("%s", sg->name.value);
>   
>       m_AVD_SET_SG_FSM(cb, sg, AVD_SG_FSM_STABLE);
> -     m_AVSV_SEND_CKPT_UPDT_ASYNC_UPDT(cb, sg, AVSV_CKPT_SG_FSM_STATE);
>   
>       avd_sidep_update_si_dep_state_for_all_sis(sg);
>       /* assign active assignments to unassigned sis */


------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785471&iu=/4140
_______________________________________________
Opensaf-devel mailing list
Opensaf-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to