Skip to content

Fix .NET 11 rc1 SDK crash on RHEL8 arm64 - #133887

Merged
jkotas merged 3 commits into
mainfrom
copilot/fix-dotnet-11-sdk-crash
Sep 17, 2026
Merged

jkotas merged 3 commits into
mainfrom
copilot/fix-dotnet-11-sdk-crash

Conversation

Copilot AI commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

Fixes #133675

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
16 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @anicka-net, @dotnet/gc
See info in area-owners.md if you want to be subscribed.

Agent-Logs-Url: https://github.com/dotnet/runtime/sessions/d6c20da4-66f0-474a-ad18-fc49264d3711

Co-authored-by: jkotas <6668460+jkotas@users.noreply.github.com>
@jkotas
jkotas marked this pull request as ready for review September 14, 2026 23:14
Copilot AI lite review requested due to automatic review settings September 14, 2026 23:14
@jkotas jkotas changed the title [WIP] Fix .NET 11 rc1 SDK crash on RHEL8 arm64 Fix .NET 11 rc1 SDK crash on RHEL8 arm64 Sep 14, 2026
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).
13 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@jkotas

jkotas commented Sep 14, 2026

Copy link
Copy Markdown
Member

@MichalStrehovsky PTLA

@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @agocke, @dotnet/ilc-contrib
See info in area-owners.md if you want to be subscribed.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

No unresolved review issues were identified.

Pull request overview

Fixes the NativeAOT ARM64 thunk crash on systems with 64 KiB pages.

Changes:

  • Uses a PC-relative literal load for the common-stub pointer.
  • Adds range and alignment validation.
File summaries
File Description
src/coreclr/nativeaot/Runtime/ThunksMapping.cpp Corrects ARM64 thunk target loading.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

@jkotas

jkotas commented Sep 15, 2026

Copy link
Copy Markdown
Member

@jkoritzinsky Could you please signoff as well? Two sign-offs are not enough for this one...

@MichalPetryka

Copy link
Copy Markdown
Contributor

IIRC when I was looking at #131709, I noticed some places in the GC that seemed to assume that OS_PAGE_SIZE was never above 16kB. I assume the GC should ideally be checked too if there really are such places.

@jkotas

jkotas commented Sep 16, 2026

Copy link
Copy Markdown
Member

I noticed some places in the GC that seemed to assume that OS_PAGE_SIZE was never above 16kB.

That's tracked by #133743 . You can comment on that there.

@jkotas
jkotas requested a review from jkoritzinsky September 16, 2026 05:23
@jkotas
jkotas merged commit 8e45f4d into main Sep 17, 2026
107 of 110 checks passed
@jkotas
jkotas deleted the copilot/fix-dotnet-11-sdk-crash branch September 17, 2026 18:12
@jkotas

jkotas commented Sep 17, 2026

Copy link
Copy Markdown
Member

/backport to release/11.0

@github-actions

Copy link
Copy Markdown
Contributor

Started backporting to release/11.0 (link to workflow run)

JulieLeeMSFT pushed a commit that referenced this pull request Sep 17, 2026
Backport of #133887 to release/11.0

/cc @jkotas @Copilot

## Customer Impact

- [x] Customer reported
- [ ] Found internally

NativeAOT compiled .NET SDK components crash on RHEL.

The Arm64 instruction encoding used for NativeAOT marshalled delegate
thunks did not work on RHEL that uses 64kB pages by default. This was
found by running NativeAOT compiled SDK components on RHEL.

## Regression

- [ ] Yes
- [x] No


## Testing

The fix was validated on RHEL.
#133944 opened on improving the
test coverage that would allow us to find this issue earlier.

## Risk

Low

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jkotas <6668460+jkotas@users.noreply.github.com>
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
@dotnet-milestone-bot dotnet-milestone-bot Bot added this to the 12.0-preview1 milestone Sep 18, 2026
jtschuster pushed a commit to jtschuster/runtime that referenced this pull request Sep 18, 2026
Fixes dotnet#133675

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: jkotas <6668460+jkotas@users.noreply.github.com>
Co-authored-by: Jan Kotas <jkotas@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

.NET 11 rc1 SDK crashes on RHEL8 arm64

6 participants