osaf/services/saf/avsv/avnd/avnd_clc.c |  5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)


During opensaf stop, if last component returns error for the the clean up then 
AMFND fails to exit. This
leads stopping of opensaf to hang untill opensafd times out. This patch ensures 
that if last component
returns failure for cleanup, then AMFND should exit.

diff --git a/osaf/services/saf/avsv/avnd/avnd_clc.c 
b/osaf/services/saf/avsv/avnd/avnd_clc.c
--- a/osaf/services/saf/avsv/avnd/avnd_clc.c
+++ b/osaf/services/saf/avsv/avnd/avnd_clc.c
@@ -2097,6 +2097,11 @@ uint32_t avnd_comp_clc_terming_cleanfail
 
        /* just transition to 'term-failed' state */
        avnd_comp_pres_state_set(comp, SA_AMF_PRESENCE_TERMINATION_FAILED);
+       if ((AVND_TERM_STATE_OPENSAF_SHUTDOWN_STARTED == cb->term_state) && 
all_comps_terminated()) {
+                        LOG_NO("Terminated all AMF components");
+                        LOG_NO("Shutdown completed, exiting");
+                        exit(0);
+        }
 
        TRACE_LEAVE();
        return rc;

------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead. 
Download for free and get started troubleshooting in minutes. 
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to