Skip to content

ext\spl\tests\bug77263.phpt test is causing sigfault on Windows 32-bit OS #8450

Closed

Description

@mvorisek

Description

code https://github.com/php/php-src/blob/9b8f76bfa29ff234ff45a27b8171e13c9b8d2928/ext/spl/tests/bug77263.phpt
CI: https://github.com/mvorisek/php-src/runs/6201706203?check_suite_focus=true#step:8:3851

========DIFF========
001+ Can't initialize heap: [0x000001e7] Attempt to access invalid address

001- OK

002+ 

003+ Termsig=-1073741819
========DONE========
FAIL Bug #77263 (Segfault when using 2 RecursiveFilterIterator) [D:\a\php-src\php-src\ext\spl\tests\bug77263.phpt] 

for some reasons, this issue is not always present

PHP Version

8.x, probably master too

Operating System

Windows 32-bit

Activity

  1. cmb69 commented on Apr 28, 2022

    @cmb69
    Member

    I haven't been able to reproduce this locally, and I have no idea what exactly is going there.

  2. mvorisek commented on Apr 28, 2022

    @mvorisek
    ContributorAuthor

    it is failing randomly

    sapi/phpdbg/tests/watch_001.phpt - sapi/phpdbg/tests/watch_004.phpt tests have never failed for me
    but sapi/phpdbg/tests/watch_005.phpt - sapi/phpdbg/tests/watch_006.phpt is failing consistently with the same Termsig=-1073741819 error code, not sure if this is related, but can you reproduce the segfault for these tests on Windows 32-bit?

  3. cmb69 commented on Apr 28, 2022

    @cmb69
    Member

    it is failing randomly

    Yeah, I know, but I ran several times (x86 ZTS, with and without JIT), and it never failed. :(

    Neither sapi/phpdbg/tests/watch_005.phpt nor sapi/phpdbg/tests/watch_006.phpt is failing for me. However, -1073741819 is basically 0xc0000005 which is the code for an access violation (aka. segfault), and these tests mention "intentionally causes segfaults"; these should be caught, though, but for some reason they're not (or an uncaught segfault happens). Anyway, hard to debug if not reproducible.

  4. mvorisek commented on Apr 28, 2022

    @mvorisek
    ContributorAuthor

    I do not know how to debug this, but here is repro code: https://github.com/mvorisek/php-src/tree/repro_win32bit_segfault

    the sapi/phpdbg/tests/watch_005.phpt and sapi/phpdbg/tests/watch_006.phpt tests always fail [1], the env is Microsoft Windows Server 2019 Datacenter 64 bit OS & php-src compiled for x86 platform

    is it possible to update the repro code to dump the C stack trace to understand the issue just from the CI output?

    [1] https://github.com/mvorisek/php-src/runs/6213041816?check_suite_focus=true#step:5:84

  5. cmb69 commented on May 3, 2022

    @cmb69
    Member

    is it possible to update the repro code to dump the C stack trace to understand the issue just from the CI output?

    Hmm, that would require to install and register a post mortem debugger, which than would create a (huge) dump file. That dump file would need to be uploaded as artifact, and could then be downloaded for inspection. Not sure if that's worth the trouble for phpdbg issues.

  6. mvorisek commented on Oct 1, 2022

    @mvorisek
    ContributorAuthor

    duplicate of #9650

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions