Fwd: [ANNOUNCE] PHP 8.1.6 Released

31 views
Skip to first unread message

Paul Smedley

unread,
May 13, 2022, 8:32:47 PM5/13/22
to eCS ISP Mailing List, Apache HTTP Server for OS/2
Hi All,

Another month, another PHP update.

OS/2 binaries are at: https://smedley.id.au/tmp/php-8.1.6-os2-20220514.zip

OS/2 sources are at: https://github.com/psmedley/php-os2/tree/php-8.1

Thanks once again to Steven for his encouragement to get this code into
github, and for the numerous patches he's provided.

This build does not (yet) include
https://github.com/psmedley/php-os2/pull/13 as it hasn't been tested yet
with PHP 7.4

Note: I don't intend to continue builds for PHP 8.0 - please sing out
if this is a problem.

I'll maintain 7.4.x builds for at least until the end of security fixes.

Cheers,

Paul

-------- Forwarded Message --------
Subject: [ANNOUNCE] PHP 8.1.6 Released
Date: Thu, 12 May 2022 17:07:13 -0500
From: Ben Ramsey <ram...@php.net>
To: php-an...@lists.php.net

The PHP development team announces the immediate availability of PHP
8.1.6. This is a bugfix release.

All PHP 8.1 users are encouraged to upgrade to this version.

For source downloads of PHP 8.1.6 please visit our downloads page.
Windows binaries can be found on the PHP for Windows site.
The list of changes is recorded in the ChangeLog.

Release Announcement: <https://php.net/releases/8_1_6.php>
Downloads: <https://php.net/downloads>
Windows downloads: <https://windows.php.net/download#php-8.1>
Changelog: <https://php.net/ChangeLog-8.php#8.1.6>
Release Manifest:
<https://gist.github.com/ramsey/432fcf8afcbfb1f1de6c3ab47d82e366>

Many thanks to all the contributors and supporters!

Ben Ramsey, Patrick Allaert, & Joe Watkins



php-8.1.6.tar.bz2
SHA256 hash:
7b353304b7407554f70d3e101a226a1fc22decae5c4c42ed270c4e389bfa1b66
PGP signature:
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEObZBND2MEEsrFG3D+cOdwLlphUQFAmJ7DtoACgkQ+cOdwLlp
hUSR1xAAgiMZJGOMMf9fiFR3bFlmYQjRXhQn91JnfeRU+6RR4X5dMGi+3zFAsBZF
TZPXrmhdXDjnQrLmn55NKQV6AiedhdYIgvLtldpI/Pyeq5smHwiqRBj4TA9dCNy1
0mtA8wln9mu5oEgNhOnolZs2zlao6KdHTXJTOtx7yKJzctQpjV08DXsxAXskW841
WR9/fFaQxfbHLqMLDHZuUy5gongT3Q/foVJHeyZdQITKs6TJpuKG7S5i4W1rGOvV
ZRttwxXLv1n4KHJ2a5tVDy3jmpF0lm348VPLl9Pn6ZwbAnYxRrifrcMddRTjHZyy
91YkVsX5Kz6h/QZLgVQLlX1EsFVrrbS1H/f80J3hJJQHlBpE3xvx9Zic56+DJ+iH
h7/st+LTInvTVeFHADGggqxnkOMoY7tCCabJ3BjvBK+GRlta/KHcQmLjzHDz+PQG
VP1Kne40PhMoDnhLhJyKce4kbeEU+dfZwGARhiWNIeBM5ODoD4Vu74pHjnwwPzVK
Ls6R6jHbMkqzg/7mpE0bdbZcA9VVcIPN5ZaHcVqHfJxsAeOGDhGlu+ZCi82H0sP/
ejWyPVKT4sByZRxZv6dNIdIFqC7RkXJGsDVV76Pkz7yAvrh+KjxBRDx1yDm9bq1J
WWw4HZBuCew4XS8x8ub1ORGdjTZJb+C4JYi2jpLJRZrIg8CxeWI=
=VI8D
-----END PGP SIGNATURE-----


php-8.1.6.tar.gz
SHA256 hash:
e847745fd66fc8c57fac993a609fefcded93fddccd225f0620a26bb5ae5753c3
PGP signature:
-----BEGIN PGP SIGNATURE-----

