Index: uipc_socket2.c =================================================================== RCS file: /home/ncvs/src/sys/kern/uipc_socket2.c,v retrieving revision 1.137.2.5 diff -u -r1.137.2.5 uipc_socket2.c --- uipc_socket2.c 23 Feb 2005 00:39:17 -0000 1.137.2.5 +++ uipc_socket2.c 28 Feb 2005 22:39:02 -0000 @@ -1129,6 +1129,7 @@ SOCKBUF_UNLOCK(sb); } +#define BIGNUM 10240 /* * Drop data from (the front of) a sockbuf. */ @@ -1139,11 +1140,17 @@ { register struct mbuf *m; struct mbuf *next; + int counter; + + counter = 0; SOCKBUF_LOCK_ASSERT(sb); next = (m = sb->sb_mb) ? m->m_nextpkt : 0; while (len > 0) { + counter++; + if (counter > BIGNUM) + panic("sbdrop_locked: counter 1"); if (m == 0) { if (next == 0) panic("sbdrop"); @@ -1165,6 +1172,9 @@ m = m_free(m); } while (m && m->m_len == 0) { + counter++; + if (counter > BIGNUM) + panic("sbdrop_locked: counter 1"); sbfree(sb, m); m = m_free(m); }