diff options
author | Ingo Molnar <mingo@elte.hu> | 2006-01-10 05:52:53 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-10 17:01:42 +0100 |
commit | 532347e2bbae9e849816dc7b12a3d0f2c42d4944 (patch) | |
tree | 5705f688cd0cd35684126c66a684492f5344dc0d /net | |
parent | [PATCH] d_instantiate_unique / NFS inode leakage (diff) | |
download | linux-532347e2bbae9e849816dc7b12a3d0f2c42d4944.tar.xz linux-532347e2bbae9e849816dc7b12a3d0f2c42d4944.zip |
[PATCH] nfs: sleep_on() removal
Convert sleep_on() to wait_event_timeout(). Probably safe with the BKL but
could be racy once BKL use in NFS-client is gone.
Acked-by: Trond Myklebust <trond.myklebust@fys.uio.no>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'net')
-rw-r--r-- | net/sunrpc/clnt.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index 5530ac8c6df9..a44da8b3d240 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c @@ -268,7 +268,8 @@ rpc_shutdown_client(struct rpc_clnt *clnt) clnt->cl_oneshot = 0; clnt->cl_dead = 0; rpc_killall_tasks(clnt); - sleep_on_timeout(&destroy_wait, 1*HZ); + wait_event_timeout(destroy_wait, + atomic_read(&clnt->cl_users) > 0, 1*HZ); } if (atomic_read(&clnt->cl_users) < 0) { |