iQIyBAABCAAdFiEEObZBND2MEEsrFG3D+cOdwLlphUQFAmJ7DtsACgkQ+cOdwLlp
hUTLSg/3WlGmwfqyZPP6POwCTEpSOGE8Ydhsn1173fGkj6sH5/pCsrpDUhnPj0Qw
7l5rzgAVg/9yGmQnrc/Qp4/cJ261gl3thUtpPRD/wsEOCG96/V8K2hyExBpZsiAp
s2XEefGmIaAMAmwoLVnAyIwYSbOrujl9obXJ4GUdaPRxkDO8jvV2e8W/W1ASRcwL
Gg1Ev6s4BfDND0F4znJyWHEi6PUMcEO1KjgESdm4GeNOWjEdvH/mVHxp0vDjkG28
GXToEguCOzhZyDuBi6Q/bdMb3bECPjQuFW2EGAQPoGE0ZNRfqavW6fabjvjZQaiG
Yz/sWjRsXOoT6IUjBRewH/h6rgPLFpIMsvPOFS5rsutUjHx9WloW+ceAHoZuZQCZ
Y489fY0SH1f+u6gaa/Dg9JkbXz6Ln3/RiwbfrZJPEO6+yuqgoaZpXSp4VL2F2Qt+
RquKYbe9P6HE2roJoxHoMIpjW1k3Ub2lKC6/UiSRFNCEhCJxeZSbp39p1DXxzAOe
0/SLTEnohhwE2B/tHyFYP1NH5WdLsHXVb8FjqM9V5O/xtnjGcdso9R1JLL/1EHG8
r01D2Gjfrzthzf/bUOtsheWNk0IoaVgImkzg/+iM/X9x5UwXfXwwsBJ1jCeB1Iqk
3D6B3XA7hAo7290uVZ2iHIxpTwfY/onF9e0dTrnhxqezWVeBpw==
=0MRb
-----END PGP SIGNATURE-----


php-8.1.6.tar.xz
SHA256 hash:
da38d65bb0d5dd56f711cd478204f2b62a74a2c2b0d2d523a78d6eb865b2364c
PGP signature:
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEObZBND2MEEsrFG3D+cOdwLlphUQFAmJ7DtsACgkQ+cOdwLlp
hUTtpg/+O6eYKgAWdAVm6Y52fvYuAC2PTogNbPBuC2+IkVv0nIyWn3xuDHmOu89J
d71ApIkXHmpLGVhYOnabuB+TDudCqQibFHJNzONawnUtYcb005L1qqsO8hqH8TdZ
vI1Fm4hJbTQyRgDo3apWqZMTv+U3c9FLLt8s59X4OrPbJO3n5rRR5muDfQNLGCwi
Pi/6dOZ5azKpByOP2zKnSyTqcrirUrEr/5NDuNGpzMRk7tKSR4XTJXm3umiqhV3/
xG57jNWJ9XvUqo/j6RiS3ISA2H5QyY2qtHuTexaZMl6g9tOSDGHJhP5+3etJkxkI
vH7kUZS4nblx/r9NIpg3BIYfpbBnrH1U9XdS0THLK6OihOTyKH0W8Pkb4+BRwUVI
uhku4+5cY9ypPRdyf+GqWBQQHRVL/M9NlCTASjf25IHbs7rb/k+1dsIwfe/FXZZ/
Gnh+OhGE3Vw8qMGf2B+MnppjVMSkJAFOt3T6bh9bi1T81JKPb8uEsToGRMVAefUi
5fFocSgREUa4paimldIS47/pK8hqNbKJ/Ge8VqDFnrZBR3COsEwjqplif/EAWSM5
+2VwXg+8TCHvchLsHDsuCwqPpDWCbFdGLDckO7mzfgq6kP+dNw51roy3jhIUF4Bu
cezeKAqQledHyI0hytu0jYWpk+UY0dzRG4MZGN7knUhFfNyVBG4=
=NnHp
-----END PGP SIGNATURE-----



David McKenna

unread,
May 14, 2022, 10:52:25 AM5/14/22
to Apache for OS/2
Hi Paul,

  Thanks again! I'm having trouble with this one though... first off, the imagick php module prevents the server from starting, so I have to comment it out in php.ini. Then the server starts and serves non-php pages fine, but as soon as I try to go to phpMyAdmin, the server computer locks solid and I have to do a hard reset. Unfortunately there are no error logs created to give you for that.

Regards,

Steven Levine

