On 1/26/18 12:18 PM, Pradeep wrote:
In svc_vc_recv(), we handle the case of incomplete receive by rearming the FD and returning ( if xd->sx_fbtbc is not zero). In the case of EAGAIN also shouldn't we be doing the same? epoll is ONESHOT; so new receives won't give new events until epoll_ctl() is called, right?

I tried adding the rearming code in EAGAIN cases and was able run the test 
without receive hang.

I'm on PTO, but I'll look at this tomorrow.  So glad that somebody is
finally rigorously testing this code that was added half a year ago!

This may be some code left over from my tests with triggered (couldn't
get to work) instead of one-shot.  Triggered should be faster, with
fewer system calls, a greater concern in today's MELTDOWN environment.

In fact, I don't understand how we could get EAGAIN, according to the
documentation.  But it's logged.  Good idea about differentiating the
two identical log lines.  I'd prefer text rather than the number 2.

I'll code it up, with acknowledgement.  Thanks again!

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Nfs-ganesha-devel mailing list
Nfs-ganesha-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs-ganesha-devel

Reply via email to