From owner-cvs-all Tue Jul 3 17:50:48 2001 Delivered-To: cvs-all@freebsd.org Received: from beppo.feral.com (beppo.feral.com [192.67.166.79]) by hub.freebsd.org (Postfix) with ESMTP id 281A637B403; Tue, 3 Jul 2001 17:50:43 -0700 (PDT) (envelope-from mjacob@feral.com) Received: from wonky.feral.com (wonky.feral.com [192.67.166.7]) by beppo.feral.com (8.11.3/8.11.3) with ESMTP id f640ogS07737; Tue, 3 Jul 2001 17:50:42 -0700 (PDT) (envelope-from mjacob@feral.com) Date: Tue, 3 Jul 2001 17:50:38 -0700 (PDT) From: Matthew Jacob Reply-To: To: Jake Burkholder Cc: , Subject: Re: cvs commit: src/sys/sys systm.h condvar.h src/sys/kern kern_synch.c kern_condvar.c In-Reply-To: <200107040032.f640Wpi26754@freefall.freebsd.org> Message-ID: <20010703174807.R29024-100000@wonky.feral.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Tue, 3 Jul 2001, Jake Burkholder wrote: > jake 2001/07/03 17:32:51 PDT > > Modified files: > sys/sys systm.h condvar.h > sys/kern kern_synch.c kern_condvar.c > Log: > Implement mwakeup, mwakeup_one, cv_signal_drop and cv_broadcast_drop. > These take an additional mutex argument, which is dropped before any > processes are made runnable. This can avoid contention on the mutex > if the processes would immediately acquire it, and is done in such a > way that wakeups will not be lost. I'm a bit confused by this last statement. Wakeups should never be lost not matter what. I can see that it's possible you could get contention if the cv_signal or wakeup causes a reschedule on another CPU right away. Is there any empirical measurements showing this happening? Don't get me wrong- seems to be a useful variance, but we're starting to look a bit like NT/Win32 here. -matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message