OpenCloudOS-Kernel/net/sunrpc
Trond Myklebust 5d00837b90 SUNRPC: Run rpc timeout functions as callbacks instead of in softirqs
An audit of the current RPC timeout functions shows that they don't really
ever need to run in the softirq context. As long as the softirq is
able to signal that the wakeup is due to a timeout (which it can do by
setting task->tk_status to -ETIMEDOUT) then the callback functions can just
run as standard task->tk_callback functions (in the rpciod/process
context).

The only possible border-line case would be xprt_timer() for the case of
UDP, when the callback is used to reduce the size of the transport
congestion window. In testing, however, the effect of moving that update
to a callback would appear to be minor.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2008-02-25 21:40:44 -08:00
..
auth_gss SUNRPC: Run rpc timeout functions as callbacks instead of in softirqs 2008-02-25 21:40:44 -08:00
xprtrdma SUNPRC: Fix printk format warning 2008-02-10 18:11:22 -05:00
Makefile svc: Add an svc transport class 2008-02-01 16:42:07 -05:00
auth.c Merge branch 'task_killable' of git://git.kernel.org/pub/scm/linux/kernel/git/willy/misc 2008-02-01 11:45:47 +11:00
auth_null.c SUNRPC: cleanup rpc credential cache garbage collection 2007-07-10 23:40:35 -04:00
auth_unix.c SUNRPC: Remove the tk_auth macro... 2007-07-10 23:40:37 -04:00
cache.c SUNRPC: Move exported symbol definitions after function declaration part 2 2008-02-01 17:01:24 -05:00
clnt.c SUNRPC: Convert users of rpc_wake_up_task to use rpc_wake_up_queued_task 2008-02-25 21:40:42 -08:00
rpc_pipe.c Introduce path_put() 2008-02-14 21:13:33 -08:00
rpcb_clnt.c SUNRPC: Run rpc timeout functions as callbacks instead of in softirqs 2008-02-25 21:40:44 -08:00
sched.c SUNRPC: Run rpc timeout functions as callbacks instead of in softirqs 2008-02-25 21:40:44 -08:00
socklib.c SUNRPC: temp var should match return type of xdr_skb_read_actor 2008-01-30 02:05:43 -05:00
stats.c SUNRPC: RPC program information is stored in unsigned integers 2008-02-01 17:01:31 -05:00
sunrpc_syms.c SUNRPC: Move exported symbol definitions after function declaration part 2 2008-02-01 17:01:24 -05:00
svc.c SUNRPC: RPC program information is stored in unsigned integers 2008-02-01 17:01:31 -05:00
svc_xprt.c SUNRPC: Move exported symbol definitions after function declaration part 2 2008-02-01 17:01:24 -05:00
svcauth.c SUNRPC: Move exported symbol definitions after function declaration part 2 2008-02-01 17:01:24 -05:00
svcauth_unix.c SUNRPC: Move exported symbol definitions after function declaration part 2 2008-02-01 17:01:24 -05:00
svcsock.c Wrap buffers used for rpc debug printks into RPC_IFDEBUG 2008-02-21 18:42:29 -05:00
sysctl.c svc: Add /proc/sys/sunrpc/transport files 2008-02-01 16:42:13 -05:00
timer.c SUNRPC: add EXPORT_SYMBOL_GPL for generic transport functions 2007-10-09 17:17:36 -04:00
xdr.c SUNRPC: Use unsigned string lengths in xdr_decode_string_inplace 2008-02-01 16:42:02 -05:00
xprt.c SUNRPC: Run rpc timeout functions as callbacks instead of in softirqs 2008-02-25 21:40:44 -08:00
xprtsock.c SUNRPC: Clean up functions that free address_strings array 2008-01-30 02:06:08 -05:00