[Bugs] [Bug 1186657] Inode infinite loop leads to glusterfsd segfault
bugzilla at redhat.com
bugzilla at redhat.com
Tue Mar 10 10:45:38 UTC 2015
https://bugzilla.redhat.com/show_bug.cgi?id=1186657
Amit Chaurasia <achauras at redhat.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ON_QA |VERIFIED
--- Comment #4 from Amit Chaurasia <achauras at redhat.com> ---
The issue was that a dentry in the inode table was skewed in a way that the
dentry of a file occured before its parent. So, the entry was like parent >
child > parent.
This triggered an infinite loop in inode table causing the loc>Path to be NULL
and as there was no way to handle this NULL path, a crash dump was triggered.
This dentry issue in the inode table was caused by a race in readdirp.
I followed simple steps as suggested :
1. Create a 3 level folder structure.
/fuse_mnt1/test_1186657/bug1/sub_dir
2. cd to the folder and start creating and deleting the files.
while true; do touch a; rm -f a; done
3. From the other mount point, start a lookup:
while true; do ls -lR > /dev/null; done
4. I started this file and link creation from multiple terminals for different
files on different mount points.
The idea was to try and create a race in readdirp while entries are being made
and deleted from the inode table.
Didn't see the crash neither the error messages in the logs files.
Note: I could see following quota messages on the log files:
==> /var/log/glusterfs/bricks/rhs-brick1-gv0.log <==
[2015-03-10 15:22:47.771144] W [quota.c:1773:quota_unlink_cbk] 0-gv0-quota:
quota context not set in inode (gfid:51a0154d-318c-42dc-9d31-12e3eaa13d15)
==> /var/log/glusterfs/bricks/rhs-brick3-gv0.log <==
[2015-03-10 15:22:47.774715] W [quota.c:1773:quota_unlink_cbk] 0-gv0-quota:
quota context not set in inode (gfid:51a0154d-318c-42dc-9d31-12e3eaa13d15)
Marking the bug verified.
--
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=tl4A6LYlDz&a=cc_unsubscribe
More information about the Bugs
mailing list