-
Notifications
You must be signed in to change notification settings - Fork 396
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
Change control access of isLargePage in MemoryManager to public #4701
Conversation
@genie-omr build all |
@bragaigor Can you update the copyright? |
@bragaigor It looks like you rolled in an extra commit, was this an accident? |
7472f2f
to
25f1a7f
Compare
@genie-omr build all |
gc/base/GCExtensionsBase.hpp
Outdated
@@ -257,6 +257,7 @@ class MM_GCExtensionsBase : public MM_BaseVirtual { | |||
bool largePageWarnOnError; | |||
bool largePageFailOnError; | |||
bool largePageFailedToSatisfy; | |||
bool isDoubleMapRequested; /** Value of -XXgc:enableDoubleMapping <true> or -XXgc:disableDoubleMapping <false> specified by the user */ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should not really refer to option name directly (they are specific for OpenJ9). let alone (in theory) they can be even set by some other means like shell environmental variables, property files etc.
This update is required by eclipse-openj9/openj9#8254 Signed-off-by: Igor Braga <higorb1@gmail.com>
25f1a7f
to
54e7090
Compare
@genie-omr build all |
Change control access of isLargePage in MemoryManager to public eclipse-omr#4701 Add arraylet double map request field eclipse-omr#4704 Introduce double mapping verbose GC option for balanced GC policy where it outputs "true" if arraylet double mapping is enabled and "false" otherwise eclipse-omr#4705 Signed-off-by: Igor Braga <higorb1@gmail.com>
In systems that support huge pages, the heap is created using the available huge pages (normally 2MB). The path taken to create a heap with huge pages is different from the one taken when normal page sizes are used. In order for double map to work, heap must be created using mmap with a file descriptor associated with the heap. However, doing that with huge pages is not supported in early glibc versions; in such versions, glibc only supports mmap + MAP_HUGETLB with anonymous mapping, which is the opposite of what we want (with anonymous mapping we cannot use a file descriptor). For now we disable double mapping whenever huge pages are used; however in a later release we optimally want to enable it by using memfd_create(2) which also returns a file descriptor just like shm_open(3) but it uses the same semantics as other anonymous memory allocations unlike shm_open(3). Introduce double mapping verbose GC option for balanced GC policy This PR is dependent of eclipse-omr/omr#4701 Signed-off-by: Igor Braga <higorb1@gmail.com>
Change control access of isLargePage in MemoryManager to public
This update is required by eclipse-openj9/openj9#8254
Related to issue: #4703
Signed-off-by: Igor Braga higorb1@gmail.com