unread,
May 14, 2022, 2:34:07 PM5/14/22
to apa...@googlegroups.com
In <9fd0931f-e287-4f77...@googlegroups.com>, on 05/14/22
at 07:52 AM, David McKenna <davidmc...@gmail.com> said:

Hi David,

> Thanks again! I'm having trouble with this one though... first off, the
> imagick php module prevents the server from starting, so I have to
>comment it out in php.ini. Then the server starts and serves non-php
>pages fine, but as soon as I try to go to phpMyAdmin, the server
>computer locks solid and I have to do a hard reset. Unfortunately there
>are no error logs created to give you for that.

Have you tried any simple tests? Here's some from my testcase collection:

php --version
php --help
php -i |& less
php --ini |& less
php -r "echo 'Sign of life';"
echo `<?php echo 'Sign of life'; ?>` | php

php -B "echo 'Sign of life';"
php -c. -r "printf('%%x', rand());"

This will help tell us if your problem is in the basic engine or int the
modphp interface.

I've been otherwise occupied this morning so 8.1.6 is not yet installed
here.

Steven

--
----------------------------------------------------------------------
"Steven Levine" <ste...@earthlink.net> Warp/DIY/BlueLion etc.
www.scoug.com www.arcanoae.com www.warpcave.com
----------------------------------------------------------------------

Steven Levine

unread,
May 14, 2022, 2:57:59 PM5/14/22
to apa...@googlegroups.com
In <9fd0931f-e287-4f77...@googlegroups.com>, on 05/14/22
at 07:52 AM, David McKenna <davidmc...@gmail.com> said:

Hi David,

Did a quick 8.1.6 install and most of the basic tests seem to work

>php -c. -f mysql_shl.php
Notice: PHP Startup: update_beginlibpath set BEGINLIBPATH to
modules\;%BEGINLIBP ATH% in Unknown on line 0
Connected successfully
Select returned 271 rows

I have to suspect we have an issue in the modphp.dll.

David McKenna

unread,
May 14, 2022, 3:37:30 PM5/14/22
to Apache for OS/2
Hi Steven,

  Yes, you are probably right. I tried those commands you posted and everything worked on the command line just as you show. But trying to get to any of phpMyAdmin, or Wordpress, or FileGator thru a web interface and it's a deep freeze...

Regards,

Steven Levine

unread,
May 14, 2022, 5:24:01 PM5/14/22
to apa...@googlegroups.com
In <5fbc3683-401b-453e...@googlegroups.com>, on 05/14/22
at 12:37 PM, David McKenna <davidmc...@gmail.com> said:

Hi,

> Yes, you are probably right. I tried those commands you posted and
>everything worked on the command line just as you show. But trying to get
> to any of phpMyAdmin, or Wordpress, or FileGator thru a web interface
>and it's a deep freeze...

Freezes are unusual.

Does something simplier like phpinfo.php freeze too:

<html>
<head>
<title>PHP Info</title>
</head>
<body>
Here's your php info
<p>
<?php
phpinfo();
?>
</body>
</html>

8.1.6 does not appear have all the patches we applied to php 7.4.28. We
shall see what Paul has to say when he awakes. He's an early riser, but
it is Sunday down there.

David McKenna

unread,
May 14, 2022, 5:49:49 PM5/14/22
to Apache for OS/2
Hi Steven,

 Your simple php script works here with php 8.1.6 from a web browser (Dooble). Maybe the issue is deeper than modphp.dll?

Regards,

David McKenna

unread,
May 14, 2022, 5:59:09 PM5/14/22
to Apache for OS/2
 Also - I have to stand corrected, FileGator works fine with 8.1.6, but Wordpress and phpMyAdmin freeze the machine. Maybe one of the php modules is causing this?

Regards,

Paul Smedley

unread,
May 14, 2022, 6:01:19 PM5/14/22
to apa...@googlegroups.com
Hey Dave!

