Bug 782760

Summary: fuse mount crashes with readdir when built with efence
Product: [Community] GlusterFS Reporter: Anush Shetty <ashetty>
Component: fuseAssignee: vpshastry <vshastry>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: low    
Version: mainlineCC: amarts, gluster-bugs, nsathyan, vbellur
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.4.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 848348 (view as bug list) Environment:
Last Closed: 2013-07-24 17:23:25 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 848348    

Description Anush Shetty 2012-01-18 11:45:17 UTC
Description of problem: Mounting client via fuse and then doing a readdir resulted in a crash when the binaries are built with efence


Version-Release number of selected component (if applicable):
3.3.0qa19

How reproducible: The volume was already created. I just tried mounting
glusterfs  client via fuse.


Steps to Reproduce:
1. /gluster/efence/sbin/glusterfs -l /tmp/c1.log -s shortwing --volfile-id=test
--acl /mnt/gfs
2. ls /mnt/gfs

Actual results:
(gdb) bt
#0  0x00007fa150eb2687 in kill () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007fa151af52a0 in EF_Abort () from /usr/lib/libefence.so.0
#2  0x00007fa151af4b9c in memalign () from /usr/lib/libefence.so.0
#3  0x00007fa151af4757 in malloc () from /usr/lib/libefence.so.0
#4  0x00007fa151af4d34 in calloc () from /usr/lib/libefence.so.0
#5  0x00007fa1518b42d3 in __gf_default_calloc (cnt=1, size=0) at mem-pool.h:84
#6  0x00007fa1518b477c in __gf_calloc (nmemb=1, size=0, type=87) at
mem-pool.c:138
#7  0x00007fa14f82bf46 in fuse_readdir_cbk () from
/gluster/efence/lib/glusterfs/3git/xlator/mount/fuse.so
#8  0x00007fa14c3780af in posix_acl_readdir_cbk () from
/gluster/efence/lib/glusterfs/3git/xlator/system/posix-acl.so
#9  0x00007fa14c58a2a0 in io_stats_readdir_cbk () from
/gluster/efence/lib/glusterfs/3git/xlator/debug/io-stats.so
#10 0x00007fa14c7a36e7 in sp_readdir_cbk () from
/gluster/efence/lib/glusterfs/3git/xlator/performance/stat-prefetch.so
#11 0x00007fa151889b82 in default_readdirp_cbk (frame=0x7fa14fdc7adc,
cookie=0x7fa14fdc7b88, this=0x7fa14d65e6c0, op_ret=0, op_errno=2, 
    entries=0x7fff0c1cfec0) at defaults.c:396
#12 0x00007fa151889b82 in default_readdirp_cbk (frame=0x7fa14fdc7b88,
cookie=0x7fa14fdc7c34, this=0x7fa14d6436c0, op_ret=0, op_errno=2, 
    entries=0x7fff0c1cfec0) at defaults.c:396
#13 0x00007fa151889b82 in default_readdirp_cbk (frame=0x7fa14fdc7c34,
cookie=0x7fa14fdc7ce0, this=0x7fa14d6296c0, op_ret=0, op_errno=2, 
    entries=0x7fff0c1cfec0) at defaults.c:396
#14 0x00007fa151889b82 in default_readdirp_cbk (frame=0x7fa14fdc7ce0,
cookie=0x7fa14fdc7d8c, this=0x7fa14d6076c0, op_ret=0, op_errno=2, 
    entries=0x7fff0c1cfec0) at defaults.c:396
#15 0x00007fa14d33e5c5 in dht_readdirp_cbk () from
/gluster/efence/lib/glusterfs/3git/xlator/cluster/distribute.so
#16 0x00007fa14d683661 in client3_1_readdirp_cbk () from
/gluster/efence/lib/glusterfs/3git/xlator/protocol/client.so
#17 0x00007fa15166106a in rpc_clnt_handle_reply () from
/gluster/efence/lib/libgfrpc.so.0
#18 0x00007fa1516613cb in rpc_clnt_notify () from
/gluster/efence/lib/libgfrpc.so.0
#19 0x00007fa15165d1ac in rpc_transport_notify () from
/gluster/efence/lib/libgfrpc.so.0
#20 0x00007fa14e2bb2f7 in socket_event_poll_in () from
/gluster/efence/lib/glusterfs/3git/rpc-transport/socket.so
#21 0x00007fa14e2bb860 in socket_event_handler () from
/gluster/efence/lib/glusterfs/3git/rpc-transport/socket.so
#22 0x00007fa1518b3bc0 in event_dispatch_epoll_handler
(event_pool=0x7fa151e33f68, events=0x7fa14e5823f4, i=0) at event.c:794
#23 0x00007fa1518b3dd3 in event_dispatch_epoll (event_pool=0x7fa151e33f68) at
event.c:856
#24 0x00007fa1518b4146 in event_dispatch (event_pool=0x7fa151e33f68) at
event.c:956
#25 0x0000000000407d4e in main ()



Expected results:

Should succeed

Comment 1 Vijay Bellur 2013-02-06 03:58:16 UTC
CHANGE: http://review.gluster.org/3846 (fuse(efence): zero sized memory was being allocated.) merged in master by Anand Avati (avati)