Bug 1694561 - gfapi: do not block epoll thread for upcall notifications
Summary: gfapi: do not block epoll thread for upcall notifications
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: libgfapi
Version: 6
Hardware: All
OS: All
unspecified
high
Target Milestone: ---
Assignee: bugs@gluster.org
QA Contact: bugs@gluster.org
URL:
Whiteboard:
Depends On: 1694565 1693575 1694562 1694563
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-04-01 05:59 UTC by Soumya Koduri
Modified: 2019-04-22 13:33 UTC (History)
2 users (show)

Fixed In Version: glusterfs-6.1
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1693575
Environment:
Last Closed: 2019-04-03 04:31:42 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Gluster.org Gerrit 22459 None Merged gfapi: Unblock epoll thread for upcall processing 2019-04-03 04:31:41 UTC

Description Soumya Koduri 2019-04-01 05:59:09 UTC
+++ This bug was initially created as a clone of Bug #1693575 +++

Description of problem:

With https://review.gluster.org/#/c/glusterfs/+/21783/, we have made changes to offload processing upcall notifications to synctask so as not to block epoll threads. However seems like the purpose wasnt fully resolved. 

In "glfs_cbk_upcall_data" -> "synctask_new1" after creating synctask if there is no callback defined, the thread waits on synctask_join till the syncfn is finished. So that way even with those changes, epoll threads are blocked till the upcalls are processed.

Hence the right fix now is to define a callback function for that synctask "glfs_cbk_upcall_syncop" so as to unblock epoll/notify threads completely and the upcall processing can happen in parallel by synctask threads.

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

--- Additional comment from Soumya Koduri on 2019-03-28 09:28:58 UTC ---

Users have complained about nfs-ganesha process getting stuck here - https://github.com/nfs-ganesha/nfs-ganesha/issues/335

--- Additional comment from Worker Ant on 2019-03-28 09:34:11 UTC ---

REVIEW: https://review.gluster.org/22436 (gfapi: Unblock epoll thread for upcall processing) posted (#1) for review on master by soumya k

--- Additional comment from Worker Ant on 2019-03-29 07:25:10 UTC ---

REVIEW: https://review.gluster.org/22436 (gfapi: Unblock epoll thread for upcall processing) merged (#4) on master by Amar Tumballi

Comment 1 Worker Ant 2019-04-01 06:02:10 UTC
REVIEW: https://review.gluster.org/22459 (gfapi: Unblock epoll thread for upcall processing) posted (#1) for review on release-6 by soumya k

Comment 2 Worker Ant 2019-04-03 04:31:42 UTC
REVIEW: https://review.gluster.org/22459 (gfapi: Unblock epoll thread for upcall processing) merged (#2) on release-6 by Amar Tumballi

Comment 3 Shyamsundar 2019-04-22 13:33:13 UTC
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-6.1, please open a new bug report.

glusterfs-6.1 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] https://lists.gluster.org/pipermail/announce/2019-April/000124.html
[2] https://www.gluster.org/pipermail/gluster-users/


Note You need to log in before you can comment on or make changes to this bug.