On 15/5/22 00:22, David McKenna wrote:
> Hi Paul,
>
>   Thanks again! I'm having trouble with this one though... first off,
> the imagick php module prevents the server from starting, so I have to
> comment it out in php.ini. Then the server starts and serves non-php
> pages fine, but as soon as I try to go to phpMyAdmin, the server
> computer locks solid and I have to do a hard reset. Unfortunately there
> are no error logs created to give you for that.
Uggh.I did say I only did simple tests :( Things like test.php (which
calls phpinfo()) are fine, but I just got a 100% CPU loop trying
phpmyadmin.

Time to go hunting.....Sorry for the hassle :(

Cheers,

Paul

Paul Smedley

unread,
May 14, 2022, 6:06:17 PM5/14/22
to apa...@googlegroups.com
Hi Steven,
7:34am here ;) This should have all the patches excepting the latest
ones to reduce memory usage as those aren't fully tested yet.

phpinfo() is fine - perhaps the merge in git didn't go as planned. I'll
do some digging today.

Cheers,

Paul

David McKenna

unread,
May 14, 2022, 6:12:43 PM5/14/22
to Apache for OS/2
Hi Paul,

  No hassle at all! I'm glad to help with testing - it's the least I can do (and probably the most too since no coding skills [yet]). I'm also glad you see the same issue...

Regards,

Paul Smedley

unread,
May 14, 2022, 10:40:55 PM5/14/22
to apa...@googlegroups.com
Hey guys,

https://smedley.id.au/tmp/php-8.1.6-os2-20220515.zip seems to work
better. This is built from the original 8.1.5 patches, rather than from
what's in github. Importantly, this has none of the additional fixes
from Steven.

Next step is to work out what's different.

Cheers,

Paul
> --
> You received this message because you are subscribed to the Google
> Groups "Apache for OS/2" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to apache2+u...@googlegroups.com
> <mailto:apache2+u...@googlegroups.com>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/apache2/c2bbb999-23bd-4385-88fd-7b793eeef091n%40googlegroups.com
> <https://groups.google.com/d/msgid/apache2/c2bbb999-23bd-4385-88fd-7b793eeef091n%40googlegroups.com?utm_medium=email&utm_source=footer>.

Paul Smedley

unread,
May 15, 2022, 2:44:38 AM5/15/22
to apa...@googlegroups.com
I think I found the issue, rebuilding git version now.

Steven Levine

unread,
May 15, 2022, 3:02:02 AM5/15/22
to apa...@googlegroups.com
In <e0caaf61-7d0d-c7a5...@smedley.id.au>, on 05/15/22
at 12:10 PM, Paul Smedley <pa...@smedley.id.au> said:

Hi Paul,

>https://smedley.id.au/tmp/php-8.1.6-os2-20220515.zip seems to work
>better. This is built from the original 8.1.5 patches, rather than from
>what's in github. Importantly, this has none of the additional fixes
>from Steven.

This is probably just as well. I've been slowly reverting the 7.4.28
patches that turned out not to be helpful. Eventually will will want the
BEGINLIBPATH patch and the final version of the zend_mm_chunk_alloc_int
patch.

I'm doubtful that the patches that attempt to turn an out of memory
condition into a clean php termination will ever work really well. This
would require additional non-trivial rework to the php error reporting
components. They all assume memory is available so that buffers can be
allocated to hold the error reports.

Paul Smedley

unread,
May 15, 2022, 3:27:07 AM5/15/22
to apa...@googlegroups.com

Hey guys,

On 15/5/22 16:22, Steven Levine wrote:
> In <e0caaf61-7d0d-c7a5...@smedley.id.au>, on 05/15/22
> at 12:10 PM, Paul Smedley <pa...@smedley.id.au> said:
>
> Hi Paul,
>
>> https://smedley.id.au/tmp/php-8.1.6-os2-20220515.zip seems to work
>> better. This is built from the original 8.1.5 patches, rather than from
>> what's in github. Importantly, this has none of the additional fixes
>>from Steven.
>
> This is probably just as well. I've been slowly reverting the 7.4.28
> patches that turned out not to be helpful. Eventually will will want the
> BEGINLIBPATH patch and the final version of the zend_mm_chunk_alloc_int
> patch.
>
> I'm doubtful that the patches that attempt to turn an out of memory
> condition into a clean php termination will ever work really well. This
> would require additional non-trivial rework to the php error reporting
> components. They all assume memory is available so that buffers can be
> allocated to hold the error reports.

https://smedley.id.au/tmp/php-8.1.6-os2-20220515b.zip is built from git
again.

@Steven - remember the query last week about:
#ifndef __OS2__ /* workaround libcx bug */
zend_mm_munmap(ptr, offset);
#endif

I still had:
//#ifndef __OS2__ /* workaround libcx bug */
zend_mm_munmap(ptr, offset);
//#endif

Which was causing the 100% CPU usage <facepalm>.

Cheers,

Paul

Paul Smedley

unread,
May 15, 2022, 3:35:39 AM5/15/22
to apa...@googlegroups.com

David McKenna

unread,
May 15, 2022, 7:09:21 AM5/15/22
to Apache for OS/2
Hi Paul,

  This one seems to work - thanks! While editing a page in Wordpress, Apache crashed with errors that look like a problem in Imagick.

php log:
[15-May-2022 10:49:55 UTC] PHP Warning:  Version warning: Imagick was compiled against ImageMagick version 1636 but version 1673 is loaded. Imagick will run but may behave surprisingly in Unknown on line 0

apache log:
Assertion failed: memory_info->signature == MagickSignature, file magick/memory.c, line 1021

Killed by SIGABRT
pid=0x0141 ppid=0x013e tid=0x0003 slot=0x00c6 pri=0x0200 mc=0x0001 ps=0x0010
C:\PROGRAMS\APACHE24\BIN\HTTPD.EXE
Creating 0141_03.TRP
Moved 0141_03.TRP to C:\var\log\app\6280a2b7-0141_03-HTTPD-exceptq.txt
[Sun May 15 06:50:31.143000 2022] [mpm_mpmt_os2:error] [pid 320:tid 1] (OS 105)The previous ownership of this semaphore has ended. : Sem owner died pidSemaphoreOwner = 321, tidSemaphoreOwner = 1, ulRequestCount = 1 rc = 105 at ap_mpm_child_main #0
[Sun May 15 06:50:31.145000 2022] [mpm_mpmt_os2:error] [pid 320:tid 1] (OS 105)The previous ownership of this semaphore has ended. : AH00194: apr_socket_accept
[Sun May 15 06:50:31.213000 2022] [mpm_mpmt_os2:error] [pid 318:tid 1] (OS 105)The previous ownership of this semaphore has ended. : Sem owner died pidSemaphoreOwner = 321, tidSemaphoreOwner = 1, ulRequestCount = 1l
[Sun May 15 06:50:31.213000 2022] [mpm_mpmt_os2:notice] [pid 318:tid 1] AH00201: caught SIGTERM, shutting down

 I have what I believe is your most recent version of Image Magick (6.8.9-8-os2-20141015) but maybe not? I'll also attach the exceptq file.
6280a2b7-0141_03-HTTPD-exceptq.txt

Steven Levine

unread,
May 15, 2022, 6:49:45 PM5/15/22
to apa...@googlegroups.com
In <6e46d469-4e8b-69a6...@smedley.id.au>, on 05/15/22
at 04:56 PM, Paul Smedley <pa...@smedley.id.au> said:

Hi Paul,


>I still had:
>//#ifndef __OS2__ /* workaround libcx bug */
> zend_mm_munmap(ptr, offset);
>//#endif

>Which was causing the 100% CPU usage <facepalm>.

Oops. That will do it. I was wondering why this mattered, until I
realized you had not yet merged all of the zend_mm_chunk_alloc_int patches
yet. With the patches in place, I don't think you would have ever reached
the hanging code.

I've added a calendar item to build a testcase for this. It is going to
wait for a day when I don't mind rebooting the system a few times.

Steven Levine

unread,
May 15, 2022, 7:04:48 PM5/15/22
to apa...@googlegroups.com
In <3da9a56a-5b55-4659...@googlegroups.com>, on 05/15/22
at 04:09 AM, David McKenna <davidmc...@gmail.com> said:

Hi David,

> This one seems to work - thanks! While editing a page in Wordpress,
>Apache crashed with errors that look like a problem in Imagick.

Yes, it does.

This is an odd one. It appears that after the initial exception near:

DavidM-2022-05-15-6280a2b7-0141_03-HTTPD-exceptq.txt:601
029DFD98 1E434D69 LIBCN0 0001:00074D69 free.c#19 __std_free + 19
0001:00074D50 (free.obj)
029DFDA8 BB6FC551 MAGICK 0001:0042C551
029DFDB8 BB4374D5 MAGICK 0001:001674D5

the exceptions cascaded until the stack overflowed and then libc got
involved. We have:

DavidM-2022-05-15-6280a2b7-0141_03-HTTPD-exceptq.txt:49
Size Base ESP Max Top
00010000 029E0000 -> 029DA7B4 -> 029D3000 -> 029D0000

and it's never a good thing when ESP is less than Base.

Since that last thing ImageMagik did was call free, heap corruption is a
likely problem.
Reply all
Reply to author
Forward
0 new messages