[Gluster-devel] pthread_mutex misusage in glusterd_op_sm

Emmanuel Dreyfus manu at netbsd.org
Thu Nov 27 05:39:47 UTC 2014


Krishnan Parthasarathi <kparthas at redhat.com> wrote:

> Could you explain which sequence of function calls lead to
> mutex lock and mutex unlock being called by different threads?
> Meanwhile, I am trying to find one such sequence to understand
> the problem better.

In the middle of the function is the handler call:
                        handler = state[event_type].handler;
                        GF_ASSERT (handler);
        
                        ret = handler (event, event->ctx);

Between the call and the return, the current task may have moved to a
different thread. I guess handler must send a network request, and the
ability to return in a different thread is normal synctask at work.

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu at netbsd.org


More information about the Gluster-devel mailing list