Skip to content

Conversation

@wenyuzhao
Copy link
Member

This CL fixes PageProtect's memory unprotect calls. When using discontiguous space,

  • If the allocated pages are not in a new chunk, unprotect the pages as before.
  • If the pages are in a new chunk, there can be two cases:
    • If the new chunk is not mapped, no need to unprotect
    • If the new chunk is mapped, this means that the chunk is allocated and released on previous GC epochs before. The GC should unprotect these pages.

@wenyuzhao wenyuzhao added the PR-testing Run binding tests for the pull request (deprecated: use PR-extended-testing instead) label Sep 6, 2023
@wenyuzhao wenyuzhao requested a review from qinsoon September 6, 2023 12:49
@qinsoon
Copy link
Member

qinsoon commented Sep 6, 2023

Can you explain a bit why we need this change? What is the bug before this change?

@wenyuzhao
Copy link
Member Author

Can you explain a bit why we need this change? What is the bug before this change?

This is a necessary fix to make page protect gc be able to run with compressed pointers, which uses discontiguous heap

@qinsoon
Copy link
Member

qinsoon commented Sep 7, 2023

The JikesRVM failure should not be related with the PR. We can rerun the test.

Copy link
Member

@qinsoon qinsoon left a comment

Choose a reason for hiding this comment

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

LGTM

@qinsoon qinsoon added this pull request to the merge queue Sep 7, 2023
Merged via the queue into mmtk:master with commit 62f1dc9 Sep 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PR-testing Run binding tests for the pull request (deprecated: use PR-extended-testing instead)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants