Thanks Nagu, your idea is to stop the timer as quick as possible.
   But   in   avnd_evt_avd_su_pres_evh,   go   a   bit  further  down  to
   avnd_su_curr_info_del, the patch is snipped by:
   if (!m_AVND_SU_IS_FAILED(su)) {
   ...
   }
   where currently has the reset of other esc-param, here it would be easier to
   read the code I think.
   Any other ideas? Thanks
   BR/Minh
   On 5/5/2014 11:52 PM, Nagendra Kumar wrote:

I would prefer: We can do it in avnd_evt_avd_su_pres_evh():
case true:
                 Keep the logic here.

                TRACE("SU term state is set to true");
                /* no si must be assigned to the su */
                osafassert(!m_NCS_DBLIST_FIND_FIRST(&su->si_list));

                /* Mark SU as terminated by admn operation */
                TRACE("Marking SU as terminated by admin operation");
                m_AVND_SU_ADMN_TERM_SET(su);
                m_AVND_SEND_CKPT_UPDT_ASYNC_UPDT(cb, su, AVND_CKPT_SU_FLAG_CHAN
GE);
.......................

Thanks
-Nagu

-----Original Message-----
From: Minh Hon Chau [[1]mailto:[email protected]]
Sent: 05 May 2014 10:39
To: Nagendra Kumar; [2][email protected];
[3][email protected]; Praveen Malviya
Cc: [4][email protected]
Subject: [PATCH 1 of 1] v2 amfnd: saAmfSGCompRestartProb timer is not
stopped after the relevant model had been deleted [#831]

 osaf/services/saf/amf/amfnd/su.cc |  17 ++++++++++++++++-
 1 files changed, 16 insertions(+), 1 deletions(-)


Problem: If the timer is started, delete the model, load model again, and kill
component in order to escalate to the su restart. Then if the previous timer
event comes during the escalation, it will reset component restart counter. So
there will be no su restart at the end. The similiar problem also happens in ca
se
of saAmfSGSuRestartProb.

Change: Stop both timer saAmfSGCompRestartProb and saAmfSGSuRestartProb
(if it started) in the sequence of lock-in su

diff --git a/osaf/services/saf/amf/amfnd/su.cc
b/osaf/services/saf/amf/amfnd/su.cc
--- a/osaf/services/saf/amf/amfnd/su.cc
+++ b/osaf/services/saf/amf/amfnd/su.cc
@@ -555,13 +555,28 @@ uint32_t avnd_su_curr_info_del(AVND_CB *

        /* reset err-esc param & oper state (if su is healthy) */
        if (!m_AVND_SU_IS_FAILED(su)) {
+               if (su->su_err_esc_tmr.is_active == true) {
+                       /* Stop saAmfSGSuRestartProb timer if started */
+                       if (su->su_err_esc_level == AVND_ERR_ESC_LEVEL_1)
{
+                               m_AVND_TMR_SU_ERR_ESC_STOP(cb, su);
+
        m_AVND_SEND_CKPT_UPDT_ASYNC_UPDT(cb, su,
AVND_CKPT_SU_ERR_ESC_TMR);
+                       }
+                       /* Stop saAmfSGCompRestartProb timer if started */
+                       else if (su->su_err_esc_level ==
AVND_ERR_ESC_LEVEL_0) {
+                               m_AVND_TMR_COMP_ERR_ESC_STOP(cb,
su);
+
        m_AVND_SEND_CKPT_UPDT_ASYNC_UPDT(cb, su,
AVND_CKPT_SU_ERR_ESC_TMR);
+                       }
+                       else
+                               TRACE("su_err_esc_tmr is started in wrong
su_err_esc_level(%d)", su->su_err_esc_level);
+               }
+
+
                su->su_err_esc_level = AVND_ERR_ESC_LEVEL_0;
                su->comp_restart_cnt = 0;
                su_reset_restart_count_in_comps(su);
                su->su_restart_cnt = 0;
                avnd_di_uns32_upd_send(AVSV_SA_AMF_SU,
saAmfSURestartCount_ID, &su->name, su->su_restart_cnt);
                m_AVND_SEND_CKPT_UPDT_ASYNC_UPDT(cb, su,
AVND_CKPT_SU_CONFIG);
-               /* stop su_err_esc_tmr TBD Later */

                /* disable the oper state (if pi su) */
                if (m_AVND_SU_IS_PREINSTANTIABLE(su)) {

References

   1. mailto:[email protected]
   2. mailto:[email protected]
   3. mailto:[email protected]
   4. mailto:[email protected]
------------------------------------------------------------------------------
Is your legacy SCM system holding you back? Join Perforce May 7 to find out:
• 3 signs your SCM is hindering your productivity
• Requirements for releasing software faster
• Expert tips and advice for migrating your SCM now
http://p.sf.net/sfu/perforce
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to