RFR: 8194249: SA: G1HeapRegionTable#getByAddress() returns incorrect HeapRegion

Yasumasa Suenaga yasuenag at gmail.com
Sun Dec 31 04:33:03 UTC 2017


Hi David,


> How did you submit to mach5 ???

I'm using Submit Repo for testing:
   https://wiki.openjdk.java.net/display/Build/Submit+Repo


> Anyway the failure is with:

Thanks!
I've fixed them in new webrev:
   http://cr.openjdk.java.net/~ysuenaga/JDK-8194249/webrev.01/

This webrev has passed Mach 5 tier 1 tests in Submit Repo:
   http://java.se.oracle.com:10065/mdash/jobs/mach5-one-ysuenaga-JDK-8194249-20171231-0202-8291


Yasumasa


On 2017/12/30 10:31, David Holmes wrote:
> Hi Yasumasa,
> 
> Not a review ...
> 
> On 29/12/2017 11:16 PM, Yasumasa Suenaga wrote:
>> Hi all,
>>
>> G1HeapRegionTable#getByAddress() returns incorrect HeapRegion which contains incorrect address. We can see it in Stack Memory window on HSDB. Some oop addresses are shown as Free Region (attached image).
>>
>> G1HeapRegion#getByAddress() should create HeapRegion instance from the address in _biased_base array.
>>
>> I uploaded webrev. Could you review it?
>>
>>    http://cr.openjdk.java.net/~ysuenaga/JDK-8194249/webrev.00/
>>
>> I've tested this change with test/hotspot/jtreg/serviceability/sa, it works fine.
>> But I received some failure from Mach 5. I also tested this change via submit repos.
>>
>> http://java.se.oracle.com:10065/mdash/jobs/mach5-one-ysuenaga-JDK-8194249-20171228-0605-8272
>>
>> I cannot access this URL. Could you share the result?
> 
> How did you submit to mach5 ???
> 
> Anyway the failure is with:
> 
> test/hotspot/jtreg/serviceability/sa/TestG1HeapRegion.java
> 
> On linux and OS X:
> 
>   stderr: [Exception in thread "main" java.lang.NullPointerException
>      at TestG1HeapRegion$G1HeapRegionTestClosure.doSpace(TestG1HeapRegion.java:70)
>      at jdk.hotspot.agent/sun.jvm.hotspot.gc.g1.G1CollectedHeap.heapRegionIterate(G1CollectedHeap.java:121)
>      at TestG1HeapRegion.scanHeapRegion(TestG1HeapRegion.java:81)
>      at TestG1HeapRegion.main(TestG1HeapRegion.java:129)
> 
> On Solaris sparcv9:
> 
>   stderr: [Exception in thread "main" java.lang.RuntimeException: Address of HeapRegion does not match.: expected 0x00000007afb00000 to equal 0x00000007afc00000
>      at jdk.test.lib.Asserts.fail(Asserts.java:594)
>      at jdk.test.lib.Asserts.assertEquals(Asserts.java:205)
>      at TestG1HeapRegion$G1HeapRegionTestClosure.doSpace(TestG1HeapRegion.java:70)
>      at jdk.hotspot.agent/sun.jvm.hotspot.gc.g1.G1CollectedHeap.heapRegionIterate(G1CollectedHeap.java:121)
>      at TestG1HeapRegion.scanHeapRegion(TestG1HeapRegion.java:81)
>      at TestG1HeapRegion.main(TestG1HeapRegion.java:129)
> ]
> 
> David
> -----
> 
>> Also I cannot access JPRT. So I need a sponsor.
>>
>>
>> Thanks,
>>
>> Yasumasa


More information about the serviceability-dev mailing list