Our PHP 5.x package is getting old
Dagobert Michelsen
dam at opencsw.org
Wed Apr 2 15:17:19 CEST 2014
Hi James,
Am 31.03.2014 um 11:41 schrieb James Lee <james at opencsw.org>:
> On 27/03/2014 08:59, Dagobert Michelsen wrote:
>>
>>> dam at unstable10s [unstable10s]:/home/dam/mgar/pkg/php5/branches/php-5.5.x/work/solaris10-sparc/build-isa-sparcv8plus-sapi-cgi/php-5.5.10 > pstack core
>>> core 'core' of 16636: /home/dam/mgar/pkg/php5/branches/php-5.5.x/work/solaris10-sparc/build-
>>> 000a6500 compare_opcodes (c1d7ad, 0, ffbfe5b8, ffbfd3d8, c1d789, c1d7ad) + 1178
>>> 000a6944 auto_possessify (c1d767, 0, ffbfe5b8, 64, ffbfd3d8, 661eb4) + 284
>>> 000b0114 php_pcre_compile2 (b9, 0, 20000, 0, c1d6c0, 96372c) + d90
>>> 000d4138 pcre_get_compiled_regex_cache (a5e4ac, 2f, 2f, 2f, 0, 961064) + 444
>>> 000d4680 php_do_pcre_match (3, dde418, ffbfe770, 961064, ffbfe774, 0) + 7c
>>> 005acaa0 zend_do_fcall_common_helper_SPEC (9ee560, 100, 100, 961064, d646cc, 9e4798) + 320
>>> 005ac448 execute_ex (9ee560, 9e45f0, 1, 961064, 8358c, 0) + 3c
>>> 00533ce4 zend_execute_scripts (8, 0, ffbff3c8, 1, 9e4714, ffbfe8ac) + 678
>>> 0043eb94 php_execute_script (9e4f30, ffbff3c8, 9e4f30, 961064, 1, 83c00) + 32c
>>> 005ff608 do_cli (961064, 8, 0, 83c00, 961064, 83c00) + d3c
>>> 00600684 main (10, ffbff674, ffbff6b8, 963000, 96be44, 96be44) + 660
>>> 0004d9c0 _start (0, 0, 0, 0, 0, 0) + 108
>> Everything is committed, if you have a great idea let me know.
>
> PHP build adds -xmemalign=8s to the compile options. The 's' says throws a bus error if a memory misalignment is detected. The 'i' xmemalign option say to me it will work but might be slower.
>
> The misalignment is in compare_opcodes which is part of prce 8.34 and the misalignment is right after the comment "Compare 4 bytes to improve speed". What it's doing is:
>
> function(char *cp)
> {
> int *ip;
> ip = (int *) cp;
> ... *ip ...; // handle in 4 byte chucks
>
> which is not 8 byte aligned when "cp % 8 != 0". On the Sparc and Intel chips I've tested it doesn't seem to make a difference but it must depends on the chip design and perhaps there are some where the speed difference is greater.
>
> Workaround: remove or change to 'i' xmemalign from PHP's configure:
> sparc*)
> if test "$SUNCC" = "yes"; then
> CFLAGS="$CFLAGS -xmemalign=8s"
> fi
>
>
> Fix:
> http://bugs.exim.org/show_bug.cgi?id=1427
Thanks a lot for the detailed analysis! The install now passes after patching configure,
I can proceed now to the packaging issues.
Best regards
— Dago
--
"You don't become great by trying to be great, you become great by wanting to do something,
and then doing it so hard that you become great in the process." - xkcd #896
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2418 bytes
Desc: not available
URL: <http://lists.opencsw.org/pipermail/maintainers/attachments/20140402/25f6332a/attachment.p7s>
More information about the maintainers
mailing list