Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ExposedLocalsNumbering runtime test disabled #80184

Closed
SingleAccretion opened this issue Jan 4, 2023 · 7 comments · Fixed by #105037
Closed

ExposedLocalsNumbering runtime test disabled #80184

SingleAccretion opened this issue Jan 4, 2023 · 7 comments · Fixed by #105037
Assignees
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI disabled-test The test is disabled in source code against the issue in-pr There is an active PR which will close this issue when it is merged
Milestone

Comments

@SingleAccretion
Copy link
Contributor

SingleAccretion commented Jan 4, 2023

See the test being added in #79772 (src/tests/JIT/opt/ValueNumbering/ExposedLocalsNumbering.csproj).

The test tries to induce a race that could lead to an out-of-bounds access with a bypassed bounds check. This caused interpreter on MacOS x64 to crash in CI:

    JIT/opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.sh [FAIL]
      
      =================================================================
      External Debugger Dump:
      =================================================================
      /private/tmp/helix/working/A89108ED/w/AA5E0950/e/JIT/opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.sh: line 426: 20391 Abort trap: 6           (core dumped) $LAUNCHER $ExePath "${CLRTestExecutionArguments[@]}"
      
      Return code:      1
      Raw output file:      /tmp/helix/working/A89108ED/w/AA5E0950/uploads/Reports/JIT.opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.output.txt
      Raw output:
      BEGIN EXECUTION
      /tmp/helix/working/A89108ED/p/corerun -p System.Reflection.Metadata.MetadataUpdater.IsSupported=false ExposedLocalsNumbering.dll ''
      
      =================================================================
      Native Crash Reporting
      =================================================================
      Got a SIGSEGV while executing native code. This usually indicates
      a fatal error in the mono runtime or one of the native libraries 
      used by your application.
      =================================================================
      
      =================================================================
      Native stacktrace:
      =================================================================
      0x10f32bb64 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_dump_native_crash_info
      0x10f2cf80e - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_handle_native_crash
      0x10f2254ff - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_sigsegv_signal_handler_debug
      0x7ff804ccddfd - /usr/lib/system/libsystem_platform.dylib : _sigtramp
      0x7ff7b142bcc0 - Unknown
      0x10f32d1f3 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : interp_runtime_invoke
      0x10f14b798 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_runtime_invoke_checked
      0x10f15409c - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : do_exec_main_checked
      0x10f288422 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_jit_exec
      0x10f28b958 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_main
      0x10f307573 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : monovm_execute_assembly
      0x10ead8302 - /private/tmp/helix/working/A89108ED/p/corerun : main
      0x10f02451e - Unknown

The test will be disabled against this issue once/if #79772 is merged.

CoreCLR failures:
https://dev.azure.com/dnceng-public/public/_build/results?buildId=133883&view=ms.vss-test-web.build-test-results-tab
https://dev.azure.com/dnceng-public/public/_build/results?buildId=133827&view=ms.vss-test-web.build-test-results-tab&runId=2905668&resultId=119527&paneView=debug

@SingleAccretion SingleAccretion added disabled-test The test is disabled in source code against the issue area-Codegen-Interpreter-mono labels Jan 4, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Jan 4, 2023
@ghost
Copy link

ghost commented Jan 4, 2023

Tagging subscribers to this area: @BrzVlad
See info in area-owners.md if you want to be subscribed.

Issue Details

See the test being added #79772 (src/tests/JIT/opt/ValueNumbering/ExposedLocalsNumbering.csproj).

The test tries to induce a race that could lead to an out-of-bounds access with a bypassed bounds check. This caused interpreter on MacOS x64 to crash in CI:

    JIT/opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.sh [FAIL]
      
      =================================================================
      External Debugger Dump:
      =================================================================
      /private/tmp/helix/working/A89108ED/w/AA5E0950/e/JIT/opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.sh: line 426: 20391 Abort trap: 6           (core dumped) $LAUNCHER $ExePath "${CLRTestExecutionArguments[@]}"
      
      Return code:      1
      Raw output file:      /tmp/helix/working/A89108ED/w/AA5E0950/uploads/Reports/JIT.opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.output.txt
      Raw output:
      BEGIN EXECUTION
      /tmp/helix/working/A89108ED/p/corerun -p System.Reflection.Metadata.MetadataUpdater.IsSupported=false ExposedLocalsNumbering.dll ''
      
      =================================================================
      Native Crash Reporting
      =================================================================
      Got a SIGSEGV while executing native code. This usually indicates
      a fatal error in the mono runtime or one of the native libraries 
      used by your application.
      =================================================================
      
      =================================================================
      Native stacktrace:
      =================================================================
      0x10f32bb64 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_dump_native_crash_info
      0x10f2cf80e - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_handle_native_crash
      0x10f2254ff - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_sigsegv_signal_handler_debug
      0x7ff804ccddfd - /usr/lib/system/libsystem_platform.dylib : _sigtramp
      0x7ff7b142bcc0 - Unknown
      0x10f32d1f3 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : interp_runtime_invoke
      0x10f14b798 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_runtime_invoke_checked
      0x10f15409c - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : do_exec_main_checked
      0x10f288422 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_jit_exec
      0x10f28b958 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_main
      0x10f307573 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : monovm_execute_assembly
      0x10ead8302 - /private/tmp/helix/working/A89108ED/p/corerun : main
      0x10f02451e - Unknown

