Skip to content

[release/8.0] Disable W^X in Rosetta emulated x64 containers on macOS #106353

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

Merged
merged 4 commits into from
Aug 13, 2024

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Aug 13, 2024

Backport of #105117 to release/8.0

/cc @carlossanlop @jeffschwMSFT @janvorli

Customer Impact

  • Customer reported
  • Found internally

[Select one or both of the boxes. Describe how this issue impacts customers, citing the expected and actual behaviors and scope of the issue. If customer-reported, provide the issue number.]

Regression

  • Yes
  • No

[If yes, specify when the regression was introduced. Provide the PR or commit if known.]

Testing

[How was the fix verified? How was the issue missed previously? What tests were added?]

Risk

[High/Medium/Low. Justify the indication by mentioning how risks were measured and addressed.]

IMPORTANT: If this backport is for a servicing release, please verify that:

  • The PR target branch is release/X.0-staging, not release/X.0.

  • If the change touches code that ships in a NuGet package, you have added the necessary package authoring and gotten it explicitly reviewed.

The docker on macOS Arm64 uses Rosetta to run x64 containers. That
has an effect on the double mapping. The Rosetta is unable to detect
when an already executed code page is modified. So we cannot use double
mapping on those containers. To detect that case, this change adds check
that verifies that the double mapping works even when the code is
modified.

Close #102226
This will help WINE running 32 bit code under rosetta emulation on
macOS.
@ghost ghost added the area-PAL-coreclr label Aug 13, 2024
Copy link
Contributor

@carlossanlop carlossanlop left a comment

Choose a reason for hiding this comment

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

Cherry-picked from release/8.0-staging as we missed it in the codeflow from staging to internal.

I'll just wait for a couple of basic build legs to finish and then I will merge.

cc @jeffschwMSFT

@carlossanlop carlossanlop added the Servicing-approved Approved for servicing release label Aug 13, 2024
@carlossanlop carlossanlop added this to the 8.0.9 milestone Aug 13, 2024
@carlossanlop carlossanlop changed the title [release/8.0] [release/8.0-staging] Disable W^X in Rosetta emulated x64 containers on macOS [release/8.0] Disable W^X in Rosetta emulated x64 containers on macOS Aug 13, 2024
@carlossanlop carlossanlop merged commit e4ec942 into release/8.0 Aug 13, 2024
12 of 140 checks passed
@carlossanlop carlossanlop deleted the backport/pr-105117-to-release/8.0 branch August 13, 2024 17:50
@github-actions github-actions bot locked and limited conversation to collaborators Sep 14, 2024
@rbhanda rbhanda modified the milestones: 8.0.9, 8.0.10 Oct 7, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-PAL-coreclr Servicing-approved Approved for servicing release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants