From owner-freebsd-hackers@FreeBSD.ORG Thu Dec 10 16:19:10 2009 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id ECB431065670 for ; Thu, 10 Dec 2009 16:19:10 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-iw0-f198.google.com (mail-iw0-f198.google.com [209.85.223.198]) by mx1.freebsd.org (Postfix) with ESMTP id 7A2738FC19 for ; Thu, 10 Dec 2009 16:19:10 +0000 (UTC) Received: by iwn36 with SMTP id 36so5480840iwn.3 for ; Thu, 10 Dec 2009 08:19:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:message-id:subject:from:to:cc :content-type:content-transfer-encoding; bh=ICxv3M22DUOz9WFmFMGiXsEafp+RcGk1Jv1diBeQWKw=; b=F6AayjJ1tpfa5QvoqrdjDgUXat9aSu7tLQ7XeV3ax5viJNL/5XHRMUoZ835GIGHocI 5l3xAvoyhtFE+N3e25XQ441BufV3Y0KtbWRWlt86jVAbC5pacFQghNKrAXNghzRH4Hrz Jo/gtbo2T/Pz/bsc/YEG39dpqmjVawrVGh4K4= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=UQLfU6+X2Iqt/SbC5mpaP04OYIfJCSdEgdeCpp8S88zn0sVfcPIlQjYsEQ7B/dov9b HE9honhLWXr0k8ai6XQbOsoBXWhOUTQMFvuNvTd2UMgWGhw1ns0o4RkkKEU65yw4X3Qw J2avr/3RMIod9BKgy7mzuBGTODdPLnGqj2jSg= MIME-Version: 1.0 Sender: adrian.chadd@gmail.com Received: by 10.231.167.204 with SMTP id r12mr51088iby.31.1260461949963; Thu, 10 Dec 2009 08:19:09 -0800 (PST) In-Reply-To: <237c27100912100723u77c5dd2udbcd3732ed9ee6a@mail.gmail.com> References: <237c27100911260714x2fcb194ew1e6ce11e764efd08@mail.gmail.com> <200912090907.33433.jhb@freebsd.org> <20091210145052.GX20668@cicely7.cicely.de> <237c27100912100723u77c5dd2udbcd3732ed9ee6a@mail.gmail.com> Date: Fri, 11 Dec 2009 00:19:09 +0800 X-Google-Sender-Auth: 0d602fdaf62e4d60 Message-ID: From: Adrian Chadd To: Linda Messerschmidt Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: freebsd-hackers@freebsd.org Subject: Re: Superpages on amd64 FreeBSD 7.2-STABLE X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 10 Dec 2009 16:19:11 -0000 Depending upon the IPC method being used, the fork() may be followed with calls to socket() and connect(), which may take a while. The main process will stall if you have a busy proxy and there's some temporary shortage of something which makes connect() take longer than usual, the main process will stall, potentially causing the shortage to become worse. 2c, Adrian (With his (ex-, kinda) Squid hacker hat on.) 2009/12/10 Linda Messerschmidt : > Also... > > On Thu, Dec 10, 2009 at 9:50 AM, Bernd Walter w= rote: >> I use fork myself, because it is easier sometimes, but people writing >> big programms such as squid should know better. >> If squid doesn't use vfork they likely have a reason. > > Actually they are probably going to switch to vfork(). =A0They were > previously not using it because they thought there was some ambiguity > about whether it was going to be around long term. > > I actually am not a huge fan of vfork() since it stalls the parent > process until the child exec()'s. > > To me, this case actually highlights why that's an issue. =A0If the > explanation is that stuff is happening in the parent process between > fork() and the child's exec() causes the fragmentation, that's stuff > that would be deferred in a vfork() regime, with unknown potential > consequences. =A0(At a minimum, decreased performance.) > > But that's personal and largely uninformed opinion. :) > _______________________________________________ > freebsd-hackers@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-hackers > To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org= " >