The test will be disable against this issue once/if #79772 is merged.

Author: SingleAccretion
Assignees: -
Labels:

disabled-test, area-Codegen-Interpreter-mono

Milestone: -

@SingleAccretion
Copy link
Contributor Author

#80522 will disable the test on all configurations due to a bug I need to investigate. Will flip this issue back to Mono if there will be any Mono-specific issues remaining after that.

@SingleAccretion SingleAccretion changed the title Mono interpreter does not handle racy code with bounds checks ExposedLocalsNumbering runtime test disabled Jan 11, 2023
@SingleAccretion SingleAccretion added area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI and removed area-Codegen-Interpreter-mono labels Jan 11, 2023
@ghost
Copy link

ghost commented Jan 11, 2023

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch, @kunalspathak
See info in area-owners.md if you want to be subscribed.

Issue Details

See the test being added in #79772 (src/tests/JIT/opt/ValueNumbering/ExposedLocalsNumbering.csproj).

The test tries to induce a race that could lead to an out-of-bounds access with a bypassed bounds check. This caused interpreter on MacOS x64 to crash in CI:

    JIT/opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.sh [FAIL]
      
      =================================================================
      External Debugger Dump:
      =================================================================
      /private/tmp/helix/working/A89108ED/w/AA5E0950/e/JIT/opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.sh: line 426: 20391 Abort trap: 6           (core dumped) $LAUNCHER $ExePath "${CLRTestExecutionArguments[@]}"
      
      Return code:      1
      Raw output file:      /tmp/helix/working/A89108ED/w/AA5E0950/uploads/Reports/JIT.opt/ValueNumbering/ExposedLocalsNumbering/ExposedLocalsNumbering.output.txt
      Raw output:
      BEGIN EXECUTION
      /tmp/helix/working/A89108ED/p/corerun -p System.Reflection.Metadata.MetadataUpdater.IsSupported=false ExposedLocalsNumbering.dll ''
      
      =================================================================
      Native Crash Reporting
      =================================================================
      Got a SIGSEGV while executing native code. This usually indicates
      a fatal error in the mono runtime or one of the native libraries 
      used by your application.
      =================================================================
      
      =================================================================
      Native stacktrace:
      =================================================================
      0x10f32bb64 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_dump_native_crash_info
      0x10f2cf80e - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_handle_native_crash
      0x10f2254ff - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_sigsegv_signal_handler_debug
      0x7ff804ccddfd - /usr/lib/system/libsystem_platform.dylib : _sigtramp
      0x7ff7b142bcc0 - Unknown
      0x10f32d1f3 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : interp_runtime_invoke
      0x10f14b798 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_runtime_invoke_checked
      0x10f15409c - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : do_exec_main_checked
      0x10f288422 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_jit_exec
      0x10f28b958 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : mono_main
      0x10f307573 - /private/tmp/helix/working/A89108ED/p/libcoreclr.dylib : monovm_execute_assembly
      0x10ead8302 - /private/tmp/helix/working/A89108ED/p/corerun : main
      0x10f02451e - Unknown

The test will be disabled against this issue once/if #79772 is merged.

Author: SingleAccretion
Assignees: SingleAccretion
Labels:

disabled-test, area-CodeGen-coreclr, untriaged

Milestone: -

@SingleAccretion SingleAccretion removed the untriaged New issue has not been triaged by the area owner label Jan 11, 2023
@JulieLeeMSFT JulieLeeMSFT added this to the 8.0.0 milestone Jan 12, 2023
@SingleAccretion SingleAccretion modified the milestones: 8.0.0, Future Mar 27, 2023
@jakobbotsch jakobbotsch modified the milestones: Future, 9.0.0 Nov 27, 2023
@EgorBo
Copy link
Member

EgorBo commented Jul 15, 2024

@SingleAccretion @jakobbotsch so is this a mono issue? why 9.0.0 milestone and codegen label then

@jakobbotsch
Copy link
Member

I don't remember, but I suspect I moved it to 9.0 because it seems like actual silent bad codegen in some fashion? (9.0 presumably did not exist when it was moved to future)

@SingleAccretion
Copy link
Contributor Author

SingleAccretion commented Jul 15, 2024

is this a mono issue

No, the test was failing in many configurations, in all cases - fatal crashes.

I think this can safely be not-9.0. It looks (and looked) like a test bug.

Edit: and I think I now finally see what this test bug is...

@jakobbotsch jakobbotsch modified the milestones: 9.0.0, Future Jul 15, 2024
@dotnet-policy-service dotnet-policy-service bot added the in-pr There is an active PR which will close this issue when it is merged label Jul 17, 2024
@EgorBo EgorBo modified the milestones: Future, 9.0.0 Jul 18, 2024
@EgorBo
Copy link
Member

EgorBo commented Jul 18, 2024

Moving back to 9.0 since the fix is filed

@github-actions github-actions bot locked and limited conversation to collaborators Aug 19, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI disabled-test The test is disabled in source code against the issue in-pr There is an active PR which will close this issue when it is merged
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants