diff options
author | Ralf Baechle <ralf@linux-mips.org> | 1997-12-06 23:51:34 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 1997-12-06 23:51:34 +0000 |
commit | 230e5ab6a084ed50470f101934782dbf54b0d06b (patch) | |
tree | 5dd821c8d33f450470588e7a543f74bf74306e9e /net/sunrpc/svcsock.c | |
parent | c9b1c8a64c6444d189856f1e26bdcb8b4cd0113a (diff) |
Merge with Linux 2.1.67.
Diffstat (limited to 'net/sunrpc/svcsock.c')
-rw-r--r-- | net/sunrpc/svcsock.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/net/sunrpc/svcsock.c b/net/sunrpc/svcsock.c index 87a5ed82e..fb6b81db2 100644 --- a/net/sunrpc/svcsock.c +++ b/net/sunrpc/svcsock.c @@ -743,14 +743,18 @@ again: if ((svsk = svc_sock_dequeue(serv)) != NULL) { enable_bh(NET_BH); rqstp->rq_sock = svsk; - svsk->sk_inuse++; + svsk->sk_inuse++; /* N.B. where is this decremented? */ } else { /* No data pending. Go to sleep */ rqstp->rq_sock = NULL; rqstp->rq_wait = NULL; svc_serv_enqueue(serv, rqstp); - current->state = TASK_UNINTERRUPTIBLE; + /* + * We have to be able to interrupt this wait + * to bring down the daemons ... + */ + current->state = TASK_INTERRUPTIBLE; add_wait_queue(&rqstp->rq_wait, &wait); enable_bh(NET_BH); schedule(); |