|  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
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
 [2018-11-17 22:45 UTC] mimipim at abv dot bg
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
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


Add a Patch

Pull Requests

Add a Pull Request


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]
-Status: Open +Status: Not a bug -Assigned To: +Assigned To: cmb
 [2021-04-20 13:18 UTC]
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] <>
PHP Copyright © 2001-2021 The PHP Group
All rights reserved.
Last updated: Fri May 07 09:01:44 2021 UTC