Bug 1583734

Summary: rpc_transport_unref() called for an unregistered socket fd
Product: [Community] GlusterFS Reporter: Shyamsundar <srangana>
Component: rpcAssignee: bugs <bugs>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 4.1CC: bugs, mchangir
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-v4.1.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: 1582704 Environment:
Last Closed: 2018-06-20 18:07:27 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1582704    
Bug Blocks: 1582286    

Description Shyamsundar 2018-05-29 14:54:25 UTC
+++ This bug was initially created as a clone of Bug #1582704 +++

Description of problem:
socket_server_event_handler() may call rpc_transport_unref() for a socket which may fail registration with the event sub-system. This causes an assert to fail in event_unregister_epoll_common()

--- Additional comment from Worker Ant on 2018-05-29 00:14:26 EDT ---

COMMIT: https://review.gluster.org/20091 committed in master by "Raghavendra G" <rgowdapp> with a commit message- rpc: conditionally cleanup event slot

Problem:
socket_server_event_handler() may call rpc_transport_unref() for a
socket which may fail registration with the event sub-system.
This causes an assert to fail in event_unregister_epoll_common()

Solution:
Conditionally cleanup event slot only if slot index >= 0

Change-Id: I6ca7c133712e894adc335c7763879691b7e4b213
fixes: bz#1582704
BUG: 1582704
Signed-off-by: Milind Changire <mchangir>

Comment 1 Worker Ant 2018-05-29 14:57:13 UTC
REVIEW: https://review.gluster.org/20098 (rpc: conditionally cleanup event slot) posted (#1) for review on release-4.1 by Shyamsundar Ranganathan

Comment 2 Worker Ant 2018-05-30 13:55:33 UTC
COMMIT: https://review.gluster.org/20098 committed in release-4.1 by "Shyamsundar Ranganathan" <srangana> with a commit message- rpc: conditionally cleanup event slot

Problem:
socket_server_event_handler() may call rpc_transport_unref() for a
socket which may fail registration with the event sub-system.
This causes an assert to fail in event_unregister_epoll_common()

Solution:
Conditionally cleanup event slot only if slot index >= 0

Change-Id: I6ca7c133712e894adc335c7763879691b7e4b213
fixes: bz#1583734
Signed-off-by: Milind Changire <mchangir>
(cherry picked from commit 3780f6c2515c34f8705eb0fe25291bb97e73f354)

Comment 3 Shyamsundar 2018-06-20 18:07:27 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-v4.1.0, please open a new bug report.

glusterfs-v4.1.0 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] http://lists.gluster.org/pipermail/announce/2018-June/000102.html
[2] https://www.gluster.org/pipermail/gluster-users/