From owner-freebsd-current Wed Dec 24 23:52:58 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id XAA28013 for current-outgoing; Wed, 24 Dec 1997 23:52:58 -0800 (PST) (envelope-from owner-freebsd-current) Received: from implode.root.com (implode.root.com [198.145.90.17]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id XAA28007 for ; Wed, 24 Dec 1997 23:52:54 -0800 (PST) (envelope-from root@implode.root.com) Received: from implode.root.com (localhost [127.0.0.1]) by implode.root.com (8.8.5/8.8.5) with ESMTP id XAA17244; Wed, 24 Dec 1997 23:54:07 -0800 (PST) Message-Id: <199712250754.XAA17244@implode.root.com> To: Julian Elischer cc: Gary Palmer , current@freebsd.org Subject: Re: crash (in networking code?) In-reply-to: Your message of "Wed, 24 Dec 1997 23:44:54 PST." From: David Greenman Reply-To: dg@root.com Date: Wed, 24 Dec 1997 23:54:07 -0800 Sender: owner-freebsd-current@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >> The problem might be fixed with the attached diff. I have also committed >> this in rev 1.37 of in_pcb.c. >> >> -DG >Is the aim of this change, to move the MALLOC out of the splnet() >region? No. The purpose is to do the potentially blocking malloc first. >I would have thought this was safe. What is the failure mode? (I am not >saying it's not a problem, just that I don't understand it..) The cached PCB pointer (inp) becomes stale if malloc blocks. -DG David Greenman Core-team/Principal Architect, The FreeBSD Project