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

Unify macOS ARM64 write protection holders with W^X ones #54067

Merged
merged 2 commits into from
Jun 12, 2021

Conversation

janvorli
Copy link
Member

@janvorli janvorli commented Jun 11, 2021

This change removes the original holders that were added for changing
memory protection for executable code and moves the actual switching to
the recently added W^X holders.

The debugger code was verified using selected mdbg tests.

It also removes the operator new for allocating debugger executable memory.
It was used at two places only and it is problematic for double mapped memory,
as the constructor needs the writeable mapping.

Contributes to #50391

This change removes the original holders that were added for changing
memory protection for executable code and moves the actual switching to
the recently added W^X holders.
@janvorli janvorli added this to the 6.0.0 milestone Jun 11, 2021
@janvorli janvorli requested review from jkotas and sdmaclea June 11, 2021 16:05
@janvorli janvorli self-assigned this Jun 11, 2021
Copy link
Member

@jkotas jkotas left a comment

Choose a reason for hiding this comment

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

Thanks

@sdmaclea
Copy link
Contributor

/azp list

@sdmaclea
Copy link
Contributor

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@sdmaclea
Copy link
Contributor

/azp run runtime-libraries-coreclr outerloop-osx

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Contributor

@sdmaclea sdmaclea left a comment

Choose a reason for hiding this comment

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

LGTM Thanks

The unixexports files don't support target specific symbols. So I needed
to export a dummy version of the PAL_JitWriteProtect for macOS x64.
@janvorli
Copy link
Member Author

/azp run runtime-libraries-coreclr outerloop-osx

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@janvorli
Copy link
Member Author

/azp run runtime-coreclr outerloop

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@janvorli
Copy link
Member Author

All the failed legs are Linux MUSL and the failure is an unrelated known issue in a new test (#53836).

@janvorli janvorli merged commit cc6d314 into dotnet:main Jun 12, 2021
@janvorli janvorli deleted the unify-apple-silicon-holders branch June 12, 2021 07:57
@ghost ghost locked as resolved and limited conversation to collaborators Jul 12, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants