summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2006-01-09 20:52:53 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-10 08:01:42 -0800
commit532347e2bbae9e849816dc7b12a3d0f2c42d4944 (patch)
tree5705f688cd0cd35684126c66a684492f5344dc0d
parente866cfa939de7f52c154a9495eb5767f89abf453 (diff)
downloadlinux-stable-532347e2bbae9e849816dc7b12a3d0f2c42d4944.tar.gz
linux-stable-532347e2bbae9e849816dc7b12a3d0f2c42d4944.tar.bz2
linux-stable-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>
-rw-r--r--net/sunrpc/clnt.c3
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) {