Subject: panic("sbdrop")
To: None <tech-net@netbsd.org>
From: Andreas Oman <andoma@packetfront.com>
List: tech-net
Date: 11/20/2001 17:45:16
I'm currently involved in a project developing a hardware
accelerated router using NetBSD as kernel.

I've a problem with an 1.5V kernel and i would be glad if someone could
give me a hint of why sbdrop() panics. The panic has showed itself a
few times and i cant seem to correlate this crash with other events
on the machine.

The kernel has been a bit modified in order to support the routing
hardware but i havent touched any part of TCP nor the socket code.

Does anyone know anything about this, and/or does anyone know whats
going on (or not going on) ?




(gdb) list *0x116430
0x116430 is in tcp_input (../../../../netinet/tcp_input.c:1281).
1277                                    acked = th->th_ack - tp->snd_una;
1278                                    tcpstat.tcps_rcvackpack++;
1279                                    tcpstat.tcps_rcvackbyte += acked;
1280                                    ND6_HINT(tp);
1281                                    sbdrop(&so->so_snd, acked);

(gdb) list *0xd1140
0xd1140 is in sbdrop (../../../../kern/uipc_socket2.c:714).
709
710             next = (m = sb->sb_mb) ? m->m_nextpkt : 0;
711             while (len > 0) {
712                     if (m == 0) {
713                             if (next == 0)
714                                     panic("sbdrop");
715                             m = next;
716                             next = m->m_nextpkt;
717                             continue;
718                     }