From owner-freebsd-bugs Tue May 11 11: 0:17 1999 Delivered-To: freebsd-bugs@freebsd.org Received: from luke.pmr.com (luke.pmr.com [207.170.114.132]) by hub.freebsd.org (Postfix) with ESMTP id 934C615574; Tue, 11 May 1999 11:00:11 -0700 (PDT) (envelope-from bob@luke.pmr.com) Received: (from bob@localhost) by luke.pmr.com (8.9.3/8.9.2) id NAA29220; Tue, 11 May 1999 13:00:04 -0500 (CDT) (envelope-from bob) Date: Tue, 11 May 1999 13:00:04 -0500 From: Bob Willcox To: Pierre Beyssac Cc: Bob Willcox , freebsd-bugs@freebsd.org, FreeBSD-gnats-submit@freebsd.org Subject: Re: kern/10872: Panic in sorecieve() Message-ID: <19990511130004.A29148@luke.pmr.com> Reply-To: Bob Willcox References: <19990511185956.A12679@enst.fr> <19990511124117.A28606@luke.pmr.com> <19990511195311.R427@enst.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.1i In-Reply-To: <19990511195311.R427@enst.fr>; from Pierre Beyssac on Tue, May 11, 1999 at 07:53:11PM +0200 Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Tue, May 11, 1999 at 07:53:11PM +0200, Pierre Beyssac wrote: > 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. I have just updated my -current test system (cvsuped as of this morning) and will see if I can still reproduce it there. If so I will try changing the maxusers to see if that has any effect. > > > 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. Good. :-) > -- > Pierre Beyssac pb@enst.fr -- Bob Willcox The man who follows the crowd will usually get no bob@luke.pmr.com further than the crowd. The man who walks alone is Austin, TX likely to find himself in places no one has ever been. -- Alan Ashley-Pitt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message