Skip to content

Add linux_arm and windows_x86 to cDAC dump test platforms#125793

Merged
max-charlamb merged 11 commits intodotnet:mainfrom
max-charlamb:cdac-dumptests-32bit
Mar 25, 2026
Merged

Add linux_arm and windows_x86 to cDAC dump test platforms#125793
max-charlamb merged 11 commits intodotnet:mainfrom
max-charlamb:cdac-dumptests-32bit

Conversation

@max-charlamb
Copy link
Copy Markdown
Member

@max-charlamb max-charlamb commented Mar 19, 2026

Adds 32-bit platform coverage to the cDAC dump test Helix infrastructure:

  • windows_x86: Runs on Windows.11.Amd64.Client.Open via WoW64 (same queue as x64)
  • linux_arm: Runs on containerized ARM32 Helix queue (helix_linux_arm32_oldest — Debian on ARM64 hardware)

Depends on #125841 which fixes cDAC dump tests on 32-bit ARM targets.

Changes

  • eng/pipelines/cdac/prepare-cdac-helix-steps.yml: Added queue switch cases for windows_x86 and linux_arm
  • eng/pipelines/runtime-diagnostics.yml: Added linux_arm and windows_x86 to cdacDumpPlatforms defaults, publish dump artifacts on test failure
  • src/native/managed/cdac/tests/DumpTests/EnableUnsignedDac.props: Extracted shared unsigned DAC registry logic with WoW64 /reg:32 support for x86
  • src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj: Preserve test exit code through tar command, import shared DAC props

Testing

CI validates all 6 platforms: windows_x64, windows_x86, windows_arm64, linux_x64, linux_arm64, linux_arm.

@dotnet-policy-service
Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @dotnet/runtime-infrastructure
See info in area-owners.md if you want to be subscribed.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds 32-bit platform coverage to the cDAC dump test Helix infrastructure by enabling windows_x86 and linux_arm as first-class platforms in the runtime diagnostics pipeline, ensuring dump generation/testing exercises more architecture combinations.

Changes:

  • Expanded cdacDumpPlatforms defaults to include windows_x86 and linux_arm.
  • Added a Helix platforms variable for helix_windows_x86.
  • Updated cDAC Helix queue selection logic to route windows_x86 and linux_arm to appropriate queues.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
eng/pipelines/runtime-diagnostics.yml Adds windows_x86 and linux_arm to the default cDAC dump test platform list.
eng/pipelines/helix-platforms.yml Introduces a Helix queue variable for Windows x86 runs (via WoW64 on x64 machines).
eng/pipelines/cdac/prepare-cdac-helix-steps.yml Extends the platform→Helix-queue mapping to support windows_x86 and linux_arm.

Copilot AI review requested due to automatic review settings March 19, 2026 21:14
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR expands cDAC dump-test Helix coverage to include two additional 32-bit target platforms (Windows x86 via WoW64 and Linux ARM32 via containerized Helix queues), and adds infrastructure to make dump artifacts easier to retrieve from Helix runs.

Changes:

  • Add windows_x86 and linux_arm to the default cdacDumpPlatforms matrix in the runtime diagnostics pipeline.
  • Extend cDAC Helix queue selection logic to map windows_x86 and linux_arm to appropriate Helix queues.
  • Add dump tarball upload/download wiring for cDAC dump tests.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

File Description
src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj Adds tar creation/upload + attempts to download dumps.tar.gz from Helix results for dump tests/dumpgen.
eng/pipelines/runtime-diagnostics.yml Adds windows_x86/linux_arm to cDAC dump platform defaults; quotes Helix queue param; publishes Helix results on failure for single-leg runs.
eng/pipelines/helix-platforms.yml Introduces a helix_windows_x86 queue alias (WoW64 on x64 Windows 10 queue).
eng/pipelines/cdac/prepare-cdac-helix-steps.yml Adds queue switch cases for windows_x86 and linux_arm.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

Copilot AI review requested due to automatic review settings March 20, 2026 18:31
@max-charlamb max-charlamb force-pushed the cdac-dumptests-32bit branch from bd65a1a to 39eeff7 Compare March 20, 2026 18:31
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.

max-charlamb and others added 2 commits March 20, 2026 15:46
Add 32-bit platform coverage to the cDAC dump test Helix infrastructure:
- windows_x86: runs on Windows.10.Amd64.Open via WoW64
- linux_arm: runs on containerized ARM32 Helix queue (Debian on ARM64)

Also adds helix_windows_x86 variable to helix-platforms.yml for
queue name centralization.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The containerized ARM32 queue name contains parentheses which bash
interprets as subshell syntax. Quoting the /p:HelixTargetQueues
argument prevents this.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@max-charlamb max-charlamb marked this pull request as ready for review March 24, 2026 14:34
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated no new comments.

… unused variable

- Windows: save test ERRORLEVEL before tar runs, exit /b 1 if tests failed
- Unix: capture test exit code in _rc before tar, exit with it after
- Fix comment that incorrectly said tar runs only on failure
- Remove unused helix_windows_x86 variable from helix-platforms.yml

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 24, 2026 19:04
@max-charlamb max-charlamb force-pushed the cdac-dumptests-32bit branch from f99432d to 8fd98e7 Compare March 24, 2026 19:04
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

max-charlamb and others added 2 commits March 25, 2026 10:39
The file contains a Target element, so .targets is the correct
extension per MSBuild convention. It's a separate file because
both DumpTests.targets and cdac-dump-helix.proj import it — the
former uses the target for local builds, the latter uses the
properties for Helix pre-commands.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…s.targets

EnableUnsignedDac.props now contains only shared properties
(DacRegAdd, DacRegAdd32) without the underscore prefix since
they are the public interface. The _EnableUnsignedDacWindows
target stays in DumpTests.targets where it belongs.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 25, 2026 14:44
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 25, 2026 16:10
@max-charlamb
Copy link
Copy Markdown
Member Author

/ba-g cDAC only pipeline change

@max-charlamb max-charlamb merged commit deb317e into dotnet:main Mar 25, 2026
17 of 18 checks passed
@max-charlamb max-charlamb deleted the cdac-dumptests-32bit branch March 25, 2026 16:10
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

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

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants