RFR: Disable ShHeapUncommit on too-large large-pages
Roman Kennke
rkennke at redhat.com
Tue Sep 11 07:29:21 UTC 2018
Am 11.09.2018 um 09:24 schrieb Aleksey Shipilev:
> On 09/11/2018 09:22 AM, Roman Kennke wrote:
>> Am 11.09.2018 um 09:08 schrieb Aleksey Shipilev:
>>> On 09/10/2018 11:45 PM, Roman Kennke wrote:
>>>> OMG, the webrev was totally garbled. Look at this one:
>>>> cr.openjdk.java.net/~rkennke/disable-uncommit/webrev.01/
>>>
>>> *) I'd say the condition in ShenandoahHeapRegion::setup_sizes should be "if (ShenandoahUncommit)"?
>>> This way it captures the intent clearly. And the comment before it should mention uncommit, not
>>> mem-protection.
>>>
>>> Otherwise looks okay.
>>>
>>> Thanks,
>>> -Aleksey
>>>
>>>
>>
>> Like this?
>>
>> Incremental:
>> http://cr.openjdk.java.net/~rkennke/disable-uncommit/webrev.01.diff/
>
> Yes, like that. Does it still pass tier3 with uber-large pages?
>
No. Of course this is a mistake:
diff -r 03c6138dd68c
src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp
--- a/src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp Tue Sep
11 03:15:46 2018 -0400
+++ b/src/hotspot/share/gc/shenandoah/shenandoahHeapRegion.cpp Tue Sep
11 03:29:01 2018 -0400
@@ -618,7 +618,7 @@
// Otherwise, uncommitting one region may falsely uncommit the adjacent
// regions too.
// Also see shenandoahArguments.cpp, where it handles UseLargePages.
- if (ShenandoahUncommit) {
+ if (UseLargePages && ShenandoahUncommit) {
region_size = MAX2(region_size, os::large_page_size());
}
Ok?
Roman
More information about the shenandoah-dev
mailing list