Hi AndersBj, I am trying to bring up the cluster again with this patch, and try to run IMM tests. will let you know the result.
/Neel. On Friday 12 September 2014 11:57 AM, Anders Björnerstedt wrote: > The patch does not work at all for me. > But I tested in UML. > > /AndersBj > > -----Original Message----- > From: Neelakanta Reddy [mailto:[email protected]] > Sent: den 11 september 2014 19:37 > To: Hans Feldt; Anders Björnerstedt > Cc: [email protected] > Subject: Re: [devel] [PATCH 1 of 1] imma: fix potential race with is_immnd_up > [#1050] > > Hi Hans, > > I tried to bring up the two controllers. > The cluster came up. > executed immomtests and immoitests. > tests passed successfully. > > /Neel. > > On Thursday 11 September 2014 07:12 PM, Hans Feldt wrote: >> osaf/libs/agents/saf/imma/imma_mds.c | 7 ++++--- >> 1 files changed, 4 insertions(+), 3 deletions(-) >> >> >> The variable is_immnd_up is read in API calls without holding a lock. >> In the MDS IMMND UP callback it was set to true _before_ registration with >> the "auth >> server". This could allow clients sitting in a TRYAGAIN loop to >> proceed before auth server registration has finished. >> >> Auth server registration is now done before setting is_immnd_up to true. >> >> diff --git a/osaf/libs/agents/saf/imma/imma_mds.c >> b/osaf/libs/agents/saf/imma/imma_mds.c >> --- a/osaf/libs/agents/saf/imma/imma_mds.c >> +++ b/osaf/libs/agents/saf/imma/imma_mds.c >> @@ -419,9 +419,6 @@ static uint32_t imma_mds_svc_evt(IMMA_CB >> >> case NCSMDS_UP: >> TRACE_3("IMMND UP"); >> - >> m_NCS_LOCK(&cb->immnd_sync_lock,NCS_LOCK_WRITE);/*special sync lock*/ >> - cb->is_immnd_up = true; >> - cb->immnd_mds_dest = svc_evt->i_dest; >> >> /* (Re-)connect and register our MDS dest with auth >> server in immnd */ >> if (mds_auth_server_connect(sockname, >> @@ -430,6 +427,10 @@ static uint32_t imma_mds_svc_evt(IMMA_CB >> LOG_WA("%s: mds_auth_server_connect failed", >> __FUNCTION__); >> } >> >> + >> m_NCS_LOCK(&cb->immnd_sync_lock,NCS_LOCK_WRITE);/*special sync lock*/ >> + cb->immnd_mds_dest = svc_evt->i_dest; >> + cb->is_immnd_up = true; >> + >> if (cb->immnd_sync_awaited == true) >> m_NCS_SEL_OBJ_IND(&cb->immnd_sync_sel); >> >> m_NCS_UNLOCK(&cb->immnd_sync_lock,NCS_LOCK_WRITE);/*special sync >> lock*/ >> >> ---------------------------------------------------------------------- >> -------- >> Want excitement? >> Manually upgrade your production database. >> When you want reliability, choose Perforce Perforce version control. >> Predictably reliable. >> http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg. >> clktrk _______________________________________________ >> Opensaf-devel mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/opensaf-devel ------------------------------------------------------------------------------ Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk _______________________________________________ Opensaf-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-devel
