Bug #77447 [Csd]: PHP 7.3 built with ASAN crashes in zend_cpu_supports_avx2

From: Date: Sat, 19 Jan 2019 09:32:00 +0000
Subject: Bug #77447 [Csd]: PHP 7.3 built with ASAN crashes in zend_cpu_supports_avx2
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-219082@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=77447&edit=1

 ID:                 77447
 User updated by:    hanno at hboeck dot de
 Reported by:        hanno at hboeck dot de
 Summary:            PHP 7.3 built with ASAN crashes in
                     zend_cpu_supports_avx2
 Status:             Closed
 Type:               Bug
 Package:            Reproducible crash
 Operating System:   Linux
 PHP Version:        7.3.1
 Assigned To:        nikic
 Block user comment: N
 Private report:     N

 New Comment:

Thanks, with both commits applied no more segfaults!


Previous Comments:
------------------------------------------------------------------------
[2019-01-18 14:04:04] nikic@php.net

Release builds should be fixed with https://github.com/php/php-src/commit/986b9b5ae3e04e33fda89f102da1bba625aa06ef.

------------------------------------------------------------------------
[2019-01-18 13:06:36] nikic@php.net

No, it's not intentional. I only marked the cpu_supports functions as no_sanitize_address, but
with optimization they're probably inlined and the attribute is lost. We'll probably need
the attributes also on the ifuncs themselves.

------------------------------------------------------------------------
[2019-01-18 12:58:14] hanno at hboeck dot de

The "--enable-debug" was the issue. With it no segfault, without I still get a segfault.

Is this intentional? (I don't think this is good: It will mean people will end up seeing
segfaults e.g. if they want to fuzz, where people don't want to enable debugging, because they
want max speed.)

------------------------------------------------------------------------
[2019-01-18 12:11:23] nikic@php.net

Could you please provide a stacktrace for the segfault? I'm wondering which codepath is calling
cpu_supports() in your case.

Just to check, you are using gcc, and you are compiling with --enable-debug?

------------------------------------------------------------------------
[2019-01-16 17:54:08] hanno at hboeck dot de

I did, it was a completely fresh build.

Is it possible it's using the headers from the system-wide installed version instead of from
the source code?

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=77447


--
Edit this bug report at https://bugs.php.net/bug.php?id=77447&edit=1


Thread (13 messages)

« previous php.bugs (#219082) next »