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

Assert failed: block != nullptr in system.xml.xmlserializer.reflectiononly.tests #72840

Closed
runfoapp bot opened this issue Jul 26, 2022 · 12 comments
Closed
Labels
arch-arm64 area-VM-meta-mono blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' os-mac-os-x macOS aka OSX
Milestone

Comments

@runfoapp
Copy link

runfoapp bot commented Jul 26, 2022

In rolling build 1902387 several xml tests failed with this assert on net7.0-MacCatalyst-Release-arm64-Mono_Release-OSX.1200.Arm64.Open

https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-a9fafacc48a0407da6/System.Xml.XmlSerializer.ReflectionOnly.Tests/1/console.8e657ff8.log?%3Fhelixlogtype%3Dresult

[15:38:16] dbug: Running /usr/libexec/PlistBuddy -c "Print CFBundleIdentifier" /tmp/helix/working/C09F09A7/w/9A090886/e/System.Xml.XmlSerializer.ReflectionOnly.Tests.app/Contents/Info.plist
[15:38:16] dbug: Process PlistBuddy exited with 0
[15:38:16] dbug: 
[15:38:16] dbug: Running /usr/libexec/PlistBuddy -c "Print UIRequiredDeviceCapabilities" /tmp/helix/working/C09F09A7/w/9A090886/e/System.Xml.XmlSerializer.ReflectionOnly.Tests.app/Contents/Info.plist
[15:38:16] dbug: Process PlistBuddy exited with 1
assertion failed [block != nullptr]: BasicBlock requested for unrecognized address
(BuilderBase.h:550 block_for_offset)
./xharness-runner.apple.sh: line 154: 21578 Trace/BPT trap: 5       (core dumped) dotnet exec "$XHARNESS_CLI_PATH" "$@"
Removing empty log files:

The same failure also appears in two other Xml tests:
https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-a9fafacc48a0407da6/System.Xml.XPath.XmlDocument.Tests/1/console.af8a69cb.log?%3Fhelixlogtype%3Dresult

https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-a9fafacc48a0407da6/System.Xml.RW.WrappedReader.Tests/1/console.196a8295.log?%3Fhelixlogtype%3Dresult

Runfo Tracking Issue: system.xml.xmlserializer.reflectiononly.tests work item

Build Definition Kind Run Name Console Core Dump Test Results Run Client
1920416 runtime-extra-platforms PR 72925 net7.0-tvOS-Release-arm64-Mono_Release-OSX.1100.Amd64.AppleTV.Open console.log runclient.py
1902387 runtime-extra-platforms Rolling net7.0-MacCatalyst-Release-arm64-Mono_Release-OSX.1200.Arm64.Open console.log runclient.py

Build Result Summary

Day Hit Count Week Hit Count Month Hit Count
0 1 2
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Jul 26, 2022
@noahfalk noahfalk changed the title system.xml.xmlserializer.reflectiononly.tests work item Assert failed: block != nullptr in system.xml.xmlserializer.reflectiononly.tests Jul 26, 2022
@noahfalk noahfalk added arm64 os-maccatalyst MacCatalyst OS labels Jul 26, 2022
@ghost
Copy link

ghost commented Jul 26, 2022

Tagging subscribers to 'os-maccatalyst': @steveisok, @akoeplinger
See info in area-owners.md if you want to be subscribed.

Issue Details

In rolling build 1902387 several xml tests failed with this assert on net7.0-MacCatalyst-Release-arm64-Mono_Release-OSX.1200.Arm64.Open

https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-a9fafacc48a0407da6/System.Xml.XmlSerializer.ReflectionOnly.Tests/1/console.8e657ff8.log?%3Fhelixlogtype%3Dresult

[15:38:16] dbug: Running /usr/libexec/PlistBuddy -c "Print CFBundleIdentifier" /tmp/helix/working/C09F09A7/w/9A090886/e/System.Xml.XmlSerializer.ReflectionOnly.Tests.app/Contents/Info.plist
[15:38:16] dbug: Process PlistBuddy exited with 0
[15:38:16] dbug: 
[15:38:16] dbug: Running /usr/libexec/PlistBuddy -c "Print UIRequiredDeviceCapabilities" /tmp/helix/working/C09F09A7/w/9A090886/e/System.Xml.XmlSerializer.ReflectionOnly.Tests.app/Contents/Info.plist
[15:38:16] dbug: Process PlistBuddy exited with 1
assertion failed [block != nullptr]: BasicBlock requested for unrecognized address
(BuilderBase.h:550 block_for_offset)
./xharness-runner.apple.sh: line 154: 21578 Trace/BPT trap: 5       (core dumped) dotnet exec "$XHARNESS_CLI_PATH" "$@"
Removing empty log files:

The same failure also appears in two other Xml tests:
https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-a9fafacc48a0407da6/System.Xml.XPath.XmlDocument.Tests/1/console.af8a69cb.log?%3Fhelixlogtype%3Dresult

