Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/sys/netinet



On Tue, Nov 11, 2008 at 11:41:59AM +0000, Andrew Doran wrote:
> On Sun, Nov 09, 2008 at 06:35:33PM +0100, Christoph Egger wrote:
> 
> > > Log Message:
> > > Fix kern/39769: race condition in TCP timers
> > > When a TCP timer is disarmed (with callout_stop()) in the general case
> > > callout_invoking() isn't checked, so the timer handler could be called run
> > > when the current interrupt handler exits, athough the timer is disarmed.
> > > This case cause bad things like TCPT_REXMT and TCPT_PERSIST being both 
> > > pending,
> > > causing a panic (see the PR for details).
> > > Close the issue by aborting the handler if the timer is not 
> > > callout_expired().
> > > (the EXPIRED flag being cleared by callout_stop()).
> > 
> > Does this also fix PR 39655 (the TCP part) ?
> 
> That should have been fixed by the last commits I made to tcp_subr.c.
> Do you still see the problem?

You mean PR 39655 I guess ? My commit is more general than PR 39655
(see the details in kern/39769).

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index