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

ComInterfaceGenerator and LibraryImportGenerator tests fail on linux-arm with "symbol lookup error: /root/helix/work/workitem/e/Microsoft.Interop.Tests.NativeExportsNE.so: undefined symbol: __atomic_compare_exchange_4" #90376

Closed
jakobbotsch opened this issue Aug 11, 2023 · 13 comments · Fixed by #90425
Assignees
Labels
area-Interop-coreclr blocking-clean-ci-optional Blocking optional rolling runs Known Build Error Use this to report build issues in the .NET Helix tab
Milestone

Comments

@jakobbotsch
Copy link
Member

jakobbotsch commented Aug 11, 2023

See e.g. https://dev.azure.com/dnceng-public/public/_build/results?buildId=370764&view=ms.vss-test-web.build-test-results-tab.

/root/helix/work/workitem/e /root/helix/work/workitem/e
  Discovering: ComInterfaceGenerator.Tests (method display = ClassAndMethod, method display options = None)
  Discovered:  ComInterfaceGenerator.Tests (found 41 of 44 test cases)
  Starting:    ComInterfaceGenerator.Tests (parallel test collections = on, max threads = 2)
/root/helix/work/correlation/dotnet: symbol lookup error: /root/helix/work/workitem/e/Microsoft.Interop.Tests.NativeExportsNE.so: undefined symbol: __atomic_compare_exchange_4
/root/helix/work/workitem/e
----- end Fri Aug 11 07:50:08 UTC 2023 ----- exit code 127 ----------------------------------------------------------
{
  "ErrorMessage": "undefined symbol: __atomic_",
  "BuildRetry": false,
  "ErrorPattern": "",
  "ExcludeConsoleLog": false
}

Known issue validation

Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=370764
Error message validated: undefined symbol: __atomic_
Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 8/14/2023 2:20:00 PM UTC

Report

Build Definition Test Pull Request
373115 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90519
372849 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90519
372550 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
372473 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
372445 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90270
372307 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
372247 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
371518 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
371313 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90413
370973 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90318
371292 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
370857 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
370764 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
370256 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90318
370244 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
369870 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #89712
369713 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90306
369604 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90150
369496 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution
369482 dotnet/runtime LibraryImportGenerator.Tests.WorkItemExecution #90298

Summary

24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 13 20
@dotnet-issue-labeler dotnet-issue-labeler bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Aug 11, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Aug 11, 2023
@jakobbotsch jakobbotsch added blocking-clean-ci-optional Blocking optional rolling runs area-Interop-coreclr Known Build Error Use this to report build issues in the .NET Helix tab and removed needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners labels Aug 11, 2023
@BruceForstall
Copy link
Member

@jtschuster
Copy link
Member

This looks like an issue with the DNNE version update

@AaronRobinsonMSFT
Copy link
Member

@jtschuster Yes, this is unfortunate. Looks like __atomic_compare_exchange_4 isn't supported on some platforms. That is unforunate.

@jakobbotsch Can you tell me what OS we are targeting on arm32?

@BruceForstall
Copy link
Member

@AaronRobinsonMSFT You can see from the top of a Helix run console log, e.g.:

Console log: 'ComInterfaceGenerator.Tests' from job c2fba350-aaca-42b7-9ed0-72c58b5d8b74 (ubuntu.1804.armarch.open) using docker image mcr.microsoft.com/dotnet-buildtools/prereqs:ubuntu-18.04-helix-arm32v7 on a00ABUK

So you could try checking that Docker container for version info.

@BruceForstall
Copy link
Member

Similarly, the Docker container for the build is mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-cross-arm

@AaronRobinsonMSFT
Copy link
Member

@jtschuster Can you take a look at AaronRobinsonMSFT/DNNE#176

@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Aug 11, 2023
@ghost ghost removed in-pr There is an active PR which will close this issue when it is merged untriaged New issue has not been triaged by the area owner labels Aug 12, 2023
@ghost ghost added the untriaged New issue has not been triaged by the area owner label Aug 12, 2023
@BruceForstall BruceForstall added this to the 8.0.0 milestone Aug 12, 2023
@ghost ghost removed the untriaged New issue has not been triaged by the area owner label Aug 12, 2023
@AaronRobinsonMSFT
Copy link
Member

This is annoying. I have a local repro. This is now failing on a different symbol, __atomic_exchange_4 , but the issue is generally the same. I will create a new package so this works on arm32.

@AaronRobinsonMSFT
Copy link
Member

AaronRobinsonMSFT commented Aug 13, 2023

@jtschuster Can you get the following NuGet package updated - https://www.nuget.org/packages/DNNE/2.0.5.

Speaking to @elinor-fung about this issue, she mentioned that for LibraryImport tests we disabled arm32 support because of various issues. If this doesn't work we should follow the same pattern or if it does work, we should reenable them for arm32 so we have coverage.

/cc @jkoritzinsky

@steveharter
Copy link
Member

Also hit this with __atomic_exchange_4. Updating known issue filter from __atomic_compare_exchange_4 to __atomic_ to catch both __atomic_compare_exchange_4 and __atomic_exchange_4.

@BruceForstall
Copy link
Member

@jtschuster Can you get the following NuGet package updated - https://www.nuget.org/packages/DNNE/2.0.5.

@AaronRobinsonMSFT @jtschuster Any chance this will get fixed today?

@jtschuster
Copy link
Member

Yes, it is in

@BruceForstall
Copy link
Member

@jtschuster This can be closed now?

@AaronRobinsonMSFT
Copy link
Member

Yes this can now be closed... again :(

@ghost ghost locked as resolved and limited conversation to collaborators Sep 17, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-Interop-coreclr blocking-clean-ci-optional Blocking optional rolling runs Known Build Error Use this to report build issues in the .NET Helix tab
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants