Hi James, I have sent the patch on the review. It would be good if you can test the patch. I couldn't reproduce the problem.
The patch can be found on: https://sourceforge.net/p/opensaf/mailman/message/35985522/ Thanks, Zoran -----Original Message----- From: Zoran Milinkovic [mailto:[email protected]] Sent: den 7 augusti 2017 15:54 To: Anders Widell <[email protected]>; Carroll, James R <[email protected]>; [email protected] Subject: Re: [users] opensaf 5.2, not starting on 32-bit linux platform Hi, The solution below will not work. It will produce the same problem. Nfds is set to 5 just after creating a thread, and it can be faster that creating a new thread. Also, FD_CLM event is done just after FD_CLM_INIT event, and FD_CLM event is not processed by poll. nfds should be initially set to 5, and shouldn't be changed. immnd_cb->clmSelectionObject is initially set to -1. poll will ignore CLM fd until immnd_cb->clmSelectionObject is set to positive value. I will create a ticket for this issue. Thanks, Zoran -----Original Message----- From: Anders Widell Sent: den 7 augusti 2017 13:33 To: Zoran Milinkovic <[email protected]>; Carroll, James R <[email protected]>; [email protected] Subject: Re: [users] opensaf 5.2, not starting on 32-bit linux platform Good to hear that you found the cause! Our own testing has mostly focused on 64-bit systems, so that could be the reason why we haven't noticed this particular bug. If there isn't a ticket for the problem yet, please write one. OpenSAF is moving towards a continuous delivery model which means that we can make new OpenSAF deliveries with less effort than before. The next planned delivery is early October, but if you feel that this bug-fix is urgent then we can deliver a new version of OpenSAF as soon as the bug-fix is in and all tests have passed. Regarding Zoran's comment: yes you are right that revents is an output variable that shouldn't have to be initialized before the call to poll(). I think the actual problem here is that the nfds argument to poll() is variable and if we don't have a CLM fd then fds[FD_CLM].revents is uninitialized (not touched by poll()). I usually prefer to keep nfds fixed and set fds[FD_CLM].fd to -1 in case we don't yet have a CLM fd, in which case fds[FD_CLM].revents will always be written by poll(). With the current approach of having a variable nfds the following condition needs to change: if (fds[FD_CLM].revents & POLLIN) Instead if should be: if (nfds == 5 && (fds[FD_CLM].revents & POLLIN)) regards, Anders Widell On 08/07/2017 12:41 PM, Zoran Milinkovic wrote: > Hi James, > > Can you be more specific with "OpenSAF hasn't been started successfully" ? > > When clmDispatch returns ERR_BAD_HANDLE, IMMND logs messages with warning and > notice log level. > In general in all services, when *Dispatch functions fail with > ERR_BAD_HANDLE error code, it's because the handle might be corrupted, > finalized, or the operation cannot be done (for example, a callback > with a long DN parameter to a client where long DN is not supported, > etc...) > > Setting revents parameter to 0 before the poll call does not make sense to > me. Revents is the output parameter, and I don't see how your proposal can be > a solution to your problem. > > Thanks, > Zoran > > -----Original Message----- > From: Carroll, James R [mailto:[email protected]] > Sent: den 5 augusti 2017 17:45 > To: [email protected] > Subject: Re: [users] opensaf 5.2, not starting on 32-bit linux > platform > > Hi, > > I never had any feedback on this, which is a little disheartening. In any > case, we continued to troubleshoot the issue, and it appears there is an > uninitialized variable in the source code that is causing the error. > The file is immnd_main.c, and the line number is 355. > We added the line: fds[FD_CLM].revents = 0; > > This resolved our issue, and we were able to bring up opensaf 5.2. For the > record, we were never able to bring up opensaf 5.2, without this fix, on our > 32-bit systems. We did also test this out on our 64-bit systems, and found > that we were about 50/50 when staring OpenSAF - sometimes is started, and > sometimes it failed, without this fix. Once this fix was applied, both our > 32-bit and 64-bit systems started consistently. > > Is there an open ticket for this issue? Also, with the just announced > release of OpenSaf 5.2.1, will there be an update to capture this? > How are high-priority fixes applied to OpenSAF? > > Thanks. > > Jim > > > > > > From: Carroll, James R (US) > Sent: Friday, July 21, 2017 5:07 PM > To: [email protected] > Subject: opensaf 5.2, not starting on 32-bit linux platform > > Hi, > > We have recently built and upgraded to opensaf 5.2. We were previously > running using opensaf 5.0. > We compiled opensaf as 32-bit applications. We are running on a 32-bit > Redhat OS (v6.5). > > We have been unable to start opensaf successfully, it appears to be a timing > issue between IMM and CLM. > The code that is failing appears to be a new feature added to 5.2, reference > the ticket number below. > The file is immnd_main.c, line number 435, failing on saClmDispatch() > call. We are getting SA_AIS_ERR_BAD_HANDLE_ERROR > > Ticket Information: > 1640 - imm agent changes for integrating IMM with CLMS > > Has anyone built opensaf 5.2 as a 32-bit application, and been able to run it > successfully? > > Thanks. > > Jim > ---------------------------------------------------------------------- > -------- Check out the vibrant tech community on one of the world's > most engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Opensaf-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/opensaf-users > > ---------------------------------------------------------------------- > -------- Check out the vibrant tech community on one of the world's > most engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Opensaf-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/opensaf-users > ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Opensaf-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-users ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Opensaf-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/opensaf-users
