[Bugs] [Bug 1158226] Inode infinite loop leads to glusterfsd segfault
bugzilla at redhat.com
bugzilla at redhat.com
Wed Oct 29 08:33:31 UTC 2014
https://bugzilla.redhat.com/show_bug.cgi?id=1158226
--- Comment #2 from Anand Avati <aavati at redhat.com> ---
COMMIT: http://review.gluster.org/8995 committed in master by Vijay Bellur
(vbellur at redhat.com)
------
commit ef03f98bf9b5f7f317383b84d251299b8939e5cc
Author: Anand Avati <avati at redhat.com>
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 at redhat.com>
Reviewed-on: http://review.gluster.org/8995
Reviewed-by: Harshavardhana <harsha at harshavardhana.net>
Tested-by: Gluster Build System <jenkins at build.gluster.com>
Reviewed-by: Raghavendra G <rgowdapp at redhat.com>
Reviewed-by: Pranith Kumar Karampuri <pkarampu at redhat.com>
Tested-by: Pranith Kumar Karampuri <pkarampu at redhat.com>
--
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
More information about the Bugs
mailing list