Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:48246 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 23224 invoked from network); 7 May 2010 05:53:02 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 7 May 2010 05:53:02 -0000 Authentication-Results: pb1.pair.com header.from=bnagwani@juniper.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=bnagwani@juniper.net; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain juniper.net from 64.18.2.219 cause and error) X-PHP-List-Original-Sender: bnagwani@juniper.net X-Host-Fingerprint: 64.18.2.219 exprod7og116.obsmtp.com Linux 2.5 (sometimes 2.4) (4) Received: from [64.18.2.219] ([64.18.2.219:38548] helo=exprod7og116.obsmtp.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 21/7B-54092-CBAA3EB4 for ; Fri, 07 May 2010 01:53:01 -0400 Received: from source ([66.129.224.36]) (using TLSv1) by exprod7ob116.postini.com ([64.18.6.12]) with SMTP ID DSNKS+OqurLqPY2hLFjzO8x7JDtYEuC/Pkgk@postini.com; Thu, 06 May 2010 22:53:01 PDT Received: from EMBX02-HQ.jnpr.net ([fe80::18fe:d666:b43e:f97e]) by P-EMHUB02-HQ.jnpr.net ([fe80::88f9:77fd:dfc:4d51%11]) with mapi; Thu, 6 May 2010 22:49:26 -0700 To: "internals@lists.php.net" Date: Thu, 6 May 2010 22:49:22 -0700 Thread-Topic: PHP upgrade from 5.2.3 to 5.3.2 Thread-Index: AcrqtH3PWY0xl7GuRIO0AC1W1xLVFwAAd4twAEg6cbAAAnpoYAA9R0gAADSDDSA= Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: multipart/alternative; boundary="_000_DBDEC20E6E29304D8AE5EAA493609B355743F9611EEMBX02HQjnprn_" MIME-Version: 1.0 Subject: PHP upgrade from 5.2.3 to 5.3.2 From: bnagwani@juniper.net (Bharat Nagwani) --_000_DBDEC20E6E29304D8AE5EAA493609B355743F9611EEMBX02HQjnprn_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hello php experts, We are doing php upgrade from 5.2.3 to 5.3.2 (unix on Octeon/MIPS) and gett= ing a compilation error * Issue with Octeon platform o Round() API throws "Maximum execution time exceeded" error. Analyz= ed the issue and Found the problem to be that "mult" function (src/dist/php= /Zend/zend_strtod.c) is being called indefinitely from "pow5mult" function = (src/dist/php/Zend/zend_strtod.c). It might be some problem with byte alig= nment on this platform. * We have filed a bug o http://bugs.php.net/bug.php?id=3D51701 - "Maximum execution time= exceeded" error with round() API on octeon platform Any idea about this Here is a response from one of our platform developers after doing some ana= lysis In pow5mult(): ------------------------ for(;;) { if (k & 1) { b1 =3D mult(b, p5); Bfree(b); b =3D b1; } if (!(k >>=3D 1)) { break; } if (!(p51 =3D p5->next)) { if (!(p51 =3D p5->next)) { p51 =3D p5->next =3D mult(p5,p5); p51->next =3D 0; } } p5 =3D p51; } ------------------- As it is suspected that mult is being called continuously from pow5mult: do= we know: 1. How b and p5 are changing over each iteration? 2. If the computation done by mult() in each of these iteration is cor= rect or not? 3. What is the impact of this computation on k? 4. The loop will break only with change in k but I don't see k changin= g here in mult5pow(). Can anyone throw some light on this? Thanks --_000_DBDEC20E6E29304D8AE5EAA493609B355743F9611EEMBX02HQjnprn_--