[Gluster-devel] How does GD_SYNCOP work?

Emmanuel Dreyfus manu at netbsd.org
Wed Sep 10 12:45:45 UTC 2014


On Wed, Sep 10, 2014 at 05:32:41AM -0400, Krishnan Parthasarathi wrote:
> Let me try to explain how GD_SYNCOP works. Internally, GD_SYNCOP yields the thread that was
> executing the (sync)task once the RPC request is submitted (asynchronously) to the remote endpoint.
> It's equivalent to pausing the task until the response is received. The call back function, which generally
> executes in the epoll thread, wakes the corresponding task into execution (ie. resumes task execution).

I suspect this is the problem: the task is not scheduled. NetBSD uses poll and not epoll, 
which may explain the problem. Where does the task scheduling happens in epoll code?
-- 
Emmanuel Dreyfus
manu at netbsd.org


More information about the Gluster-devel mailing list