Bug 1250797 - rpc: Address issues with transport object reference and leak
rpc: Address issues with transport object reference and leak
Product: GlusterFS
Classification: Community
Component: rpc (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Soumya Koduri
: Reopened
Depends On:
Blocks: 1254607
  Show dependency treegraph
Reported: 2015-08-05 23:23 EDT by Soumya Koduri
Modified: 2016-06-16 09:28 EDT (History)
2 users (show)

See Also:
Fixed In Version: glusterfs-3.8rc2
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1254607 (view as bug list)
Last Closed: 2016-06-16 09:28:57 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Soumya Koduri 2015-08-05 23:23:27 EDT
Description of problem:

We have seen a couple of issues with transport object reference and leak in rpc
layer, particularly with 'rpc_clnt_disable', 

a) Once the transport object is disassociated from rpc->conn, it should not be 
referenced further. Fix is needed in 'rpc_clnt_remove_ping_timer_locked'.

b) Unref transport object to avoid memory leak.
Comment 1 Anand Avati 2015-08-08 06:50:48 EDT
COMMIT: http://review.gluster.org/11845 committed in master by Kaleb KEITHLEY (kkeithle@redhat.com) 
commit 6e8c137fb7deca75817d617d40ebd58bbcae186a
Author: Soumya Koduri <skoduri@redhat.com>
Date:   Thu Aug 6 06:22:38 2015 +0530

    rpc-clnt: Check for transport object during rpc connection cleanup
    While doing glfs_fini(), all the xlators are first notified of
    PARENT_DOWN. protocol-client xlator on receving that notification
    does rpc_clnt_disable which disassociates rpc->conn with its
    transport object and does socket shutdown. So any further references
    to conn->trans should not happen during rpc connection cleanup which
    is done mainly as part of epoll event handling of EPOLLERR/EPOLLHUP.
    BUG: 1250797
    Change-Id: I7d0346451d40372ad59a6a2326176fbb1e694712
    Signed-off-by: Soumya Koduri <skoduri@redhat.com>
    Reviewed-on: http://review.gluster.org/11845
    Reviewed-by: Raghavendra G <rgowdapp@redhat.com>
    Tested-by: Gluster Build System <jenkins@build.gluster.com>
    Reviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com>
Comment 2 Nagaprasad Sathyanarayana 2015-10-25 11:18:55 EDT
Fix for this BZ is already present in a GlusterFS release. You can find clone of this BZ, fixed in a GlusterFS release and closed. Hence closing this mainline BZ as well.
Comment 3 Niels de Vos 2016-06-16 09:28:57 EDT
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-3.8.0, please open a new bug report.

glusterfs-3.8.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://blog.gluster.org/2016/06/glusterfs-3-8-released/
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

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