Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/nfs nfs_rcvunlock: don't wake up all waiters.
details: https://anonhg.NetBSD.org/src/rev/886909aebd92
branches: trunk
changeset: 759840:886909aebd92
user: yamt <yamt%NetBSD.org@localhost>
date: Fri Dec 17 22:22:00 2010 +0000
description:
nfs_rcvunlock: don't wake up all waiters.
diffstat:
sys/nfs/nfs_socket.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diffs (40 lines):
diff -r 3843eeb5a296 -r 886909aebd92 sys/nfs/nfs_socket.c
--- a/sys/nfs/nfs_socket.c Fri Dec 17 22:08:18 2010 +0000
+++ b/sys/nfs/nfs_socket.c Fri Dec 17 22:22:00 2010 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: nfs_socket.c,v 1.187 2010/03/02 23:19:09 pooka Exp $ */
+/* $NetBSD: nfs_socket.c,v 1.188 2010/12/17 22:22:00 yamt Exp $ */
/*
* Copyright (c) 1989, 1991, 1993, 1995
@@ -39,7 +39,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nfs_socket.c,v 1.187 2010/03/02 23:19:09 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nfs_socket.c,v 1.188 2010/12/17 22:22:00 yamt Exp $");
#ifdef _KERNEL_OPT
#include "opt_nfs.h"
@@ -906,10 +906,12 @@
* receive lock.
*/
if (rep->r_mrep != NULL) {
+ cv_signal(&nmp->nm_rcvcv);
error = EALREADY;
break;
}
if (nfs_sigintr(rep->r_nmp, rep, rep->r_lwp)) {
+ cv_signal(&nmp->nm_rcvcv);
error = EINTR;
break;
}
@@ -944,7 +946,7 @@
if ((nmp->nm_iflag & NFSMNT_RCVLOCK) == 0)
panic("nfs rcvunlock");
nmp->nm_iflag &= ~NFSMNT_RCVLOCK;
- cv_broadcast(&nmp->nm_rcvcv);
+ cv_signal(&nmp->nm_rcvcv);
mutex_exit(&nmp->nm_lock);
}
Home |
Main Index |
Thread Index |
Old Index