On Wed, 2009-09-02 at 10:40 +0100, Christine Caulfield wrote: > If you try to run a client that accesses a non-loaded plugin (eg > votequorum on a default corosync installation) that process will hang. > > This patch makes corosync return the ERR_NOT_EXIST error if the plugin > is not found. > > I'm slightly unsure about whether it's sensible to call req_setup_send > with the conn_info mutex held, but it seems to work ;-) > > if it's not right to do that we might have to get the mutex, read the > service ID, release the mutex and then send the reply. > > Steve ?
Chrissie, I looked at your patch because indeed calling ipc_disconnect with the mutex held would result in deadlock. But your patch doesn't change how that call accesses the conn info data structure. It doesn't hold the mutex while running. Calling req_setup_send without the mutex held is safe in any regard, because the connection is not yet initialized, and the ipc thread not yet executing. The patch looks good to me, but I'm uncertain how the mutex is held currently when executing your patched version. Could you point me at the line number? Regards -steve > > Chrissie > _______________________________________________ > Openais mailing list > [email protected] > https://lists.linux-foundation.org/mailman/listinfo/openais _______________________________________________ Openais mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/openais
