Description of problem: While trying to mount with nfs client crashes Version-Release number of selected component (if applicable): Mainline How reproducible: often Steps to Reproduce: 1. compile glusterfs with efence 2. created a stripe volume 3. mount with nfs Actual results: client crashed Expected results: should not crash Additional info: bt --- #0 0x00000031a3e32be7 in kill () from /lib64/libc.so.6 #1 0x00007fd6719901e5 in ?? () from /usr/lib64/libefence.so.0 #2 0x00007fd67199075d in EF_Abort () from /usr/lib64/libefence.so.0 #3 0x00007fd67198fce7 in memalign () from /usr/lib64/libefence.so.0 #4 0x00007fd67198febd in calloc () from /usr/lib64/libefence.so.0 #5 0x00007fd672016f5f in __gf_default_calloc (cnt=0, size=32) at mem-pool.h:84 #6 0x00007fd672017429 in __gf_calloc (nmemb=0, size=32, type=55) at mem-pool.c:138 #7 0x00007fd671dbc1ac in rpcsvc_handle_disconnect (svc=0x7fd66dbf1f58, trans=0x7fd6677e9d48) at rpcsvc.c:541 #8 0x00007fd671dbc415 in rpcsvc_notify (trans=0x7fd6677e9d48, mydata=0x7fd66dbf1f58, event=RPC_TRANSPORT_DISCONNECT, data=0x7fd6677e9d48) at rpcsvc.c:598 #9 0x00007fd671dc1d7c in rpc_transport_notify (this=0x7fd6677e9d48, event=RPC_TRANSPORT_DISCONNECT, data=0x7fd6677e9d48) at rpc-transport.c:498 #10 0x00007fd66aac4233 in socket_event_poll_err (this=0x7fd6677e9d48) at socket.c:694 #11 0x00007fd66aac8869 in socket_event_handler (fd=20, idx=9, data=0x7fd6677e9d48, poll_in=1, poll_out=0, poll_err=0) at socket.c:1797 #12 0x00007fd672016824 in event_dispatch_epoll_handler (event_pool=0x7fd6718d3f68, events=0x7fd671956394, i=0) at event.c:794 #13 0x00007fd672016a47 in event_dispatch_epoll (event_pool=0x7fd6718d3f68) at event.c:856 #14 0x00007fd672016dd2 in event_dispatch (event_pool=0x7fd6718d3f68) at event.c:956 #15 0x0000000000407a7e in main (argc=7, argv=0x7fff0a4d2918) at glusterfsd.c:1601
CHANGE: http://review.gluster.com/3257 (rpcsvc: size check before calloc in rpcsvc_handle_disconnect) merged in master by Vijay Bellur (vijay)
Tried the above steps with current glusterfs install (release-3.3). glusterd crashed because it was using 'socket,rdma' (in rdma transport), after removing 'rdma' from that line, glusterd started working. Creating a stripe volume and operating on it.. disconnecting a brick didn't crash the nfs process.