Date: Tue, 11 May 1999 19:53:11 +0200 From: Pierre Beyssac <beyssac@enst.fr> To: Bob Willcox <bob@pmr.com> Cc: freebsd-bugs@freebsd.org, FreeBSD-gnats-submit@freebsd.org Subject: Re: kern/10872: Panic in sorecieve() Message-ID: <19990511195311.R427@enst.fr> In-Reply-To: <19990511124117.A28606@luke.pmr.com>; from Bob Willcox on Tue, May 11, 1999 at 12:41:17PM -0500 References: <19990511185956.A12679@enst.fr> <19990511124117.A28606@luke.pmr.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, May 11, 1999 at 12:41:17PM -0500, Bob Willcox wrote: > fix). The problem as I have seen it is that the mbuf chain pointer (m) > is NULL and so_rcv.sb_cc is not zero. Its as though somewhere either > the mbuf chain pointer gets zapped with NULL or something fails to This can happen when the system is out of mbufs. Sadly there are many places in the kernel where the condition is not trapped at all. How many mbufs does netstat -m report on your system? Maybe I couldn't reproduce it because my kernel is configured with maxusers 128, which yields more mbufs. You can try that as a temporary fix. > properly update so_rcv.sb_cc as mbufs are processed. > > I believe one can expand the KASSERT macro and rewrite the line: > if (m == 0 && so->so_rcv.sb_cc != 0) Oops, you're right. I stupidly looked at so_snd.sb_cc in the debug output, which is 0. I prefer that, it'll probably be easier to fix. -- Pierre Beyssac pb@enst.fr To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19990511195311.R427>