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 80857470dc11..4f9a5d9791fb 100644 --- a/net/sunrpc/xprt.c +++ b/net/sunrpc/xprt.c | |||
@@ -479,9 +479,10 @@ int xprt_adjust_timeout(struct rpc_rqst *req) | |||
479 | return status; | 479 | return status; |
480 | } | 480 | } |
481 | 481 | ||
482 | static void xprt_autoclose(void *args) | 482 | static void xprt_autoclose(struct work_struct *work) |
483 | { | 483 | { |
484 | struct rpc_xprt *xprt = (struct rpc_xprt *)args; | 484 | struct rpc_xprt *xprt = |
485 | container_of(work, struct rpc_xprt, task_cleanup); | ||
485 | 486 | ||
486 | xprt_disconnect(xprt); | 487 | xprt_disconnect(xprt); |
487 | xprt->ops->close(xprt); | 488 | xprt->ops->close(xprt); |
@@ -932,7 +933,7 @@ struct rpc_xprt *xprt_create_transport(int proto, struct sockaddr *ap, size_t si | |||
932 | 933 | ||
933 | INIT_LIST_HEAD(&xprt->free); | 934 | INIT_LIST_HEAD(&xprt->free); |
934 | INIT_LIST_HEAD(&xprt->recv); | 935 | INIT_LIST_HEAD(&xprt->recv); |
935 | INIT_WORK(&xprt->task_cleanup, xprt_autoclose, xprt); | 936 | INIT_WORK(&xprt->task_cleanup, xprt_autoclose); |
936 | init_timer(&xprt->timer); | 937 | init_timer(&xprt->timer); |
937 | xprt->timer.function = xprt_init_autodisconnect; | 938 | xprt->timer.function = xprt_init_autodisconnect; |
938 | xprt->timer.data = (unsigned long) xprt; | 939 | xprt->timer.data = (unsigned long) xprt; |