From owner-freebsd-ports@FreeBSD.ORG Fri Jan 16 05:18:33 2004 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 32E0F16A4CE for ; Fri, 16 Jan 2004 05:18:33 -0800 (PST) Received: from conure.mail.pas.earthlink.net (conure.mail.pas.earthlink.net [207.217.120.54]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8078E43D55 for ; Fri, 16 Jan 2004 05:18:23 -0800 (PST) (envelope-from mvh@ix.netcom.com) Received: from lsanca1-ar6-4-62-201-084.lsanca1.elnk.dsl.genuity.net ([4.62.201.84] helo=netcom1.netcom.com) by conure.mail.pas.earthlink.net with esmtp (Exim 3.33 #1) id 1AhTrb-00013v-00; Fri, 16 Jan 2004 05:18:15 -0800 Received: from localhost (localhost [127.0.0.1]) by netcom1.netcom.com (Postfix) with ESMTP id 2EFAC55A4; Fri, 16 Jan 2004 05:18:15 -0800 (PST) Received: from netcom1.netcom.com ([127.0.0.1]) by localhost (netcom1.netcom.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 00281-05; Fri, 16 Jan 2004 05:18:09 -0800 (PST) Received: from [127.0.0.1] (localhost [127.0.0.1]) by netcom1.netcom.com (Postfix) with ESMTP id 49BB4557E; Fri, 16 Jan 2004 05:18:09 -0800 (PST) From: Mike Harding To: Alexander Leidinger In-Reply-To: <20040116135404.50f290f2@Magellan.Leidinger.net> References: <20040115233128.BE39954E5@netcom1.netcom.com> <4007D8C6.1030703@ciam.ru> <20040116135404.50f290f2@Magellan.Leidinger.net> Content-Type: text/plain Message-Id: <1074259088.684.49.camel@netcom1.netcom.com> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.5 Date: Fri, 16 Jan 2004 05:18:09 -0800 Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at ix.netcom.com cc: ports@freebsd.org cc: Sergey Matveychuk Subject: Re: perl 5.8 and malloc (and mod_perl) X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 16 Jan 2004 13:18:33 -0000 Short answer - signals have changed for 5.8+, they added "Safe signals" that let you do anything in a signal handler, but this handlers will only be run between Perl byte codes. The old 'unsafe' behavior is available via a switch if you can't handle the latency or rely on the old (unreliable) behavior. See perlipc(1), search for "Deferred Signals". - Mike H. On Fri, 2004-01-16 at 04:54, Alexander Leidinger wrote: > On Fri, 16 Jan 2004 15:27:50 +0300 > Sergey Matveychuk wrote: > > > Alexander Leidinger wrote: > > > I don't know if the situation changed with perl 5.8, but with 5.6 you > > > have to compile with perls malloc if your application makes use of > > > > From lang/perl5.8/Makefile: > > .if defined(WITHOUT_PERL_MALLOC) > > .undef WITH_PERL_MALLOC > > .else > > WITH_PERL_MALLOC= yes > > .endif > > > > WITH_PERL_MALLOC is default. > > Yes, I know. I was referring to the implementation of signal handlers in > perl, not to being perl malloc the default in our perl 5.8 or not. I > don't think this situation has changed, as I can't think of an > implementation which gets it right without disallowing certain perl > language constructs in signal handlers, but I there are people out there > which are smarter than I am, and I don't want to limit their creativity > by saying it's not possible... > > Just a little note: what if a perl application makes use of signal > handlers and at the same time needs a perl without perl malloc... > > Bye, > Alexander.