diff options
Diffstat (limited to 'net/sunrpc/xprt.c')
-rw-r--r-- | net/sunrpc/xprt.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/sunrpc/xprt.c b/net/sunrpc/xprt.c index f8ca0a93454c..7a3999f0a4a2 100644 --- a/net/sunrpc/xprt.c +++ b/net/sunrpc/xprt.c | |||
@@ -477,9 +477,10 @@ int xprt_adjust_timeout(struct rpc_rqst *req) | |||
477 | return status; | 477 | return status; |
478 | } | 478 | } |
479 | 479 | ||
480 | static void xprt_autoclose(void *args) | 480 | static void xprt_autoclose(struct work_struct *work) |
481 | { | 481 | { |
482 | struct rpc_xprt *xprt = (struct rpc_xprt *)args; | 482 | struct rpc_xprt *xprt = |
483 | container_of(work, struct rpc_xprt, task_cleanup); | ||
483 | 484 | ||
484 | xprt_disconnect(xprt); | 485 | xprt_disconnect(xprt); |
485 | xprt->ops->close(xprt); | 486 | xprt->ops->close(xprt); |
@@ -916,7 +917,7 @@ struct rpc_xprt *xprt_create_transport(int proto, struct sockaddr *ap, size_t si | |||
916 | 917 | ||
917 | INIT_LIST_HEAD(&xprt->free); | 918 | INIT_LIST_HEAD(&xprt->free); |
918 | INIT_LIST_HEAD(&xprt->recv); | 919 | INIT_LIST_HEAD(&xprt->recv); |
919 | INIT_WORK(&xprt->task_cleanup, xprt_autoclose, xprt); | 920 | INIT_WORK(&xprt->task_cleanup, xprt_autoclose); |
920 | init_timer(&xprt->timer); | 921 | init_timer(&xprt->timer); |
921 | xprt->timer.function = xprt_init_autodisconnect; | 922 | xprt->timer.function = xprt_init_autodisconnect; |
922 | xprt->timer.data = (unsigned long) xprt; | 923 | xprt->timer.data = (unsigned long) xprt; |