Bug 1326627

Summary: nfs-ganesha crashes with segfault error while doing refresh config on volume.
Product: [Community] GlusterFS Reporter: Soumya Koduri <skoduri>
Component: ganesha-nfsAssignee: Soumya Koduri <skoduri>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs, jthottan, kkeithle, ndevos, nlevinki, skoduri, sraj, storage-qa-internal
Target Milestone: ---Keywords: Triaged, ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: glusterfs-3.8rc2 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1325975
: 1330892 (view as bug list) Environment:
Last Closed: 2016-06-16 14:03:35 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: 1325975, 1330892    
Bug Blocks:    

Comment 1 Vijay Bellur 2016-04-13 09:11:20 UTC
REVIEW: http://review.gluster.org/13987 (inode: Always fetch first entry from the inode lists during inode_table_destroy) posted (#1) for review on master by soumya k (skoduri)

Comment 2 Vijay Bellur 2016-04-26 11:57:45 UTC
COMMIT: http://review.gluster.org/13987 committed in master by Jeff Darcy (jdarcy) 
------
commit edeb67a5344389f88a6912460fb0cf2e76a32df3
Author: Soumya Koduri <skoduri>
Date:   Wed Apr 13 12:50:49 2016 +0530

    inode: Always fetch first entry from the inode lists during inode_table_destroy
    
    In inode_table_destroy, we iterate through lru and active lists
    to move the entries to purge list so that they can be destroyed
    during inode_table_prune.
    
    But if used "list_for_each_entry" or "list_for_each_entry_safe"
    to iterate, we could end up accessing the entries which may have
    got moved to different(purge) lists in the process and can result
    in either infinite loop or crash. The safe approach seems to fetch
    the first entry of the list in each iteration till it gets empty.
    
    Change-Id: I24a18881833bd9419c2d8e5e8807bc71ec396479
    BUG: 1326627
    Signed-off-by: Soumya Koduri <skoduri>
    Reviewed-on: http://review.gluster.org/13987
    Smoke: Gluster Build System <jenkins.com>
    NetBSD-regression: NetBSD Build System <jenkins.org>
    CentOS-regression: Gluster Build System <jenkins.com>
    Reviewed-by: Kaleb KEITHLEY <kkeithle>
    Reviewed-by: Niels de Vos <ndevos>
    Reviewed-by: Jeff Darcy <jdarcy>

Comment 3 Niels de Vos 2016-06-16 14:03:35 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-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