On Thu, Dec 29, 2011 at 11:12:59AM -0500, John Baldwin wrote: > On Sunday, December 25, 2011 11:01:33 am Коньков Евгений wrote: > > Здравствуйте, John. > > > > Вы писали 20 декабря 2011 г., 16:52:44: > > > > 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. > > >> > > >> Unfortunately it paniced today. Take a look at: > > >> > > >> http://people.freebsd.org/~pjd/misc/tcp_panic.jpg > > > > JB> Ok, the one use case I was worried about is happening regularly before 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: > > > > 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")); > > > > 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. > > > > > > # uname -a > > FreeBSD meta-up 9.0-PRERELEASE FreeBSD 9.0-PRERELEASE #4: Sat Dec 24 13:59:20 EET 2011 _at_:/usr/obj/usr/src/sys/KES_KERN_v10 i386 > > > > 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? I applied 1.5 days ago, so far now panics and no other messages. I modified the patch a bit to not panic, but print a message when panic was suppose to happen. This box is too valuable for me to panic it too often. Because there were no debug messages I understand that the scenerio didn't happen yet and not that the problem is fixed, right? -- Pawel Jakub Dawidek http://www.wheelsystems.com FreeBSD committer http://www.FreeBSD.org Am I Evil? Yes, I Am! http://yomoli.com
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:22 UTC