Date: Thu, 29 Dec 2011 11:12:59 -0500 From: John Baldwin <jhb@freebsd.org> To: =?windows-1251?b?yu7t/Oru4iDF4uPl7ejp?= <kes-kes@yandex.ru> Cc: Andre Oppermann <andre@freebsd.org>, freebsd-net@freebsd.org, Pawel Jakub Dawidek <pjd@freebsd.org>, freebsd-current@freebsd.org, Kostik Belousov <kostikbel@gmail.com>, Lawrence Stewart <lstewart@freebsd.org> Subject: Re: 9.0-RC1 panic in tcp_input: negative winow. Message-ID: <201112291112.59912.jhb@freebsd.org> In-Reply-To: <1632420869.20111225180133@yandex.ru> References: <20111022084931.GD1697@garage.freebsd.pl> <201112200952.44690.jhb@freebsd.org> <1632420869.20111225180133@yandex.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sunday, December 25, 2011 11:01:33 am =CA=EE=ED=FC=EA=EE=E2 =C5=E2=E3=E5= =ED=E8=E9 wrote: > =C7=E4=F0=E0=E2=F1=F2=E2=F3=E9=F2=E5, John. >=20 > =C2=FB =EF=E8=F1=E0=EB=E8 20 =E4=E5=EA=E0=E1=F0=FF 2011 =E3., 16:52:44: >=20 > JB> On Saturday, December 17, 2011 6:21:27 pm Pawel Jakub Dawidek wrote: > >> On Mon, Dec 12, 2011 at 11:00:23AM -0500, John Baldwin wrote: > >> > An update. I've sent Pawel a testing patch to see if my hypothesis = is correct > >> > (www.freebsd.org/~jhb/patches/tcp_negwin_test.patch). If it is then= I intend > >> > to commit www.freebsd.org/~jhb/patches/tcp_negwin2.patch as the fix. > >>=20 > >> Unfortunately it paniced today. Take a look at: > >>=20 > >> http://people.freebsd.org/~pjd/misc/tcp_panic.jpg >=20 > JB> Ok, the one use case I was worried about is happening regularly befor= e your > JB> panic, so that is good. Can you use gdb to figure out which call to > JB> tcp_output() is actually panic'ing? I wonder if it is this case: >=20 > JB> /* > JB> * Return any desired output. > JB> */ > JB> if (needoutput || (tp->t_flags & TF_ACKNOW)) { > JB> (void) tcp_output(tp); > JB> /* XXX: Debug */ > JB> KASSERT(SEQ_GEQ(tp->rcv_adv, tp->rcv_nxt), > JB> ("tcp_input: negative window after ACK")); >=20 > JB> And if 'needoutput' is true, but TF_ACKNOW is not set, and tcp_output= () decides > JB> to not do anything. I've updated tcp_negwin_test.patch to not panic = if that call > JB> to tcp_output() doesn't actually send a packet. Please re-test. >=20 >=20 > # uname -a > FreeBSD meta-up 9.0-PRERELEASE FreeBSD 9.0-PRERELEASE #4: Sat Dec 24 13:5= 9:20 EET 2011 @:/usr/obj/usr/src/sys/KES_KERN_v10 i386 >=20 > rebooting once per day. Now I compile kernel with debug options. > Can you advice me which and where I find debug info when it will > reboting next time? so I can help to debug problem Are you using the patch at the URL above (tcp_negwin_test.patch)? If not, can you try applying that patch and seeing if you still get any panics? =2D-=20 John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201112291112.59912.jhb>