From owner-freebsd-bugs Tue May 11 10: 0: 4 1999 Delivered-To: freebsd-bugs@freebsd.org Received: from enst.enst.fr (enst.enst.fr [137.194.2.16]) by hub.freebsd.org (Postfix) with ESMTP id DE0E0157FB; Tue, 11 May 1999 09:59:57 -0700 (PDT) (envelope-from beyssac@enst.fr) Received: from bofh.enst.fr (bofh.enst.fr [137.194.32.191]) by enst.enst.fr (8.9.1a/8.9.1) with ESMTP id SAA20871; Tue, 11 May 1999 18:59:56 +0200 (MET DST) Received: by bofh.enst.fr (Postfix, from userid 12426) id 0BCC0D226; Tue, 11 May 1999 18:59:56 +0200 (CEST) Message-ID: <19990511185956.A12679@enst.fr> Date: Tue, 11 May 1999 18:59:56 +0200 From: Pierre Beyssac To: freebsd-bugs@freebsd.org, bob@pmr.com Cc: FreeBSD-gnats-submit@freebsd.org Subject: Re: kern/10872: Panic in sorecieve() Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.93.2i Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org I was looking into PR kern/10872, hoping to find an easily fixable occurence of NULL mbuf pointer. But it doesn't seem to be. It's labelled "Panic in sorecieve() due to NULL mbuf pointer", but from the debug data filed with the PR it seems the actual problem is with so_rcv.sb_cc being 0, which triggers a KASSERT in uipc_socket.c: if (m == 0 || (((flags & MSG_DONTWAIT) == 0 && so->so_rcv.sb_cc < uio->uio_resid) && (so->so_rcv.sb_cc < so->so_rcv.sb_lowat || ((flags & MSG_WAITALL) && uio->uio_resid <= so->so_rcv.sb_hiwat)) && m->m_nextpkt == 0 && (pr->pr_flags & PR_ATOMIC) == 0)) { KASSERT(m != 0 || !so->so_rcv.sb_cc, ("receive 1")); (more data can be found in the PR) I can't seem to be able to reproduce the problem on -current with the script provided by Bob, and I don't have a -stable box to try it on either. Plus, I don't have (yet) much of a clue regarding the semantics of sb_cc. I continue investigating this stuff, but if anyone has more clue than I have, he's welcome to send me some directions to look into :-) -- Pierre Beyssac pb@enst.fr To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message