Bug 783925 - [4e92c58d27b5cea9d7346d6dd88be9b3479c9e3b]: server crash in __mq_add_new_contribution_node
[4e92c58d27b5cea9d7346d6dd88be9b3479c9e3b]: server crash in __mq_add_new_cont...
Status: CLOSED CURRENTRELEASE
Product: GlusterFS
Classification: Community
Component: quota (Show other bugs)
pre-release
Unspecified Unspecified
high Severity urgent
: ---
: ---
Assigned To: Raghavendra G
:
Depends On:
Blocks: 817967
  Show dependency treegraph
 
Reported: 2012-01-23 04:40 EST by Rahul C S
Modified: 2013-07-24 13:36 EDT (History)
4 users (show)

See Also:
Fixed In Version: glusterfs-3.4.0
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-07-24 13:36:52 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions: 1f3a0dd4742a2fcd3215aee4a5e22125d7ea4f4d
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description Rahul C S 2012-01-23 04:40:41 EST
Description of problem:
Created a volume with single brick; enabled quota & set limit. Ran posix compliance test, server crashed.

Core was generated by `/usr/local/sbin/glusterfsd -s localhost --volfile-id test.dagobah.tmp-brick -p'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007fd4c4d039f9 in uuid_copy (dst=0x21e72a8 "", src=0x8 <Address 0x8 out of bounds>) at ../../../contrib/uuid/copy.c:44
44			*cp1++ = *cp2++;
(gdb) bt
#0  0x00007fd4c4d039f9 in uuid_copy (dst=0x21e72a8 "", src=0x8 <Address 0x8 out of bounds>) at ../../../contrib/uuid/copy.c:44
#1  0x00007fd4c05b71d8 in __mq_add_new_contribution_node (this=0x216baa0, ctx=0x21e6a00, loc=0x7fd4b82002e0)
    at ../../../../../xlators/features/marker/src/marker-quota-helper.c:183
#2  0x00007fd4c05b72bb in mq_add_new_contribution_node (this=0x216baa0, ctx=0x21e6a00, loc=0x7fd4b82002e0)
    at ../../../../../xlators/features/marker/src/marker-quota-helper.c:208
#3  0x00007fd4c05b481f in mq_inspect_directory_xattr (this=0x216baa0, loc=0x7fd4b82002e0, dict=0x219f220, buf=...)
    at ../../../../../xlators/features/marker/src/marker-quota.c:1979
#4  0x00007fd4c05b5107 in mq_xattr_state (this=0x216baa0, loc=0x7fd4b82002e0, dict=0x219f220, buf=...)
    at ../../../../../xlators/features/marker/src/marker-quota.c:2119
#5  0x00007fd4c05aa4fb in marker_lookup_cbk (frame=0x7fd4c3308c64, cookie=0x7fd4c330885c, this=0x216baa0, op_ret=0, op_errno=0, 
    inode=0x7fd4bf57732c, buf=0x7fd4bfe9ab90, dict=0x219f220, postparent=0x7fd4bfe9ac00)
    at ../../../../../xlators/features/marker/src/marker.c:2149
#6  0x00007fd4c07c3b7e in iot_lookup_cbk (frame=0x7fd4c330885c, cookie=0x7fd4c3308500, this=0x216a820, op_ret=0, op_errno=0, 
    inode=0x7fd4bf57732c, buf=0x7fd4bfe9ab90, xattr=0x219f220, postparent=0x7fd4bfe9ac00)
    at ../../../../../xlators/performance/io-threads/src/io-threads.c:284
#7  0x00007fd4c09e614b in pl_lookup_cbk (frame=0x7fd4c3308500, cookie=0x7fd4c3308e68, this=0x2169640, op_ret=0, op_errno=0, 
    inode=0x7fd4bf57732c, buf=0x7fd4bfe9ab90, dict=0x219f220, postparent=0x7fd4bfe9ac00)
    at ../../../../../xlators/features/locks/src/posix.c:1452
#8  0x00007fd4c0bf78cc in posix_acl_lookup_cbk (frame=0x7fd4c3308e68, cookie=0x7fd4c3308250, this=0x2168440, op_ret=0, op_errno=0, 
    inode=0x7fd4bf57732c, buf=0x7fd4bfe9ab90, xattr=0x219f220, postparent=0x7fd4bfe9ac00)
    at ../../../../../xlators/system/posix-acl/src/posix-acl.c:746
#9  0x00007fd4c0e0afdf in posix_lookup (frame=0x7fd4c3308250, this=0x2166f10, loc=0x7fd4c2fdb084, xattr_req=0x219f120)
    at ../../../../../xlators/storage/posix/src/posix.c:162
#10 0x00007fd4c0bf7cf7 in posix_acl_lookup (frame=0x7fd4c3308e68, this=0x2168440, loc=0x7fd4c2fdb084, xattr=0x0)
    at ../../../../../xlators/system/posix-acl/src/posix-acl.c:798
#11 0x00007fd4c09e660c in pl_lookup (frame=0x7fd4c3308500, this=0x2169640, loc=0x7fd4c2fdb084, xattr_req=0x0)
    at ../../../../../xlators/features/locks/src/posix.c:1491
#12 0x00007fd4c07c3dc1 in iot_lookup_wrapper (frame=0x7fd4c330885c, this=0x216a820, loc=0x7fd4c2fdb084, xattr_req=0x0)
    at ../../../../../xlators/performance/io-threads/src/io-threads.c:294
#13 0x00007fd4c4ce9aae in call_resume_wind (stub=0x7fd4c2fdb04c) at ../../../libglusterfs/src/call-stub.c:2408
#14 0x00007fd4c4cf0956 in call_resume (stub=0x7fd4c2fdb04c) at ../../../libglusterfs/src/call-stub.c:3853
#15 0x00007fd4c07c37af in iot_worker (data=0x21752f0) at ../../../../../xlators/performance/io-threads/src/io-threads.c:138
#16 0x00007fd4c4663efc in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#17 0x00007fd4c439e89d in clone () from /lib/x86_64-linux-gnu/libc.so.6
#18 0x0000000000000000 in ?? ()


Additional info:
[2012-01-23 14:56:44.391691] W [marker-quota.c:1335:mq_release_parent_lock] (-->/usr/local/lib/libglusterfs.so.0(default_setxattr_cbk+0x149) 
[0x7fd4c4cc9911] (-->/usr/local/lib/glusterfs/3git/xlator/performance/io-threads.so(iot_setxattr_cbk+0x149) [0x7fd4c07cd6cd] (-->/usr/local/l
ib/glusterfs/3git/xlator/features/marker.so(mq_fetch_child_size_and_contri+0x822) [0x7fd4c05b39b5]))) 0-test-marker: An operation during quot
a updation of path (/fstest_2c94ee1de08e5be0dc84152fdd052ee6) failed (Bad address)
[2012-01-23 14:56:44.405570] E [posix.c:192:posix_stat] 0-test-posix: null gfid for path /fstest_2c94ee1de08e5be0dc84152fdd052ee6
[2012-01-23 14:56:44.405660] E [posix.c:198:posix_stat] 0-test-posix: lstat on (null) failed: Invalid argument
[2012-01-23 14:56:44.405680] I [server3_1-fops.c:963:server_unlink_cbk] 0-test-server: 3423: UNLINK /fstest_2c94ee1de08e5be0dc84152fdd052ee6 
(9f0fe80c-4b79-4fde-b8cf-44ce37fe39d5) ==> -1 (Invalid argument)
[2012-01-23 14:56:44.434200] E [posix.c:2324:posix_setxattr] 0-test-posix: null gfid for path /fstest_4ef5e45164778e1db120150beb7ff157
[2012-01-23 14:56:44.434239] E [posix-helpers.c:659:posix_handle_pair] 0-test-posix: (null): key:trusted.glusterfs.quota.dirty error:Bad addr
ess
[2012-01-23 14:56:44.434282] E [posix.c:2324:posix_setxattr] 0-test-posix: null gfid for path /
[2012-01-23 14:56:44.434339] E [posix-helpers.c:659:posix_handle_pair] 0-test-posix: (null): key:trusted.glusterfs.quota.dirty error:Bad addr
ess
[2012-01-23 14:56:44.434361] W [marker-quota.c:1679:mq_fetch_child_size_and_contri] 0-test-marker: couldnt mark inode corresponding to path (
/) dirty (Bad address)
[2012-01-23 14:56:44.434414] W [marker-quota.c:1335:mq_release_parent_lock] (-->/usr/local/lib/libglusterfs.so.0(default_setxattr_cbk+0x149) 
[0x7fd4c4cc9911] (-->/usr/local/lib/glusterfs/3git/xlator/performance/io-threads.so(iot_setxattr_cbk+0x149) [0x7fd4c07cd6cd] (-->/usr/local/l
ib/glusterfs/3git/xlator/features/marker.so(mq_fetch_child_size_and_contri+0x822) [0x7fd4c05b39b5]))) 0-test-marker: An operation during quot
a updation of path (/fstest_4ef5e45164778e1db120150beb7ff157) failed (Bad address)
[2012-01-23 14:56:44.439799] E [posix.c:2324:posix_setxattr] 0-test-posix: null gfid for path /fstest_4ef5e45164778e1db120150beb7ff157
[2012-01-23 14:56:44.439837] E [posix-helpers.c:659:posix_handle_pair] 0-test-posix: (null): key:trusted.glusterfs.quota.dirty error:Bad addr
ess
[2012-01-23 14:56:44.439907] W [marker-quota.c:1679:mq_fetch_child_size_and_contri] 0-test-marker: couldnt mark inode corresponding to path (
/fstest_4ef5e45164778e1db120150beb7ff157) dirty (Bad address)
[2012-01-23 14:56:44.439961] W [marker-quota.c:1335:mq_release_parent_lock] (-->/usr/local/lib/libglusterfs.so.0(default_setxattr_cbk+0x149) 
[0x7fd4c4cc9911] (-->/usr/local/lib/glusterfs/3git/xlator/performance/io-threads.so(iot_setxattr_cbk+0x149) [0x7fd4c07cd6cd] (-->/usr/local/l
ib/glusterfs/3git/xlator/features/marker.so(mq_fetch_child_size_and_contri+0x822) [0x7fd4c05b39b5]))) 0-test-marker: An operation during quot
a updation of path (/fstest_4ef5e45164778e1db120150beb7ff157/fstest_3c02e8243df256ff9525bcede349cba0) failed (Bad address)
pending frames:

patchset: git://git.gluster.com/glusterfs.git
signal received: 11
patchset: git://git.gluster.com/glusterfs.git
signal received: 11
time of crash: 2012-01-23 14:56:44
configuration details:
argp 1
backtrace 1
dlfcn 1
fdatasync 1
libpthread 1
llistxattr 1
setfsid 1
spinlock 1
epoll.h 1
xattr.h 1
st_atim.tv_nsec 1
package-string: glusterfs 3git
/lib/x86_64-linux-gnu/libc.so.6(+0x36420)[0x7fd4c42f3420]
/usr/local/lib/libglusterfs.so.0(uuid_copy+0x29)[0x7fd4c4d039f9]
/usr/local/lib/glusterfs/3git/xlator/features/marker.so(__mq_add_new_contribution_node+0x11f)[0x7fd4c05b71d8]
/usr/local/lib/glusterfs/3git/xlator/features/marker.so(mq_add_new_contribution_node+0x90)[0x7fd4c05b72bb]
/usr/local/lib/glusterfs/3git/xlator/features/marker.so(mq_inspect_directory_xattr+0x1c8)[0x7fd4c05b481f]
/usr/local/lib/glusterfs/3git/xlator/features/marker.so(mq_xattr_state+0x164)[0x7fd4c05b5107]
/usr/local/lib/glusterfs/3git/xlator/features/marker.so(marker_lookup_cbk+0x2da)[0x7fd4c05aa4fb]
/usr/local/lib/glusterfs/3git/xlator/performance/io-threads.so(iot_lookup_cbk+0x169)[0x7fd4c07c3b7e]
/usr/local/lib/glusterfs/3git/xlator/features/locks.so(pl_lookup_cbk+0x27f)[0x7fd4c09e614b]
/usr/local/lib/glusterfs/3git/xlator/features/access-control.so(posix_acl_lookup_cbk+0x37b)[0x7fd4c0bf78cc]
/usr/local/lib/glusterfs/3git/xlator/storage/posix.so(posix_lookup+0xe0b)[0x7fd4c0e0afdf]
/usr/local/lib/glusterfs/3git/xlator/features/access-control.so(posix_acl_lookup+0x394)[0x7fd4c0bf7cf7]
/usr/local/lib/glusterfs/3git/xlator/features/locks.so(pl_lookup+0x4a9)[0x7fd4c09e660c]
/usr/local/lib/glusterfs/3git/xlator/performance/io-threads.so(iot_lookup_wrapper+0x22b)[0x7fd4c07c3dc1]
/usr/local/lib/libglusterfs.so.0(+0x3eaae)[0x7fd4c4ce9aae]
/usr/local/lib/libglusterfs.so.0(call_resume+0xd2)[0x7fd4c4cf0956]
/usr/local/lib/glusterfs/3git/xlator/performance/io-threads.so(iot_worker+0x1f3)[0x7fd4c07c37af]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x7efc)[0x7fd4c4663efc]
/lib/x86_64-linux-gnu/libc.so.6(clone+0x6d)[0x7fd4c439e89d]
---------
Comment 1 Saurabh 2012-01-24 00:59:26 EST
I tried to reproduce this bug and found out that this does not fail for 3.3.0qa19 but on the latest git.
Comment 2 Anand Avati 2012-02-02 22:33:27 EST
CHANGE: http://review.gluster.com/2702 (features/marker,quota: Incorporate changes to support nameless lookup) merged in master by Vijay Bellur (vijay@gluster.com)
Comment 3 Rahul C S 2012-04-05 06:55:48 EDT
No crashes found. Works with latest git head.

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