[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: panic: tcp_output REXMT
On Sat, Aug 30, 2008 at 12:30:15PM +0000, Christos Zoulas wrote:
> In article <20080830095555.GB2277%antioche.eu.org@localhost>,
> Manuel Bouyer <bouyer%antioche.eu.org@localhost> wrote:
> >on a netbsd-3 amd64 server I've got this panic (several times now):
> >panic: tcp_output REXMT
> >panic() at netbsd:panic+0x1c8
> >tcp_segsize() at netbsd:tcp_segsize
> >tcp_timer_persist() at netbsd:tcp_timer_persist+0x73
> >softclock() at netbsd:softclock+0x2c9
> >softintr_dispatch() at netbsd:softintr_dispatch+0x99
> >DDB lost frame for netbsd:Xsoftclock+0x2d, trying 0xffffffff8069bcd0
> >Xsoftclock() at netbsd:Xsoftclock+0x2d
> >Does it ring a bell to someone ?
> >I can't make much sense of the stack trace. The panic is in tcp_setpersist()
> >and tcp_timer_persist() is calling tcp_setpersist(); so I guess the
> >tcp_segsize() here is wrong (I can't see from where it would be called in
> >Another path would be tcp_timer_persist()->tcp_output()->tcp_segsize()
> >but then I don't know where tcp_setpersist() is called from.
> >If called from tcp_output(), in both case we either call
> >TCP_TIMER_DISARM(tp, TCPT_REXMT) before or check
> >TCP_TIMER_ISARMED(tp, TCPT_REXMT) == 0.
> >Another theory is that there's a code path arming TCPT_REXMT from
> >above splsoftnet().
> >I didn't see any evidence that this could be fixed in -current.
> >Any idea ?
> I thought that there was a race in the timer reset code that I fixed
> a while ago. I never got that particular panic though.
Would it be this commit ?
date: 2004/03/30 19:58:14; author: christos; state: Exp; lines: +3 -3
Make sure we disarm the persist timer before we arm the rexmit
timer, otherwise there is a tiny window where both timers are
active, and this is not correct according to the comments in the
code. I believe that this is the cause of the to_ticks <= 0 assertion
failure in callout_schedule() that I've been getting.
If so, it's before netbsd-3 was branched ...
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
Main Index |
Thread Index |