Bug 1158226

Summary: Inode infinite loop leads to glusterfsd segfault
Product: [Community] GlusterFS Reporter: Anand Avati <aavati>
Component: coreAssignee: bugs <bugs>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: urgent Docs Contact:
Priority: urgent    
Version: mainlineCC: bhubbard, bugs, chrisw, csuleski, cww, gluster-bugs, kazen, kparthas, sdharane, srangana, vbellur
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: glusterfs-3.7.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1156178
: 1186657 (view as bug list) Environment:
Last Closed: 2015-05-14 17:28:09 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: 1156178, 1159225    
Bug Blocks: 1155395, 1186657, 1193757    

Comment 1 Anand Avati 2014-10-28 21:14:31 UTC
REVIEW: http://review.gluster.org/8995 (inode: include dentry cycle checks for all existing inodes) posted (#1) for review on master by Anand Avati (avati)

Comment 2 Anand Avati 2014-10-29 08:33:31 UTC
COMMIT: http://review.gluster.org/8995 committed in master by Vijay Bellur (vbellur) 
------
commit ef03f98bf9b5f7f317383b84d251299b8939e5cc
Author: Anand Avati <avati>
Date:   Tue Oct 28 14:05:06 2014 -0700

    inode: include dentry cycle checks for all existing inodes
    
    inode_link() has the responsibility of maintaining the DAGness of
    the dentry tree, and prevent cyclic loops from forming. To do this
    the technique used is to perform cyclic check only while linking
    inodes which already were linked in the inode table (i.e linking
    a new_inode() can never form a loop).
    
    While this was how it was supposed to be all along, the @old_inode
    variable was missed out to get updated if the given inode to inode_link
    itself was already linked (i.e, the code was only handling a complex
    case when the given new inode had a gfid which already existed)
    
    Without this patch, it is possible to call inode_link in a specific
    way which results in dentry loops.
    
    Change-Id: I4c87fa2d63f11e31c73d8b847e56962f6c983880
    BUG: 1158226
    Signed-off-by: Anand Avati <avati>
    Reviewed-on: http://review.gluster.org/8995
    Reviewed-by: Harshavardhana <harsha>
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Raghavendra G <rgowdapp>
    Reviewed-by: Pranith Kumar Karampuri <pkarampu>
    Tested-by: Pranith Kumar Karampuri <pkarampu>

Comment 3 Niels de Vos 2015-05-14 17:28:09 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.7.0, please open a new bug report.

glusterfs-3.7.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://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

Comment 4 Niels de Vos 2015-05-14 17:35:40 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.7.0, please open a new bug report.

glusterfs-3.7.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://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

Comment 5 Niels de Vos 2015-05-14 17:38:02 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.7.0, please open a new bug report.

glusterfs-3.7.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://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

Comment 6 Niels de Vos 2015-05-14 17:44:20 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.7.0, please open a new bug report.

glusterfs-3.7.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://thread.gmane.org/gmane.comp.file-systems.gluster.devel/10939
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user