android_kernel_xiaomi_sm8350/net/sunrpc
Neil Brown 301e99ce4a nfsd: ensure sockets are closed on error
One the changes in commit d7979ae4a "svc: Move close processing to a
single place" is:

  err_delete:
-       svc_delete_socket(svsk);
+       set_bit(SK_CLOSE, &svsk->sk_flags);
        return -EAGAIN;

This is insufficient. The recvfrom methods must always call
svc_xprt_received on completion so that the socket gets re-queued if
there is any more work to do.  This particular path did not make that
call because it actually destroyed the svsk, making requeue pointless.
When the svc_delete_socket was change to just set a bit, we should have
added a call to svc_xprt_received,

This is the problem that b0401d7253 attempted to fix, incorrectly.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
2010-02-28 23:21:51 -05:00
..
auth_gss sunrpc: fix build-time warning 2010-01-06 17:30:05 -05:00
xprtrdma Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2009-12-09 19:43:33 -08:00
addr.c SUNRPC: Display compressed (shorthand) IPv6 presentation addresses 2009-12-03 15:58:56 -05:00
auth_generic.c
auth_null.c
auth_unix.c
auth.c Merge branch 'nfs-for-2.6.33' 2009-12-13 13:56:27 -05:00
backchannel_rqst.c
bc_svc.c
cache.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
clnt.c SUNRPC: soft connect semantics for UDP 2009-12-03 15:58:56 -05:00
Kconfig
Makefile
rpc_pipe.c
rpcb_clnt.c SUNRPC: Use soft connects for autobinding over TCP 2009-12-03 15:58:56 -05:00
sched.c nfs: enforce FIFO ordering of operations trying to acquire slot 2009-12-15 13:55:18 -05:00
socklib.c
stats.c
sunrpc_syms.c SUNRPC: Use a cached RPC client and transport for rpcbind upcalls 2009-12-03 15:58:56 -05:00
sunrpc.h
svc_xprt.c Revert "sunrpc: move the close processing after do recvfrom method" 2010-02-28 16:39:30 -05:00
svc.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
svcauth_unix.c SUNRPC: Use rpc_pton() in ip_map_parse() 2010-01-26 17:52:33 -05:00
svcauth.c net: Move && and || to end of previous line 2009-11-29 16:55:45 -08:00
svcsock.c nfsd: ensure sockets are closed on error 2010-02-28 23:21:51 -05:00
sysctl.c sysctl: Drop & in front of every proc_handler. 2009-11-18 08:37:40 -08:00
timer.c
xdr.c
xprt.c SUNRPC: Ensure that we honour autoclose before attempting to reconnect 2009-12-03 08:10:17 -05:00
xprtsock.c Merge branch 'nfs-for-2.6.33' 2009-12-13 13:56:27 -05:00