Bug 764424 (GLUSTER-2692)

Summary: NFS server crashes on showmount -a
Product: [Community] GlusterFS Reporter: Gaurav <ggangalw>
Component: nfsAssignee: Gaurav <ggangalw>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 3.1.3CC: gluster-bugs, saurabh, shehjart, vijay, vijaykumar
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: release-3.2.0 ,release-3.1.1 and mainline Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description Gaurav 2011-04-07 22:47:18 EDT
Passing invalid argument to xdr_serialize_mountlist.
Comment 1 Shehjar Tikoo 2011-04-07 23:19:59 EDT
What do you mean "invalid argument"? Elaborate.
Comment 2 Gaurav 2011-04-07 23:50:11 EDT
xdr_serialize_mountlist (struct iovec outmsg, mountlist *ml);
so here argument ml should be mountboby **.

But in mnt3svc_dump we are just pasing mountbody * as argument to mnt3svc_submit_reply which then call xdr_serialize_mountlist.
Comment 3 Gaurav 2011-04-08 01:42:38 EDT
gaurav@gaurav-Vostro-3400:~/new_gluster$ sudo showmount -a
rpc mount dump: RPC: Unable to receive; errno = Connection reset by peer
gaurav@gaurav-Vostro-3400:~/new_gluster$ sudo showmount -a
clnt_create: RPC: Program not registered

patchset: git://git.gluster.com/glusterfs.git
signal received: 11
time of crash: 2011-04-08 11:10:02
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 3.1.0git
/lib/libc.so.6(+0x33c20)[0x7f56b2961c20]
/lib/libc.so.6(+0x82e52)[0x7f56b29b0e52]
/lib/libc.so.6(xdr_string+0x37)[0x7f56b2a446d7]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(xdr_name+0xe)[0x7f56b0104a4e]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(xdr_mountbody+0x19)[0x7f56b0104b49]
/lib/libc.so.6(xdr_reference+0x30)[0x7f56b2a45d30]
/lib/libc.so.6(xdr_pointer+0x81)[0x7f56b2a45cf1]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(xdr_mountlist+0x15)[0x7f56b0104965]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(nfs_xdr_serialize_generic+0x70)[0x7f56b00fd940]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(mnt3svc_submit_reply+0x7a)[0x7f56b00e527a]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(mnt3svc_dump+0x53)[0x7f56b00e5833]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(nfs_rpcsvc_handle_rpc_call+0x9c)[0x7f56b01026bc]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(nfs_rpcsvc_record_update_state+0x15d)[0x7f56b0102ecd]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(nfs_rpcsvc_conn_data_handler+0x68)[0x7f56b0103218]
/usr/local/lib/libglusterfs.so.0(+0x3c254)[0x7f56b353a254]
/usr/local/lib/glusterfs/3.1.0git/xlator/nfs/server.so(nfs_rpcsvc_stage_proc+0x12)[0x7f56b0104812]
/lib/libpthread.so.0(+0x7971)[0x7f56b2cb8971]
/lib/libc.so.6(clone+0x6d)[0x7f56b2a1492d]
---------
Comment 4 Saurabh 2011-06-09 04:53:50 EDT
its not resolved after discussion with dev.
Comment 5 Anand Avati 2011-06-22 08:40:35 EDT
PATCH: http://patches.gluster.com/patch/7565 in master (NFS : Pass valid argument in mnt3svc_dump.)
Comment 6 Vijaykumar 2011-09-06 06:58:32 EDT
It is reproducible in release-3.1. But fixed in release-3.2 and in mainline.
Comment 7 Vijaykumar 2011-09-06 21:46:22 EDT
Still it is to be fixed in release-3.1
Comment 8 Vijay Bellur 2011-09-07 23:46:51 EDT
patch pushed to release-3.1 from http://review.gluster.com/363