freebsd-dev/sys/rpc
Rick Macklem 34f1fddb1e Fix a crash during unmount of an NFSv4.1 mount.
Larry Rosenman reported a crash on freebsd-current@ which was caused by
a premature release of the krpc backchannel socket structure.
I believe this was caused by a race between the SVC_RELEASE() in clnt_vc.c
and the xprt_unregister() in the higher layer (clnt_rc.c), which tried
to lock the mutex in the xprt structure and crashed.
This patch fixes this by removing the xprt_unregister() in the clnt_vc
layer and allowing this to always be done by the clnt_rc (higher reconnect
layer).

Reported by:	ler@lerctr.org
Tested by:	ler@letctr.org
MFC after:	2 weeks
2017-04-10 22:47:18 +00:00
..
rpcsec_gss Hide the boottime and bootimebin globals, provide the getboottime(9) 2016-07-27 11:08:59 +00:00
auth_none.c
auth_unix.c
auth.h
authunix_prot.c
clnt_bck.c Deobfuscate cleanup path in clnt_bck_create(..) 2016-06-10 17:53:28 +00:00
clnt_dg.c Deobfuscate cleanup path in clnt_dg_create(..) 2016-07-11 06:58:24 +00:00
clnt_rc.c Fix a crash during unmount of an NFSv4.1 mount. 2017-04-10 22:47:18 +00:00
clnt_stat.h
clnt_vc.c Fix a crash during unmount of an NFSv4.1 mount. 2017-04-10 22:47:18 +00:00
clnt.h
getnetconfig.c
krpc.h
netconfig.h
nettype.h
pmap_prot.h
replay.c These files were getting sys/malloc.h and vm/uma.h with header pollution 2016-02-01 17:41:21 +00:00
replay.h
rpc_callmsg.c
rpc_com.h
rpc_generic.c Remove some NULL checks for M_WAITOK allocations. 2016-03-29 13:56:59 +00:00
rpc_msg.h
rpc_prot.c
rpc.h
rpcb_clnt.c Fix the rpcb_getaddr() definition to match its declaration. 2016-06-09 14:33:00 +00:00
rpcb_clnt.h
rpcb_prot.c
rpcb_prot.h
rpcm_subs.h Renumber copyright clause 4 2017-02-28 23:42:47 +00:00
rpcsec_gss.h
svc_auth_unix.c
svc_auth.c
svc_auth.h
svc_dg.c Don't test for xpt not being NULL before calling svc_xprt_free(..) 2016-07-11 07:24:56 +00:00
svc_generic.c
svc_vc.c Quell false positives in svc_vc_create and svc_vc_create_conn with cd and xprt 2016-05-27 08:48:33 +00:00
svc.c add svcpool_close to handle killed nfsd threads 2017-02-14 17:49:08 +00:00
svc.h add svcpool_close to handle killed nfsd threads 2017-02-14 17:49:08 +00:00
types.h sys/rpc: minor spelling fixes. 2016-05-06 01:49:46 +00:00
xdr.h