Segmentation fault with NUMA aware ParallelScavange GC

Igor Veresov igor.veresov at oracle.com
Fri Jul 29 10:57:17 UTC 2011


On 7/29/11 12:25 AM, Lokesh Gidra wrote:
>
>>
>> The only thing I can think of is that we started using
>> madvise(MADV_FREE) to uncommit pages in lgrp chunks instead of doing
>> mmap over mmap. I've tested it with earlier kernels and it works fine.
>> It could be the semantics of MADV_FREE somehow changed. jdk6u25 has
>> still the hotspot that would do mmap. So running it would confirm the
>> theory.
>>
> But isn't madvise(MADV_FREE) just frees the pages rather than removing the vma region all together?

Yes, that's what it is supposed to do.

>
>
> Can you please tell me which kernel version did it work fine with? I tried with 6b20 and its still the same. I will try with jdk6u25 as well and let you know.
>
>

It works with 2.6.27 that I have in the lab. I guess it also worked fine 
for 2.6.38 or later, because Andrew Haley tested it when he implemented 
support for transparent huge pages.

>> Alternatively, if you're open to building hotspot, I can send you a
>> patch to try.
>
> Yes, I am. Please send me the patch.
>

I initially thought doing something like that:
http://cr.openjdk.java.net/~iveresov/numa-linux-1/webrev.00/

But since you say that the older version also has this problem it is 
obviously something else. I'll have to find a box where I can put the 
kernel you have.


igor





More information about the hotspot-gc-dev mailing list