php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #77170 Thread safety is always enabled
Submitted: 2018-11-17 22:45 UTC Modified: 2021-04-20 13:18 UTC
Votes:4
Avg. Score:3.8 ± 0.8
Reproduced:3 of 3 (100.0%)
Same Version:0 (0.0%)
Same OS:1 (33.3%)
From: mimipim at abv dot bg Assigned: cmb (profile)
Status: Not a bug Package: *Compile Issues
PHP Version: 7.1.24 OS: Ubuntu 16.04
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: mimipim at abv dot bg
New email:
PHP Version: OS:

 

 [2018-11-17 22:45 UTC] mimipim at abv dot bg
Description:
------------
It seems in a any specific environment PHP can not be compiled with thread safety disabled.

Test script:
---------------
./configure --prefix=/opt/php71 --disable-maintainer-zts --disable-posix --enable-soap --enable-mbstring --enable-mbregex --with-jpeg-dir="/opt/jibjpeg-turbo/1.5.2" --with-gd --enable-zip --enable-bcmath --enable-pcntl --enable-ftp --enable-exif --enable-calendar --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-static --enable-wddx --enable-shmop --with-curl --with-mcrypt --with-iconv --with-pspell --with-zlib --with-freetype-dir=/usr --enable-gd-native-ttf --enable-gd-jis-conv --with-openssl --with-pdo-mysql --with-gettext=/usr --with-bz2=/usr --with-recode=/usr --with-apxs2=/etc/apache2/bin/apxs --with-fpm-user=www-data --with-fpm-group=www-data --enable-fpm
make
sudo make install


/opt/php71/bin/php -i | grep Thread
Thread Safety => enabled

./configure --help | grep thread
--enable-maintainer-zts Enable thread safety - for code maintainers only!!
--with-tsrm-pthreads Use POSIX threads (default)

./configure --help | grep posix
--disable-posix Disable POSIX-like functions

I tried the with the addition of --disable-maintainer-zts --disable-posix, it still builds with Thread Safety => enabled

Expected result:
----------------
Thread safety => disabled

Actual result:
--------------
Thread safety => enabled

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2018-11-19 13:29 UTC] mimipim at abv dot bg
I found it is because of the with-apxs2 configuration. I suggest a bold warning to be generated at the end of configuration if not an error during such conditions where one option enables the thread safety and other disables it and vice verse.
 [2021-04-20 13:18 UTC] cmb@php.net
-Status: Open +Status: Not a bug -Assigned To: +Assigned To: cmb
 [2021-04-20 13:18 UTC] cmb@php.net
Thread safety is disabled by default (on non Windows systems).  It
is not implicitely enabled, if you build with apache2handler
support for an Apache which has been build as prefork MPM, what is
the recommended setup anyway[1].  I don't see that a warning about
an implicitly enabled thread-safety would be really helpful.

[1] <https://www.php.net/manual/en/install.unix.apache2.php>
 
PHP Copyright © 2001-2021 The PHP Group
All rights reserved.
Last updated: Fri May 07 17:01:23 2021 UTC