https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-a9fafacc48a0407da6/System.Xml.RW.WrappedReader.Tests/1/console.196a8295.log?%3Fhelixlogtype%3Dresult

Runfo Tracking Issue: system.xml.xmlserializer.reflectiononly.tests work item

Build Definition Kind Run Name Console Core Dump Test Results Run Client
1902387 runtime-extra-platforms Rolling net7.0-MacCatalyst-Release-arm64-Mono_Release-OSX.1200.Arm64.Open console.log runclient.py

Build Result Summary

Day Hit Count Week Hit Count Month Hit Count
1 1 1
Author: runfoapp[bot]
Assignees: -
Labels:

area-Serialization, untriaged, os-maccatalyst, arm64

Milestone: -

@noahfalk noahfalk added the blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' label Jul 26, 2022
@steveisok steveisok added os-mac-os-x macOS aka OSX and removed os-maccatalyst MacCatalyst OS labels Jul 26, 2022
@steveisok
Copy link
Member

/cc @agocke

I do not believe this is a MacCatalyst issue as I think the crash is coming from dotnet itself:

assertion failed [block != nullptr]: BasicBlock requested for unrecognized address (BuilderBase.h:550 block_for_offset).

I asked on FR yesterday to reboot the machines, but I don't think this solves the problem. What's interesting is it only happens on a handful of machines per CI run.

@danmoseley
Copy link
Member

I don't know where 'BasicBlock requested for unrecognized address' is coming from. It appears to be some library we are using -- is this using any chk libraries? Putting in mono-vm .

@steveisok
Copy link
Member

This is just a guess, but the assert may be

assert(block != nullptr);

For mobile runs, the first part that deals with xharness / launching an app is dotnet w/ a coreclr runtime. I believe the crash is happening there.

@danmoseley
Copy link
Member

Ah - could be.. but where does "BuilderBase.h" come from? I can't find it anywhere. constructed in some macro magic maybe?

@dotnet/jit-contrib is this your assert?

@jakobbotsch
Copy link
Member

This does not look like our assert. JIT asserts are printed in a specific format that I do not recognize here.

For mobile runs, the first part that deals with xharness / launching an app is dotnet w/ a coreclr runtime. I believe the crash is happening there.

If that is the case I would expect it to be using a release SDK where JIT asserts are disabled.

@jakobbotsch
Copy link
Member

I see a different assertion failure with the same format referenced in the issue here:
#44958 (comment)

It looks like it is a Rosetta assertion failure based on @janvorli's comment below.

@steveisok
Copy link
Member

Hmm - maybe the solution is to stop using the x64 sdk here.

@ivanpovazan
Copy link
Member

@steveisok I have been experiencing the same when building xamarin-macios repo on M1
xamarin/xamarin-macios#15375
using arm64 local installs solved the problem.

@noahfalk
Copy link
Member

This issue has started reproing on runtime rolling builds:

https://runfo.azurewebsites.net/view/build/?number=1906180

https://helixre107v0xdeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-5f225c446a9f4d5f9f/System.Runtime.Tests/1/console.3c229975.log?%3Fhelixlogtype%3Dresult

+ sudo launchctl asuser 503 sudo -u helix-runner sh ./xharness-runner.apple.sh --target maccatalyst --command-timeout 2280 --timeout 00:30:00 --launch-timeout 00:30:00 --includes-test-runner --expected-exit-code 0 --app /tmp/helix/working/AB640984/w/A39808E5/e/System.Runtime.Tests.app --output-directory /tmp/helix/working/AB640984/w/A39808E5/uploads
[1.0.0-prerelease.22358.1+7871eb473366b7246d628ba30bfc70dd84f8dbb9] XHarness command issued: apple test --app /tmp/helix/working/AB640984/w/A39808E5/e/System.Runtime.Tests.app --output-directory /tmp/helix/working/AB640984/w/A39808E5/uploads --target maccatalyst --timeout 00:30:00 --launch-timeout 00:30:00 --xcode /Applications/Xcode131.app -v
assertion failed [block != nullptr]: BasicBlock requested for unrecognized address
(BuilderBase.h:550 block_for_offset)
./xharness-runner.apple.sh: line 154: 55842 Trace/BPT trap: 5       (core dumped) dotnet exec "$XHARNESS_CLI_PATH" "$@"

@steveisok
Copy link
Member

#72851 should contain a helix sdk modification to use the arm64 SDK on arm64 test queues.

@steveisok steveisok removed the untriaged New issue has not been triaged by the area owner label Aug 2, 2022
@steveisok steveisok added this to the 7.0.0 milestone Aug 2, 2022
@steveisok
Copy link
Member

#72851 has been merged. It contains an arcade bump that installs the arm64 SDK on helix when the target queue is arm64. This fixes the problem.

@ghost ghost locked as resolved and limited conversation to collaborators Sep 3, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
arch-arm64 area-VM-meta-mono blocking-clean-ci Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms' os-mac-os-x macOS aka OSX
Projects
None yet
Development

No branches or pull requests

6 participants