Bug 783927

Summary: [4e92c58d27b5cea9d7346d6dd88be9b3479c9e3b]: client crashed in quota_statfs_cbk
Product: [Community] GlusterFS Reporter: Rahul C S <rahulcs>
Component: quotaAssignee: Junaid <junaid>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: urgent Docs Contact:
Priority: unspecified    
Version: pre-releaseCC: amarts, gluster-bugs, junaid, rfortier, vagarwal
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.4.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-07-24 17:47:20 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: 1f3a0dd4742a2fcd3215aee4a5e22125d7ea4f4d Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 817967    

Description Rahul C S 2012-01-23 09:46:48 UTC
Description of problem:
Created a volume with single brick; enabled quota & set limit. Ran posix compliance test, client crashed.

Core was generated by `/usr/local/sbin/glusterfs --volfile-id=test --volfile-server=dagobah mnt/'.
Program terminated with signal 11, Segmentation fault.
#0  0x00007f16c264462e in quota_statfs_cbk (frame=0x7f16c4ec90f8, cookie=0x7f16c148504c, this=0x1fad8a0, op_ret=-1, op_errno=107, buf=0x0)
    at ../../../../../xlators/features/quota/src/quota.c:2756
2756		usage = (ctx->size) / buf->f_bsize;
(gdb) bt
#0  0x00007f16c264462e in quota_statfs_cbk (frame=0x7f16c4ec90f8, cookie=0x7f16c148504c, this=0x1fad8a0, op_ret=-1, op_errno=107, buf=0x0)
    at ../../../../../xlators/features/quota/src/quota.c:2756
#1  0x00007f16c286df69 in client3_1_statfs (frame=0x7f16c4ec91a4, this=0x1fac300, data=0x7f16c1089a50)
    at ../../../../../xlators/protocol/client/src/client3_1-fops.c:3928
#2  0x00007f16c285602c in client_statfs (frame=0x7f16c4ec91a4, this=0x1fac300, loc=0x1fc5b58)
    at ../../../../../xlators/protocol/client/src/client.c:1016
#3  0x00007f16c2644af4 in quota_statfs (frame=0x7f16c4ec90f8, this=0x1fad8a0, loc=0x1fc5b58)
    at ../../../../../xlators/features/quota/src/quota.c:2797
#4  0x00007f16c6892623 in default_statfs (frame=0x7f16c4ec99b4, this=0x1faeb90, loc=0x1fc5b58) at ../../../libglusterfs/src/defaults.c:836
#5  0x00007f16c6892623 in default_statfs (frame=0x7f16c4ec9908, this=0x1fafe30, loc=0x1fc5b58) at ../../../libglusterfs/src/defaults.c:836
#6  0x00007f16c6892623 in default_statfs (frame=0x7f16c4ec985c, this=0x1fb1070, loc=0x1fc5b58) at ../../../libglusterfs/src/defaults.c:836
#7  0x00007f16c6892623 in default_statfs (frame=0x7f16c4ec904c, this=0x1fb21f0, loc=0x1fc5b58) at ../../../libglusterfs/src/defaults.c:836
#8  0x00007f16c6892623 in default_statfs (frame=0x7f16c4ec97b0, this=0x1fb3460, loc=0x1fc5b58) at ../../../libglusterfs/src/defaults.c:836
#9  0x00007f16c19b1ee6 in io_stats_statfs (frame=0x7f16c4ec9704, this=0x1fb4700, loc=0x1fc5b58)
    at ../../../../../xlators/debug/io-stats/src/io-stats.c:2074
#10 0x00007f16c498b162 in fuse_statfs (this=0x1fa1e30, finh=0x1fcbc50, msg=0x1fcbc78)
    at ../../../../../xlators/mount/fuse/src/fuse-bridge.c:2567
#11 0x00007f16c498fbfd in fuse_thread_proc (data=0x1fa1e30) at ../../../../../xlators/mount/fuse/src/fuse-bridge.c:3599
#12 0x00007f16c6224efc in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#13 0x00007f16c5f5f89d in clone () from /lib/x86_64-linux-gnu/libc.so.6
#14 0x0000000000000000 in ?? ()

buf & ctx in f 0 are NULL;

Additional info:
[2012-01-23 14:56:52.854877] W [fuse-bridge.c:269:fuse_entry_cbk] 0-glusterfs-fuse: 3610: LOOKUP() /fstest_4ef5e45164778e1db120150beb7ff157/fstest_4ef5e45164778e1db120150beb7ff157 => -1 (Transport endpoint is not connected)
[2012-01-23 14:56:52.869884] W [client3_1-fops.c:2631:client3_1_lookup] 0-test-client-0: failed to send the fop: Transport endpoint is not connected
[2012-01-23 14:56:52.876928] W [client3_1-fops.c:2631:client3_1_lookup] 0-test-client-0: failed to send the fop: Transport endpoint is not connected
[2012-01-23 14:56:52.877130] W [client3_1-fops.c:3927:client3_1_statfs] 0-test-client-0: failed to send the fop: Transport endpoint is not connected
pending frames:
frame : type(1) op(STATFS)
frame : type(1) op(STATFS)

patchset: git://git.gluster.com/glusterfs.git
signal received: 11
time of crash: 2012-01-23 14:56:52
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)[0x7f16c5eb4420]
/usr/local/lib/glusterfs/3git/xlator/features/quota.so(quota_statfs_cbk+0x16e)[0x7f16c264462e]
/usr/local/lib/glusterfs/3git/xlator/protocol/client.so(client3_1_statfs+0x365)[0x7f16c286df69]
/usr/local/lib/glusterfs/3git/xlator/protocol/client.so(client_statfs+0x14b)[0x7f16c285602c]
/usr/local/lib/glusterfs/3git/xlator/features/quota.so(quota_statfs+0x27f)[0x7f16c2644af4]
/usr/local/lib/libglusterfs.so.0(default_statfs+0x22a)[0x7f16c6892623]
---------

The crash happened during the same operation as in https://bugzilla.redhat.com/show_bug.cgi?id=783925

Comment 1 Anand Avati 2012-01-27 12:28:42 UTC
CHANGE: http://review.gluster.com/2685 (features/quota: Check for error in statfs fop call back.) merged in master by Vijay Bellur (vijay)

Comment 2 Rahul C S 2012-04-05 07:08:54 UTC
No crash found with the same setup, & posix compliance tests completed successfully.