diff --exclude='*~' -urN 2.6.9-rc4-mm1-RT-U6/net/sunrpc/clnt.c 2.6.9-rc4-mm1-VP-U4-LRT1/net/sunrpc/clnt.c --- 2.6.9-rc4-mm1-RT-U6/net/sunrpc/clnt.c 2004-10-12 09:32:23.000000000 +0200 +++ 2.6.9-rc4-mm1-VP-U4-LRT1/net/sunrpc/clnt.c 2004-10-19 16:16:29.000000000 +0200 @@ -231,7 +231,8 @@ 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) {