Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:84374 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 42356 invoked from network); 6 Mar 2015 03:03:25 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 6 Mar 2015 03:03:25 -0000 Authentication-Results: pb1.pair.com header.from=laruence@php.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=xinchen.h@zend.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 209.85.215.51 as permitted sender) X-PHP-List-Original-Sender: xinchen.h@zend.com X-Host-Fingerprint: 209.85.215.51 mail-la0-f51.google.com Received: from [209.85.215.51] ([209.85.215.51:42018] helo=mail-la0-f51.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id EA/00-41399-3F819F45 for ; Thu, 05 Mar 2015 22:03:16 -0500 Received: by lamq1 with SMTP id q1so31951370lam.9 for ; Thu, 05 Mar 2015 19:03:12 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=JQwhNaAKukCYvXSIXSv9ZOaa/FjBcSVczMX+RGg2JHo=; b=m6fD+IpU47Grc+m9Dt0Xqa2nM76o2nmPg73FL9x8oEx44/CFNCxS+NF+7QEp5jU/3d KJxIqxhTEzPxBg/6vsgUDUWSgx/Xim0wc4khZ8HOEFWCUtlHkLipnHqQJ6znWsIHiy5K j/97W8ASrH6qQ02SkpMV7WGyTWH7EQqK7eXatpcIiMalh9MmfyIsiM2liouWEezjiy27 8ZGYM+GW6Cu+xJArSPX5x+IFhsP8y7rTTg2EN0QPSwefZ+oSceGW64qcDvvFtrF6ld5t 71VoaXFP8hRJ1DAviAqj/zJ+9mRBOTYaojmd74Cv7WodzZlD1FlDp+5LcbNyk6ch9cQY LgRw== X-Gm-Message-State: ALoCoQkn07K0TZxj7bhB3SO0CgAWPW1G81C0LjBC8t5GFMXNWGBMWm1ozxaU00UCHHLEePkpN+1NqqaMb86qHziwoxvo86ydHkA6+PAK4+V6EX0fgl11pUg5xWBEo/n1lyuNaDKeVGebKbAu/MbJTXKgDpEC7AdXfg== X-Received: by 10.112.8.101 with SMTP id q5mr4796595lba.19.1425610992364; Thu, 05 Mar 2015 19:03:12 -0800 (PST) Received: from mail-lb0-f177.google.com (mail-lb0-f177.google.com. [209.85.217.177]) by mx.google.com with ESMTPSA id an8sm1554718lbc.45.2015.03.05.19.03.10 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 05 Mar 2015 19:03:11 -0800 (PST) Received: by lbjb6 with SMTP id b6so19779709lbj.9 for ; Thu, 05 Mar 2015 19:03:10 -0800 (PST) X-Received: by 10.112.239.38 with SMTP id vp6mr10662782lbc.48.1425610990431; Thu, 05 Mar 2015 19:03:10 -0800 (PST) MIME-Version: 1.0 Received: by 10.114.82.99 with HTTP; Thu, 5 Mar 2015 19:02:50 -0800 (PST) In-Reply-To: References: Date: Fri, 6 Mar 2015 11:02:50 +0800 Message-ID: To: Pierre Joye Cc: PHP Internals Content-Type: text/plain; charset=UTF-8 Subject: Re: [PHP-DEV] Enable Zend Signals Handler By Default From: laruence@php.net (Xinchen Hui) On Fri, Mar 6, 2015 at 6:31 AM, Pierre Joye wrote: > On Thu, Mar 5, 2015 at 5:27 AM, Xinchen Hui wrote: >> Hey internal: >> >> >> There is also a problem we have been suffering from for a quite >> long time, that is signal raised at OOM/Timeout when execution is in a >> critical area will lead PHP crash or even more big troubles if it is >> in shared memory. >> >> You may still remember we disabled zend signal handlers before >> PHP-5.4 was released because it doesn't work well as mod_apache. which >> is described in #61083. >> >> Zend signal is a good way to fix the problem, thus I did some >> research then fixed zend signals(make it works with apache2handler), >> committed in https://github.com/php/php-src/commit/fd5a756ad44124ffa7e9a5810a31ff49e91708cf >> >> And no obviously performance affects in reallife app(benched with >> wordpress). >> >> Next, We may do some further optimizationes based on that. >> >> For now, I want to make zend signals handler enable by default >> (in configure) for PHP7, or maybe totally removed the >> --enable-zend-signals option? thus make zend_signal.c always be >> compiled and linked. >> >> Is there any concerns or objections on this? > > Generally speaking no, but I would be very careful about the > portability parts here, and not only about windows. Here is the problem, if --enable-zend-signals == no then the whole zend-signals won't be compiled and linked.. I am going to do it in another way. always compile it. but let's make --enable-zend-sgianls means use or not use. thanks > > I would go in two steps, first enable it by default and see which > issues exist on the various supported platforms then once everything > is ready, we can consider removing the setting. But removing it > straight away may force users to simply do not use 7 anymore until > things are fixed, if necessary. > > > -- > Pierre > > @pierrejoye | http://www.libgd.org -- Xinchen Hui @Laruence http://www.laruence.com/