Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Aug 2001 13:46:01 -0500
From:      Alfred Perlstein <bright@mu.org>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/kern kern_condvar.c kern_synch.c src/sys/sys proc.h
Message-ID:  <20010821134601.J81307@elvis.mu.org>
In-Reply-To: <200108211842.f7LIgkp03186@freefall.freebsd.org>; from jhb@FreeBSD.org on Tue, Aug 21, 2001 at 11:42:46AM -0700
References:  <200108211842.f7LIgkp03186@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
* John Baldwin <jhb@FreeBSD.org> [010821 13:42] wrote:
> jhb         2001/08/21 11:42:46 PDT
> 
>   Modified files:
>     sys/kern             kern_condvar.c kern_synch.c 
>     sys/sys              proc.h 
>   Log:
>   - Fix a bug in the previous workaround for the tsleep/endtsleep race.
>     callout_stop() would fail in two cases:
>       1) The timeout was currently executing, and
>       2) The timeout had already executed.
>     We only needed to work around the race for 1).  We caught some instances
>     of 2) via the PS_TIMEOUT flag, however, if endtsleep() fired after the
>     process had been woken up but before it had resumed execution,
>     PS_TIMEOUT would not be set, but callout_stop() would fail, so we
>     would block the process until endtsleep() resumed it.  Except that
>     endtsleep() had already run and couldn't resume it.  This adds a new flag
>     PS_TIMOFAIL to indicate the case of 2) when PS_TIMEOUT isn't set.
>   - Implement this race fix for condition variables as well.

How likely are these sort of fixes going to be able to help
the perceived instability of -current?  Is -current noticeably
unstable or do we just have the usual crowd of people screaming
sort of like what was going on a couple of months ago.

"current is broken"
"no it's not"
"yes it is"
"give me a crashdump"
":P"

etc.
-- 
-Alfred Perlstein [alfred@freebsd.org]
Ok, who wrote this damn function called '??'?
And why do my programs keep crashing in it?

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010821134601.J81307>