From rkennke at redhat.com Tue May 2 17:31:44 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 2 May 2017 19:31:44 +0200
Subject: RFR: Adjust heuristics for running with update-refs phase
Message-ID: <06231207-5ead-2979-901e-40d503224484@redhat.com>
When running with -XX:+ShenandoahUpdateRefsEarly, heuristics need to
work differently because we're reclaiming the cset before marking, not
after. With current settings, we're not using ~40% of the heap when
running with update-refs. Updating refs in a separate cycle also breaks
the funny ping-ponging of GC cycles we have seen early. We can thus skip
over the extra handling for the expected cset-reclaimed-space, which
also makes us use all of the heap.
http://cr.openjdk.java.net/~rkennke/update-refs-heuristics/webrev.00/
Notice that this means we now tend to run into full-gc during update
refs phase. We need to solve this by implementing degeneration of
update-refs just like we did with marking, i.e. if we run OOM during
update-refs, stop the world and finish updating refs under the pause,
instead of going into full-gc. This is not part of this patch though.
We also need different thresholds when running with update-refs. Doesn't
make much sense to fiddle with this before we have degenerated update-refs.
Ok to push?
Roman
From shade at redhat.com Tue May 2 17:35:58 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 2 May 2017 19:35:58 +0200
Subject: RFR: Adjust heuristics for running with update-refs phase
In-Reply-To: <06231207-5ead-2979-901e-40d503224484@redhat.com>
References: <06231207-5ead-2979-901e-40d503224484@redhat.com>
Message-ID:
On 05/02/2017 07:31 PM, Roman Kennke wrote:
> When running with -XX:+ShenandoahUpdateRefsEarly, heuristics need to
> work differently because we're reclaiming the cset before marking, not
> after. With current settings, we're not using ~40% of the heap when
> running with update-refs. Updating refs in a separate cycle also breaks
> the funny ping-ponging of GC cycles we have seen early. We can thus skip
> over the extra handling for the expected cset-reclaimed-space, which
> also makes us use all of the heap.
>
> http://cr.openjdk.java.net/~rkennke/update-refs-heuristics/webrev.00/
>
>
> Notice that this means we now tend to run into full-gc during update
> refs phase. We need to solve this by implementing degeneration of
> update-refs just like we did with marking, i.e. if we run OOM during
> update-refs, stop the world and finish updating refs under the pause,
> instead of going into full-gc. This is not part of this patch though.
>
> We also need different thresholds when running with update-refs. Doesn't
> make much sense to fiddle with this before we have degenerated update-refs.
>
> Ok to push?
Makes sense. Looks good.
-Aleksey
From roman at kennke.org Tue May 2 18:28:01 2017
From: roman at kennke.org (roman at kennke.org)
Date: Tue, 02 May 2017 18:28:01 +0000
Subject: hg: shenandoah/jdk9/hotspot: Adjust heuristics for running with
update-refs phase.
Message-ID: <201705021828.v42IS1uI021193@aojmv0008.oracle.com>
Changeset: 6c9a62410da8
Author: rkennke
Date: 2017-05-02 20:26 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/6c9a62410da8
Adjust heuristics for running with update-refs phase.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
From zgu at redhat.com Tue May 2 18:34:03 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Tue, 2 May 2017 14:34:03 -0400
Subject: RFR: Adjust heuristics for running with update-refs phase
In-Reply-To: <06231207-5ead-2979-901e-40d503224484@redhat.com>
References: <06231207-5ead-2979-901e-40d503224484@redhat.com>
Message-ID: <82e593df-bdf4-7b00-ef06-7665fb1d64c8@redhat.com>
498 size_t available = free_capacity - free_used;
499 uintx factor = _free_threshold;
500 size_t cset_threshold = 0;
501 if (!update_refs_early()) {
502 // Count in the memory available after cset reclamation.
503 cset_threshold = (size_t) _cset_history->davg();
504 size_t cset_threshold = (size_t) _cset_history->davg();
505 size_t cset = MIN2(_bytes_in_cset, (cset_threshold *
capacity) / 100);
506 available += cset;
507 factor += cset_threshold;
508 }
509
There are two definitions of cset_threshold variables, and #503 and 504
are dup ...
-Zhengyu
On 05/02/2017 01:31 PM, Roman Kennke wrote:
> When running with -XX:+ShenandoahUpdateRefsEarly, heuristics need to
> work differently because we're reclaiming the cset before marking, not
> after. With current settings, we're not using ~40% of the heap when
> running with update-refs. Updating refs in a separate cycle also breaks
> the funny ping-ponging of GC cycles we have seen early. We can thus skip
> over the extra handling for the expected cset-reclaimed-space, which
> also makes us use all of the heap.
>
> http://cr.openjdk.java.net/~rkennke/update-refs-heuristics/webrev.00/
>
>
> Notice that this means we now tend to run into full-gc during update
> refs phase. We need to solve this by implementing degeneration of
> update-refs just like we did with marking, i.e. if we run OOM during
> update-refs, stop the world and finish updating refs under the pause,
> instead of going into full-gc. This is not part of this patch though.
>
> We also need different thresholds when running with update-refs. Doesn't
> make much sense to fiddle with this before we have degenerated update-refs.
>
> Ok to push?
>
> Roman
>
>
>
From roman at kennke.org Tue May 2 18:45:52 2017
From: roman at kennke.org (roman at kennke.org)
Date: Tue, 02 May 2017 18:45:52 +0000
Subject: hg: shenandoah/jdk9/hotspot: Remove duplicated cset_threshold
declaration/definition.
Message-ID: <201705021845.v42IjriY028915@aojmv0008.oracle.com>
Changeset: c58bf8de878c
Author: rkennke
Date: 2017-05-02 20:44 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/c58bf8de878c
Remove duplicated cset_threshold declaration/definition.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
From rkennke at redhat.com Tue May 2 18:45:25 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 2 May 2017 20:45:25 +0200
Subject: RFR: Adjust heuristics for running with update-refs phase
In-Reply-To: <82e593df-bdf4-7b00-ef06-7665fb1d64c8@redhat.com>
References: <06231207-5ead-2979-901e-40d503224484@redhat.com>
<82e593df-bdf4-7b00-ef06-7665fb1d64c8@redhat.com>
Message-ID: <590d9967-80a5-47a8-f549-caf5c649fbcf@redhat.com>
Am 02.05.2017 um 20:34 schrieb Zhengyu Gu:
>
> 498 size_t available = free_capacity - free_used;
> 499 uintx factor = _free_threshold;
> 500 size_t cset_threshold = 0;
> 501 if (!update_refs_early()) {
> 502 // Count in the memory available after cset reclamation.
> 503 cset_threshold = (size_t) _cset_history->davg();
> 504 size_t cset_threshold = (size_t) _cset_history->davg();
> 505 size_t cset = MIN2(_bytes_in_cset, (cset_threshold *
> capacity) / 100);
> 506 available += cset;
> 507 factor += cset_threshold;
> 508 }
> 509
>
> There are two definitions of cset_threshold variables, and #503 and
> 504 are dup ...
Oops :-)
Fixed with a small followup patch.
Thanks for finding!
Roman
From shade at redhat.com Wed May 3 11:21:08 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 3 May 2017 13:21:08 +0200
Subject: RFR (S): Conditional matrix cleanup
Message-ID:
Hi,
Turns out, the significant part of per-region matrix cleanup are the actual
stores. In most of our scenarios the matrix is very sparse, and therefore it
helps to avoid writes by checking if matrix element is set before the store:
http://cr.openjdk.java.net/~shade/shenandoah/matrix-clear-conditional/webrev.01/
Improves recycling and final mark times (when matrix is enabled):
Before:
Recycle = 0.86 s (a = 8447 us) (n = 102)
(lvls, us = 8008, 8223, 8496, 8613, 9207)
After:
Recycle = 0.52 s (a = 5076 us) (n = 102)
(lvls, us = 4668, 4766, 4863, 5215, 7828)
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From rkennke at redhat.com Wed May 3 13:24:18 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 3 May 2017 15:24:18 +0200
Subject: RFR (S): Conditional matrix cleanup
In-Reply-To:
References:
Message-ID: <3f50a281-4d54-597e-f2d3-c858276e7312@redhat.com>
Am 03.05.2017 um 13:21 schrieb Aleksey Shipilev:
> Hi,
>
> Turns out, the significant part of per-region matrix cleanup are the actual
> stores. In most of our scenarios the matrix is very sparse, and therefore it
> helps to avoid writes by checking if matrix element is set before the store:
> http://cr.openjdk.java.net/~shade/shenandoah/matrix-clear-conditional/webrev.01/
>
> Improves recycling and final mark times (when matrix is enabled):
>
> Before:
>
> Recycle = 0.86 s (a = 8447 us) (n = 102)
> (lvls, us = 8008, 8223, 8496, 8613, 9207)
>
> After:
>
> Recycle = 0.52 s (a = 5076 us) (n = 102)
> (lvls, us = 4668, 4766, 4863, 5215, 7828)
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
Yes!
From ashipile at redhat.com Wed May 3 13:28:44 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 03 May 2017 13:28:44 +0000
Subject: hg: shenandoah/jdk9/hotspot: Conditional matrix cleanup.
Message-ID: <201705031328.v43DSiMH029225@aojmv0008.oracle.com>
Changeset: a733f6758591
Author: shade
Date: 2017-05-03 13:32 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/a733f6758591
Conditional matrix cleanup.
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.hpp
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.inline.hpp
From shade at redhat.com Wed May 3 14:12:40 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 3 May 2017 16:12:40 +0200
Subject: RFR (S): Parallelize partial GC cleanup
Message-ID: <0c59ffde-8bd3-9281-b32d-e5157a35a6f3@redhat.com>
Hi,
Matrix and bitmap cleanups take significant time in partial GC. The obvious
solution is to parallelize it at this point, since we have mined out the
sequential improvements.
Fix:
http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/webrev.01/
Improves partial GC times significantly under heavy allocation pressure:
http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/perf.txt
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From zgu at redhat.com Wed May 3 14:20:42 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 3 May 2017 10:20:42 -0400
Subject: RFR (S): Parallelize partial GC cleanup
In-Reply-To: <0c59ffde-8bd3-9281-b32d-e5157a35a6f3@redhat.com>
References: <0c59ffde-8bd3-9281-b32d-e5157a35a6f3@redhat.com>
Message-ID:
ShenandoahCollectionSet already has claim_next() to claim regions for
parallel processing.
Thanks,
-Zhengyu
On 05/03/2017 10:12 AM, Aleksey Shipilev wrote:
> Hi,
>
> Matrix and bitmap cleanups take significant time in partial GC. The obvious
> solution is to parallelize it at this point, since we have mined out the
> sequential improvements.
>
> Fix:
> http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/webrev.01/
>
> Improves partial GC times significantly under heavy allocation pressure:
> http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/perf.txt
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
From shade at redhat.com Wed May 3 14:49:39 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 3 May 2017 16:49:39 +0200
Subject: RFR (S): Parallelize partial GC cleanup
In-Reply-To:
References: <0c59ffde-8bd3-9281-b32d-e5157a35a6f3@redhat.com>
Message-ID:
Ah! Oh!
http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/webrev.02/
Thanks,
-Aleksey
On 05/03/2017 04:20 PM, Zhengyu Gu wrote:
>
> ShenandoahCollectionSet already has claim_next() to claim regions for parallel
> processing.
>
> Thanks,
>
> -Zhengyu
>
> On 05/03/2017 10:12 AM, Aleksey Shipilev wrote:
>> Hi,
>>
>> Matrix and bitmap cleanups take significant time in partial GC. The obvious
>> solution is to parallelize it at this point, since we have mined out the
>> sequential improvements.
>>
>> Fix:
>>
>> http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/webrev.01/
>>
>> Improves partial GC times significantly under heavy allocation pressure:
>> http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/perf.txt
>>
>> Testing: hotspot_gc_shenandoah
>>
>> Thanks,
>> -Aleksey
>>
From zgu at redhat.com Wed May 3 14:53:07 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 3 May 2017 10:53:07 -0400
Subject: RFR (S): Parallelize partial GC cleanup
In-Reply-To:
References: <0c59ffde-8bd3-9281-b32d-e5157a35a6f3@redhat.com>
Message-ID: <2804c0e8-e9c8-f51b-686f-3da7cc369134@redhat.com>
Ok.
-Zhengyu
On 05/03/2017 10:49 AM, Aleksey Shipilev wrote:
> Ah! Oh!
>
> http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/webrev.02/
>
> Thanks,
> -Aleksey
>
> On 05/03/2017 04:20 PM, Zhengyu Gu wrote:
>>
>> ShenandoahCollectionSet already has claim_next() to claim regions for parallel
>> processing.
>>
>> Thanks,
>>
>> -Zhengyu
>>
>> On 05/03/2017 10:12 AM, Aleksey Shipilev wrote:
>>> Hi,
>>>
>>> Matrix and bitmap cleanups take significant time in partial GC. The obvious
>>> solution is to parallelize it at this point, since we have mined out the
>>> sequential improvements.
>>>
>>> Fix:
>>>
>>> http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/webrev.01/
>>>
>>> Improves partial GC times significantly under heavy allocation pressure:
>>> http://cr.openjdk.java.net/~shade/shenandoah/partial-recycle-parallel/perf.txt
>>>
>>> Testing: hotspot_gc_shenandoah
>>>
>>> Thanks,
>>> -Aleksey
>>>
>
>
From ashipile at redhat.com Wed May 3 15:16:35 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 03 May 2017 15:16:35 +0000
Subject: hg: shenandoah/jdk9/hotspot: Parallelize partial GC cleanup.
Message-ID: <201705031516.v43FGZmx010994@aojmv0008.oracle.com>
Changeset: 25c23c6cb221
Author: shade
Date: 2017-05-03 17:15 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/25c23c6cb221
Parallelize partial GC cleanup.
! src/share/vm/gc/shenandoah/shenandoahHeapRegion.cpp
! src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
From rkennke at redhat.com Wed May 3 16:58:27 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 3 May 2017 18:58:27 +0200
Subject: RFR: Degenerating update-references phase
Message-ID: <9a0dbb49-bacc-bcdd-0801-25e411f47a40@redhat.com>
This patch implements degenerating of update-refs phase in much the same
way (and the same reasons) as we did for concurrent marking: when we run
OOM during (concurrent) update-references, it seems likely that we're
close to finish, and thus, instead of starting from scratch and doing a
full-gc, finish updating refs under the final-update-refs-pause, and
reclaim memory. When we do this, we're pessimizing adaptive heuristics,
so hopefully next time we have more room and not run into this.
http://cr.openjdk.java.net/~rkennke/degen-uprefs/webrev.00/
Testing: hotspot_gc_shenandoah, specjvm compiler
Ok?
Roman
From shade at redhat.com Wed May 3 17:09:23 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 3 May 2017 19:09:23 +0200
Subject: RFR: Degenerating update-references phase
In-Reply-To: <9a0dbb49-bacc-bcdd-0801-25e411f47a40@redhat.com>
References: <9a0dbb49-bacc-bcdd-0801-25e411f47a40@redhat.com>
Message-ID: <637545c0-7145-155c-9c6f-18cb087c56ea@redhat.com>
On 05/03/2017 06:58 PM, Roman Kennke wrote:
> This patch implements degenerating of update-refs phase in much the same
> way (and the same reasons) as we did for concurrent marking: when we run
> OOM during (concurrent) update-references, it seems likely that we're
> close to finish, and thus, instead of starting from scratch and doing a
> full-gc, finish updating refs under the final-update-refs-pause, and
> reclaim memory. When we do this, we're pessimizing adaptive heuristics,
> so hopefully next time we have more room and not run into this.
>
> http://cr.openjdk.java.net/~rkennke/degen-uprefs/webrev.00/
In here:
492 void optimize_free_threshold() {
493 if (_successful_cm_cycles_in_a_row > ShenandoahHappyCyclesThreshold &&
494 _free_threshold > ShenandoahMinFreeThreshold) {
...it ignores _successful_uprefs_cycles_in_a_row, but called from
record_uprefs_success()?
Otherwise looks good to me.
-Aleksey
From rkennke at redhat.com Wed May 3 17:26:54 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 3 May 2017 19:26:54 +0200
Subject: RFR: Degenerating update-references phase
In-Reply-To: <637545c0-7145-155c-9c6f-18cb087c56ea@redhat.com>
References: <9a0dbb49-bacc-bcdd-0801-25e411f47a40@redhat.com>
<637545c0-7145-155c-9c6f-18cb087c56ea@redhat.com>
Message-ID: <9f5d5c13-fa01-ad1c-5f2b-b08cf6ba1b8e@redhat.com>
Am 03.05.2017 um 19:09 schrieb Aleksey Shipilev:
> On 05/03/2017 06:58 PM, Roman Kennke wrote:
>> This patch implements degenerating of update-refs phase in much the same
>> way (and the same reasons) as we did for concurrent marking: when we run
>> OOM during (concurrent) update-references, it seems likely that we're
>> close to finish, and thus, instead of starting from scratch and doing a
>> full-gc, finish updating refs under the final-update-refs-pause, and
>> reclaim memory. When we do this, we're pessimizing adaptive heuristics,
>> so hopefully next time we have more room and not run into this.
>>
>> http://cr.openjdk.java.net/~rkennke/degen-uprefs/webrev.00/
> In here:
>
> 492 void optimize_free_threshold() {
> 493 if (_successful_cm_cycles_in_a_row > ShenandoahHappyCyclesThreshold &&
> 494 _free_threshold > ShenandoahMinFreeThreshold) {
>
> ...it ignores _successful_uprefs_cycles_in_a_row, but called from
> record_uprefs_success()?
>
> Otherwise looks good to me.
Right.
http://cr.openjdk.java.net/~rkennke/degen-uprefs/webrev.02/
Better?
Roman
From shade at redhat.com Wed May 3 17:29:33 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 3 May 2017 19:29:33 +0200
Subject: RFR: Degenerating update-references phase
In-Reply-To: <9f5d5c13-fa01-ad1c-5f2b-b08cf6ba1b8e@redhat.com>
References: <9a0dbb49-bacc-bcdd-0801-25e411f47a40@redhat.com>
<637545c0-7145-155c-9c6f-18cb087c56ea@redhat.com>
<9f5d5c13-fa01-ad1c-5f2b-b08cf6ba1b8e@redhat.com>
Message-ID: <66795191-902f-94c3-297f-c165c0fb5de5@redhat.com>
On 05/03/2017 07:26 PM, Roman Kennke wrote:
> Am 03.05.2017 um 19:09 schrieb Aleksey Shipilev:
>> On 05/03/2017 06:58 PM, Roman Kennke wrote:
>>> This patch implements degenerating of update-refs phase in much the same
>>> way (and the same reasons) as we did for concurrent marking: when we run
>>> OOM during (concurrent) update-references, it seems likely that we're
>>> close to finish, and thus, instead of starting from scratch and doing a
>>> full-gc, finish updating refs under the final-update-refs-pause, and
>>> reclaim memory. When we do this, we're pessimizing adaptive heuristics,
>>> so hopefully next time we have more room and not run into this.
>>>
>>> http://cr.openjdk.java.net/~rkennke/degen-uprefs/webrev.00/
>> In here:
>>
>> 492 void optimize_free_threshold() {
>> 493 if (_successful_cm_cycles_in_a_row > ShenandoahHappyCyclesThreshold &&
>> 494 _free_threshold > ShenandoahMinFreeThreshold) {
>>
>> ...it ignores _successful_uprefs_cycles_in_a_row, but called from
>> record_uprefs_success()?
>>
>> Otherwise looks good to me.
> Right.
>
> http://cr.openjdk.java.net/~rkennke/degen-uprefs/webrev.02/
Yup! Go!
-Aleksey
From roman at kennke.org Wed May 3 17:56:10 2017
From: roman at kennke.org (roman at kennke.org)
Date: Wed, 03 May 2017 17:56:10 +0000
Subject: hg: shenandoah/jdk9/hotspot: Degenerating update-references phase.
Message-ID: <201705031756.v43HuAME020173@aojmv0008.oracle.com>
Changeset: 5230fdb749d3
Author: rkennke
Date: 2017-05-03 19:54 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/5230fdb749d3
Degenerating update-references phase.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
From shade at redhat.com Thu May 4 09:07:50 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 4 May 2017 11:07:50 +0200
Subject: RFR (S): Optimize partial GC preparation
Message-ID:
Hi,
We can massage partial GC preparation code to be more efficient. Matrix scans
take the longest time there, so we want to scan the matix once, not twice. Plus
other optimizations:
http://cr.openjdk.java.net/~shade/shenandoah/partial-prepare-perf-2/webrev.01/
Improves performance a lot:
http://cr.openjdk.java.net/~shade/shenandoah/partial-prepare-perf-2/perf.txt
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From roman at kennke.org Thu May 4 09:09:28 2017
From: roman at kennke.org (Roman Kennke)
Date: Thu, 4 May 2017 11:09:28 +0200
Subject: RFR (S): Optimize partial GC preparation
In-Reply-To:
References:
Message-ID:
Am 04.05.2017 um 11:07 schrieb Aleksey Shipilev:
> Hi,
>
> We can massage partial GC preparation code to be more efficient. Matrix scans
> take the longest time there, so we want to scan the matix once, not twice. Plus
> other optimizations:
> http://cr.openjdk.java.net/~shade/shenandoah/partial-prepare-perf-2/webrev.01/
>
> Improves performance a lot:
> http://cr.openjdk.java.net/~shade/shenandoah/partial-prepare-perf-2/perf.txt
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
>
Looks good to me.
Roman
From ashipile at redhat.com Thu May 4 10:02:15 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 04 May 2017 10:02:15 +0000
Subject: hg: shenandoah/jdk9/hotspot: Optimize partial GC preparation.
Message-ID: <201705041002.v44A2F7d009500@aojmv0008.oracle.com>
Changeset: 811de2a07304
Author: shade
Date: 2017-05-04 12:00 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/811de2a07304
Optimize partial GC preparation.
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.hpp
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.inline.hpp
! src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
! src/share/vm/gc/shenandoah/shenandoahPartialGC.hpp
From shade at redhat.com Thu May 4 16:50:41 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 4 May 2017 18:50:41 +0200
Subject: RFR (S): Replace ShHeapRegionSet::get with get_fast
Message-ID: <95b157ff-c292-b5c7-3de9-2eda46bc376b@redhat.com>
Hi,
We knew from concmark performance work that the excess branch in get() costs us.
It returns NULL if (idx < active). Today I reviewed all the places in Shenandoah
where we call get(), and it seems almost everywhere NULL is not acceptable,
leading straight to SEGV. It makes sense to use get_fast there then, or indeed
rename get -> get_or_null, get_fast -> get.
Fix:
http://cr.openjdk.java.net/~shade/shenandoah/hrs-get/webrev.01/
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From roman at kennke.org Thu May 4 17:00:28 2017
From: roman at kennke.org (Roman Kennke)
Date: Thu, 4 May 2017 19:00:28 +0200
Subject: RFR (S): Replace ShHeapRegionSet::get with get_fast
In-Reply-To: <95b157ff-c292-b5c7-3de9-2eda46bc376b@redhat.com>
References: <95b157ff-c292-b5c7-3de9-2eda46bc376b@redhat.com>
Message-ID: <1a4f5cb9-6eef-3365-70c5-4480b1b07bea@kennke.org>
Am 04.05.2017 um 18:50 schrieb Aleksey Shipilev:
> Hi,
>
> We knew from concmark performance work that the excess branch in get() costs us.
> It returns NULL if (idx < active). Today I reviewed all the places in Shenandoah
> where we call get(), and it seems almost everywhere NULL is not acceptable,
> leading straight to SEGV. It makes sense to use get_fast there then, or indeed
> rename get -> get_or_null, get_fast -> get.
>
> Fix:
> http://cr.openjdk.java.net/~shade/shenandoah/hrs-get/webrev.01/
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
>
This sounds very reasonable. Yes!
Roman
From ashipile at redhat.com Thu May 4 17:05:04 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 04 May 2017 17:05:04 +0000
Subject: hg: shenandoah/jdk9/hotspot: Replace ShHeapRegionSet::get with
get_fast.
Message-ID: <201705041705.v44H54Tg008855@aojmv0008.oracle.com>
Changeset: 521309883e98
Author: shade
Date: 2017-05-04 19:03 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/521309883e98
Replace ShHeapRegionSet::get with get_fast.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.inline.hpp
! src/share/vm/gc/shenandoah/shenandoahFreeSet.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegionSet.cpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegionSet.hpp
From rkennke at redhat.com Thu May 4 17:17:23 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Thu, 4 May 2017 19:17:23 +0200
Subject: RFR: Use peak occupancy to optimize/pessimize free_threshold in
adaptive heuristics
Message-ID: <09784453-e9a8-ccff-b739-5b4d1a59eea2@redhat.com>
Hi,
Aleksey suggested this: currently we're optimizing the free-threshold
after N successful GC cycles, and pessimize it whenever we run into OOM
(i.e. 100% heap occupancy), thus leading us into relatively frequent
degenerated marking or update-refs cycles. The idea is to pessimize
earlier. That means, observe the peak occupancy (right before
reclamation) and pessimize if peak occupancy is less than a threshold.
Here I'm re-using ShenandoahMinFreeThreshold for this. This should
balance our GC cycles around that threshold and leave some room for
alloc spikes, thus leading to fewer degen cycles or full-gcs.
http://cr.openjdk.java.net/~rkennke/adaptive-minfree/webrev.00/
Testing: hotspot_gc_shenandoah, specjvm-compiler
Ok?
From shade at redhat.com Thu May 4 17:31:25 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 4 May 2017 19:31:25 +0200
Subject: RFR: Use peak occupancy to optimize/pessimize free_threshold in
adaptive heuristics
In-Reply-To: <09784453-e9a8-ccff-b739-5b4d1a59eea2@redhat.com>
References: <09784453-e9a8-ccff-b739-5b4d1a59eea2@redhat.com>
Message-ID:
On 05/04/2017 07:17 PM, Roman Kennke wrote:
> That means, observe the peak occupancy (right before
> reclamation) and pessimize if peak occupancy is less than a threshold.
> Here I'm re-using ShenandoahMinFreeThreshold for this. This should
> balance our GC cycles around that threshold and leave some room for
> alloc spikes, thus leading to fewer degen cycles or full-gcs.
>
> http://cr.openjdk.java.net/~rkennke/adaptive-minfree/webrev.00/
Good stuff, I have zero degens on Compiler.compiler now.
I think the capturing is slightly wrong though: it records occupancy at final
mark and before update-refs, overwriting the value. Which means if update-refs
managed to clean up enough (as they do), we may be blind about the case when
there is not enough space right after the mark. That would not be visible on
workloads where there is enough immediate garbage reclaimed after mark.
I think we need to store MAX of observed occupancies, and reset it to zero when
we claim it in heuristics.
Thanks,
-Aleksey
From roman at kennke.org Thu May 4 17:38:03 2017
From: roman at kennke.org (Roman Kennke)
Date: Thu, 4 May 2017 19:38:03 +0200
Subject: RFR: Use peak occupancy to optimize/pessimize free_threshold in
adaptive heuristics
In-Reply-To:
References: <09784453-e9a8-ccff-b739-5b4d1a59eea2@redhat.com>
Message-ID: <3a2b4a39-6f86-b801-fff6-c12a1e92eaec@kennke.org>
Am 04.05.2017 um 19:31 schrieb Aleksey Shipilev:
> On 05/04/2017 07:17 PM, Roman Kennke wrote:
>> That means, observe the peak occupancy (right before
>> reclamation) and pessimize if peak occupancy is less than a threshold.
>> Here I'm re-using ShenandoahMinFreeThreshold for this. This should
>> balance our GC cycles around that threshold and leave some room for
>> alloc spikes, thus leading to fewer degen cycles or full-gcs.
>>
>> http://cr.openjdk.java.net/~rkennke/adaptive-minfree/webrev.00/
> Good stuff, I have zero degens on Compiler.compiler now.
>
> I think the capturing is slightly wrong though: it records occupancy at final
> mark and before update-refs, overwriting the value. Which means if update-refs
> managed to clean up enough (as they do), we may be blind about the case when
> there is not enough space right after the mark. That would not be visible on
> workloads where there is enough immediate garbage reclaimed after mark.
>
> I think we need to store MAX of observed occupancies, and reset it to zero when
> we claim it in heuristics.
Maybe.
Currently we're simply always looking at the last heap occupancy, right
before reclamation, and right before we would query it. Notice that we
do adjust the free-threshold both after marking and after UR.
E.g.:
final-mark:
record-peak-occupancy
reclaim-regions
check for optimize/pessimize
final-update-refs:
record-peak-occupancy
reclaim-regions
check for optimize/pessimize
Is that not ok? For the start? ;-)
From shade at redhat.com Thu May 4 17:41:47 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 4 May 2017 19:41:47 +0200
Subject: RFR: Use peak occupancy to optimize/pessimize free_threshold in
adaptive heuristics
In-Reply-To: <3a2b4a39-6f86-b801-fff6-c12a1e92eaec@kennke.org>
References: <09784453-e9a8-ccff-b739-5b4d1a59eea2@redhat.com>
<3a2b4a39-6f86-b801-fff6-c12a1e92eaec@kennke.org>
Message-ID:
On 05/04/2017 07:38 PM, Roman Kennke wrote:
> Am 04.05.2017 um 19:31 schrieb Aleksey Shipilev:
>> On 05/04/2017 07:17 PM, Roman Kennke wrote:
>>> That means, observe the peak occupancy (right before
>>> reclamation) and pessimize if peak occupancy is less than a threshold.
>>> Here I'm re-using ShenandoahMinFreeThreshold for this. This should
>>> balance our GC cycles around that threshold and leave some room for
>>> alloc spikes, thus leading to fewer degen cycles or full-gcs.
>>>
>>> http://cr.openjdk.java.net/~rkennke/adaptive-minfree/webrev.00/
>> Good stuff, I have zero degens on Compiler.compiler now.
>>
>> I think the capturing is slightly wrong though: it records occupancy at final
>> mark and before update-refs, overwriting the value. Which means if update-refs
>> managed to clean up enough (as they do), we may be blind about the case when
>> there is not enough space right after the mark. That would not be visible on
>> workloads where there is enough immediate garbage reclaimed after mark.
>>
>> I think we need to store MAX of observed occupancies, and reset it to zero when
>> we claim it in heuristics.
> Maybe.
> Currently we're simply always looking at the last heap occupancy, right
> before reclamation, and right before we would query it. Notice that we
> do adjust the free-threshold both after marking and after UR.
>
> E.g.:
> final-mark:
> record-peak-occupancy
> reclaim-regions
> check for optimize/pessimize
>
> final-update-refs:
> record-peak-occupancy
> reclaim-regions
> check for optimize/pessimize
>
> Is that not ok? For the start? ;-)
Um, I see this guarded with !update_refs_early():
528 virtual void record_cm_success() {
529 ShenandoahHeuristics::record_cm_success();
530 if (! update_refs_early()) {
531 handle_gc_success(_successful_cm_cycles_in_a_row);
532 }
533 }
Which seems to tell different story: with UR enabled, we do not adjust after CM.
And actually, I think it is correct to compute the max over all phases in the
cycle to decide heuristics move. We only need to max, not destructively overwrite.
-Aleksey
From rkennke at redhat.com Thu May 4 17:46:01 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Thu, 4 May 2017 19:46:01 +0200
Subject: RFR: Use peak occupancy to optimize/pessimize free_threshold in
adaptive heuristics
In-Reply-To:
References: <09784453-e9a8-ccff-b739-5b4d1a59eea2@redhat.com>
<3a2b4a39-6f86-b801-fff6-c12a1e92eaec@kennke.org>
Message-ID: <973a336a-0ffc-8a66-953f-e3d718c2da22@redhat.com>
Am 04.05.2017 um 19:41 schrieb Aleksey Shipilev:
> On 05/04/2017 07:38 PM, Roman Kennke wrote:
>> Am 04.05.2017 um 19:31 schrieb Aleksey Shipilev:
>>> On 05/04/2017 07:17 PM, Roman Kennke wrote:
>>>> That means, observe the peak occupancy (right before
>>>> reclamation) and pessimize if peak occupancy is less than a threshold.
>>>> Here I'm re-using ShenandoahMinFreeThreshold for this. This should
>>>> balance our GC cycles around that threshold and leave some room for
>>>> alloc spikes, thus leading to fewer degen cycles or full-gcs.
>>>>
>>>> http://cr.openjdk.java.net/~rkennke/adaptive-minfree/webrev.00/
>>> Good stuff, I have zero degens on Compiler.compiler now.
>>>
>>> I think the capturing is slightly wrong though: it records occupancy at final
>>> mark and before update-refs, overwriting the value. Which means if update-refs
>>> managed to clean up enough (as they do), we may be blind about the case when
>>> there is not enough space right after the mark. That would not be visible on
>>> workloads where there is enough immediate garbage reclaimed after mark.
>>>
>>> I think we need to store MAX of observed occupancies, and reset it to zero when
>>> we claim it in heuristics.
>> Maybe.
>> Currently we're simply always looking at the last heap occupancy, right
>> before reclamation, and right before we would query it. Notice that we
>> do adjust the free-threshold both after marking and after UR.
>>
>> E.g.:
>> final-mark:
>> record-peak-occupancy
>> reclaim-regions
>> check for optimize/pessimize
>>
>> final-update-refs:
>> record-peak-occupancy
>> reclaim-regions
>> check for optimize/pessimize
>>
>> Is that not ok? For the start? ;-)
> Um, I see this guarded with !update_refs_early():
>
> 528 virtual void record_cm_success() {
> 529 ShenandoahHeuristics::record_cm_success();
> 530 if (! update_refs_early()) {
> 531 handle_gc_success(_successful_cm_cycles_in_a_row);
> 532 }
> 533 }
>
> Which seems to tell different story: with UR enabled, we do not adjust after CM.
> And actually, I think it is correct to compute the max over all phases in the
> cycle to decide heuristics move. We only need to max, not destructively overwrite.
ok. Like this?
http://cr.openjdk.java.net/~rkennke/adaptive-minfree/webrev.01/
Roman
From shade at redhat.com Thu May 4 17:51:16 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 4 May 2017 19:51:16 +0200
Subject: RFR: Use peak occupancy to optimize/pessimize free_threshold in
adaptive heuristics
In-Reply-To: <973a336a-0ffc-8a66-953f-e3d718c2da22@redhat.com>
References: <09784453-e9a8-ccff-b739-5b4d1a59eea2@redhat.com>
<3a2b4a39-6f86-b801-fff6-c12a1e92eaec@kennke.org>
<973a336a-0ffc-8a66-953f-e3d718c2da22@redhat.com>
Message-ID: <0b58a11f-845e-ac1e-9de9-d9b9b90b7dcd@redhat.com>
On 05/04/2017 07:46 PM, Roman Kennke wrote:
> Am 04.05.2017 um 19:41 schrieb Aleksey Shipilev:
>> On 05/04/2017 07:38 PM, Roman Kennke wrote:
>> Which seems to tell different story: with UR enabled, we do not adjust after CM.
>> And actually, I think it is correct to compute the max over all phases in the
>> cycle to decide heuristics move. We only need to max, not destructively overwrite.
>
> ok. Like this?
>
> http://cr.openjdk.java.net/~rkennke/adaptive-minfree/webrev.01/
Yes! Looks and runs good.
This deserves the backporting to 8u, because our adopters are running with
adaptive by default. Let's see what overnight runs show.
Thanks,
-Aleksey
From roman at kennke.org Thu May 4 17:53:15 2017
From: roman at kennke.org (roman at kennke.org)
Date: Thu, 04 May 2017 17:53:15 +0000
Subject: hg: shenandoah/jdk9/hotspot: Use peak occupancy to optimize/pessimize
free_threshold in adaptive heuristics.
Message-ID: <201705041753.v44HrFan020309@aojmv0008.oracle.com>
Changeset: 8ce3d737fe20
Author: rkennke
Date: 2017-05-04 19:44 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/8ce3d737fe20
Use peak occupancy to optimize/pessimize free_threshold in adaptive heuristics.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From shade at redhat.com Fri May 5 12:00:41 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Fri, 5 May 2017 14:00:41 +0200
Subject: RFR: Adaptive heuristics should poll all phases and update at the end
of cycle
Message-ID:
Hi,
Overnight runs discovered the problem in adaptive heuristics. It adjusts the
free threshold on recording the successful CM/UR, but that means it *misses* the
counters from the rest of the cycle, only to capture them (if we are lucky) on
the next cycle.
The answer seems to be asking the heuristics to adjust at the end of the cycle,
plus do the peak polling at the end of each phase and before cleanup. Doing
after each phase is important because e.g. evac phase can do more allocations
without further cleanup. We also have to care about both CM and UR to be happy
before reducing the free threshold.
Patch:
http://cr.openjdk.java.net/~shade/shenandoah/adaptive-fullcycle/webrev.01/
Coupled with printout improvements, this provides the clear view of the GC cycle:
[gc,ergo] GC(13) Reducing free threshold to: 20% (2048M)
...
[gc,ergo] Concurrent marking triggered. Free: 2039M, Target Free: 2048M,
Allocated: 2039M, Threshold: 0M
[gc ] GC(14) Pause Init Mark 1.319ms
[gc ] GC(14) Concurrent marking 8204M->8908M(10240M) 873.952ms
[gc,ergo] GC(14) Total Garbage: 6478M
[gc,ergo] GC(14) Immediate Garbage: 36M, 9 regions
[gc,ergo] GC(14) Garbage to be collected: 5715M (88% of total), 1540 regions
[gc,ergo] GC(14) Live objects to be evacuated: 443M
[gc,ergo] GC(14) Live/garbage ratio in collected regions: 7%
[gc ] GC(14) Pause Final Mark 8908M->8880M(10240M) 10.791ms
[gc ] GC(14) Concurrent evacuation 8880M->9511M(10240M) 149.953ms
[gc ] GC(14) Pause Init Update Refs 9511M->9511M(10240M) 0.069ms
[gc ] GC(14) Concurrent update references 9511M->9892M(10240M) 429.898ms
[gc ] GC(14) Pause Final Update Refs 9892M->3733M(10240M) 1.124ms
[gc ] GC(14) Concurrent reset bitmaps 7.109ms
[gc,ergo] GC(14) Capacity: 10240M, Peak Occupancy: 9892M, Lowest Free: 347M,
Threshold Free: 307M
[gc,ergo] GC(14) Reducing free threshold to: 19% (1945M)
See e.g.: heuristics triggered CM at free threshold of 2048M. Peak occupancy was
at the start of final UR -- 9892M -- and that what heuristics recorded and acted
upon. We know it the target free is 307M (3%) and we have more, so threshold is
reduced.
Testing: SPECjbb2015
Thanks,
-Aleksey
From rkennke at redhat.com Fri May 5 12:48:24 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Fri, 05 May 2017 14:48:24 +0200
Subject: RFR: Adaptive heuristics should poll all phases and update at the
end of cycle
In-Reply-To:
References:
Message-ID: <42644BA6-E247-4A51-9468-365A3B1D472F@redhat.com>
OK! Thanks!
Am 5. Mai 2017 14:00:41 MESZ schrieb Aleksey Shipilev :
>Hi,
>
>Overnight runs discovered the problem in adaptive heuristics. It
>adjusts the
>free threshold on recording the successful CM/UR, but that means it
>*misses* the
>counters from the rest of the cycle, only to capture them (if we are
>lucky) on
>the next cycle.
>
>The answer seems to be asking the heuristics to adjust at the end of
>the cycle,
>plus do the peak polling at the end of each phase and before cleanup.
>Doing
>after each phase is important because e.g. evac phase can do more
>allocations
>without further cleanup. We also have to care about both CM and UR to
>be happy
>before reducing the free threshold.
>
>Patch:
>http://cr.openjdk.java.net/~shade/shenandoah/adaptive-fullcycle/webrev.01/
>
>Coupled with printout improvements, this provides the clear view of the
>GC cycle:
>
>[gc,ergo] GC(13) Reducing free threshold to: 20% (2048M)
>...
>[gc,ergo] Concurrent marking triggered. Free: 2039M, Target Free:
>2048M,
>Allocated: 2039M, Threshold: 0M
>[gc ] GC(14) Pause Init Mark 1.319ms
>[gc ] GC(14) Concurrent marking 8204M->8908M(10240M) 873.952ms
>[gc,ergo] GC(14) Total Garbage: 6478M
>[gc,ergo] GC(14) Immediate Garbage: 36M, 9 regions
>[gc,ergo] GC(14) Garbage to be collected: 5715M (88% of total), 1540
>regions
>[gc,ergo] GC(14) Live objects to be evacuated: 443M
>[gc,ergo] GC(14) Live/garbage ratio in collected regions: 7%
>[gc ] GC(14) Pause Final Mark 8908M->8880M(10240M) 10.791ms
>[gc ] GC(14) Concurrent evacuation 8880M->9511M(10240M) 149.953ms
>[gc ] GC(14) Pause Init Update Refs 9511M->9511M(10240M) 0.069ms
>[gc ] GC(14) Concurrent update references 9511M->9892M(10240M)
>429.898ms
>[gc ] GC(14) Pause Final Update Refs 9892M->3733M(10240M) 1.124ms
>[gc ] GC(14) Concurrent reset bitmaps 7.109ms
>[gc,ergo] GC(14) Capacity: 10240M, Peak Occupancy: 9892M, Lowest Free:
>347M,
>Threshold Free: 307M
>[gc,ergo] GC(14) Reducing free threshold to: 19% (1945M)
>
>See e.g.: heuristics triggered CM at free threshold of 2048M. Peak
>occupancy was
>at the start of final UR -- 9892M -- and that what heuristics recorded
>and acted
>upon. We know it the target free is 307M (3%) and we have more, so
>threshold is
>reduced.
>
>Testing: SPECjbb2015
>
>Thanks,
>-Aleksey
--
Sent from my FairPhone
From ashipile at redhat.com Fri May 5 13:43:25 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 05 May 2017 13:43:25 +0000
Subject: hg: shenandoah/jdk9/hotspot: Adaptive heuristics should poll all
phases and update at the end of cycle.
Message-ID: <201705051343.v45DhP0o014555@aojmv0008.oracle.com>
Changeset: e476f38f2368
Author: shade
Date: 2017-05-05 15:42 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/e476f38f2368
Adaptive heuristics should poll all phases and update at the end of cycle.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From ashipile at redhat.com Fri May 5 14:02:03 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 05 May 2017 14:02:03 +0000
Subject: hg: shenandoah/jdk9/hotspot: Nit: mark-compact phase 3 (Adjust
Pointers) should announce itself as "Phase 3".
Message-ID: <201705051402.v45E234U029757@aojmv0008.oracle.com>
Changeset: 95d72291477e
Author: shade
Date: 2017-05-05 16:00 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/95d72291477e
Nit: mark-compact phase 3 (Adjust Pointers) should announce itself as "Phase 3".
! src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
From shade at redhat.com Fri May 5 17:18:36 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Fri, 5 May 2017 19:18:36 +0200
Subject: Shenandoah allocation failure question
In-Reply-To:
References:
Message-ID: <3065f179-0efb-1d2c-6edc-d4f23ec949de@redhat.com>
(Answered it personally couple of hours ago, reposting here for posterity)
On 04/30/2017 07:25 PM, Mart M?gi wrote:
> I'm writing a Shenandoah log parser as part of my BSC thesis and have a
> question about Allocation failure GC events. Are the following events (mark
> live objects, adjust pointers, move objects) concurrent or STW? Also the last
> line, Pause Full (Allocation Failure), what type of event is that?
"Concurrent" means no pause. Anything starting with "Pause..." is STW.
"Phase X" are the phases of Full GC, and Full GC is STW. I would probably avoid
parsing "gc,phases", and parse only "gc" -- it will say "Pause Full", which is
self-obvious.
Thanks,
-Aleksey
From shade at redhat.com Fri May 5 18:51:36 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Fri, 5 May 2017 20:51:36 +0200
Subject: RFR: Deferred, batched, parallel Matrix cleanup
Message-ID: <62c2acb8-bdc9-f4c7-6f5c-73af72f67d47@redhat.com>
Hi,
The largest problem in our Matrix implementation is the footprint and associated
operation costs. With just 2K regions we have 4MB matrix that we need to at
least clean up sparsely by byte at the end of some phases. With larger number of
regions (e.g. to-gc1 has 8K), this problem is exacerbated further.
There are three things to do:
a) Defer region cleanup: this makes sure we can then...
b) Batch matrix cleanups: this allows more cache-friendly cleanups, see the
comment in SHMatrix::clean_batched. It is a good optimization in itself, but it
also allows to...
c) Parallelize matrix cleanups: lots of regions usually mean large heap, which
means more threads available. This will alleviate matrix cleanup costs. Note
that without batching, you cannot easily avoid false sharing there -- indeed,
this is why the patch performs better than current, already parallelised
recycling in partial GC.
Patch:
http://cr.openjdk.java.net/~shade/shenandoah/matrix-dbp/webrev.01/
Sample experiments on my desktop:
http://cr.openjdk.java.net/~shade/shenandoah/matrix-dbp/perf.txt
4x faster cleanups with "default" 2K regions
up to 18x faster cleanups with artificially high 32K regions
Testing: hotspot_gc_shenandoah, some benchmarks
Thanks,
-Aleksey
From rkennke at redhat.com Fri May 5 19:58:50 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Fri, 05 May 2017 21:58:50 +0200
Subject: RFR: Deferred, batched, parallel Matrix cleanup
In-Reply-To: <62c2acb8-bdc9-f4c7-6f5c-73af72f67d47@redhat.com>
References: <62c2acb8-bdc9-f4c7-6f5c-73af72f67d47@redhat.com>
Message-ID:
Cool! Go!
Am 5. Mai 2017 20:51:36 MESZ schrieb Aleksey Shipilev :
>Hi,
>
>The largest problem in our Matrix implementation is the footprint and
>associated
>operation costs. With just 2K regions we have 4MB matrix that we need
>to at
>least clean up sparsely by byte at the end of some phases. With larger
>number of
>regions (e.g. to-gc1 has 8K), this problem is exacerbated further.
>
>There are three things to do:
>
> a) Defer region cleanup: this makes sure we can then...
>
>b) Batch matrix cleanups: this allows more cache-friendly cleanups, see
>the
>comment in SHMatrix::clean_batched. It is a good optimization in
>itself, but it
>also allows to...
>
>c) Parallelize matrix cleanups: lots of regions usually mean large
>heap, which
>means more threads available. This will alleviate matrix cleanup costs.
>Note
>that without batching, you cannot easily avoid false sharing there --
>indeed,
>this is why the patch performs better than current, already
>parallelised
>recycling in partial GC.
>
>Patch:
> http://cr.openjdk.java.net/~shade/shenandoah/matrix-dbp/webrev.01/
>
>Sample experiments on my desktop:
> http://cr.openjdk.java.net/~shade/shenandoah/matrix-dbp/perf.txt
>
> 4x faster cleanups with "default" 2K regions
> up to 18x faster cleanups with artificially high 32K regions
>
>Testing: hotspot_gc_shenandoah, some benchmarks
>
>Thanks,
>-Aleksey
--
Sent from my FairPhone
From zgu at redhat.com Fri May 5 20:11:50 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Fri, 5 May 2017 16:11:50 -0400
Subject: RFR(X): Reduce region retirement during tlab allocation
Message-ID: <79515a64-408e-b4a7-541a-2ecba6ea7605@redhat.com>
Current implementation of unsafe_max_tlab_alloc() peeks current region
size in free set and tries to use its remaining space. However, the
current region is very likely just been consumed with very little or no
memory left, then it returns region size as fallback. This can result
the calculated tlab size too big, and causes too many regions to retire
while they still have fair amount of free space.
When current region is too small for tlab, we can look ahead of next
available region and use its size as hint. The approach seems to cut
down retired region with usable space. As the result, we see less GC cycles.
Ran Derby test with 1g heap.
Before:
http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/unpatched.stats.txt
After:
http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/patched.stats.txt
Webrev:
http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/webrev.00/index.html
Test:
hotspot_gc_shenandoah.
Thanks,
-Zhengyu
From rkennke at redhat.com Fri May 5 21:07:48 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Fri, 5 May 2017 23:07:48 +0200
Subject: RFR(X): Reduce region retirement during tlab allocation
In-Reply-To: <79515a64-408e-b4a7-541a-2ecba6ea7605@redhat.com>
References: <79515a64-408e-b4a7-541a-2ecba6ea7605@redhat.com>
Message-ID: <3df6d2c5-be1c-f530-4f33-cb5500c95160@redhat.com>
Am 05.05.2017 um 22:11 schrieb Zhengyu Gu:
> Current implementation of unsafe_max_tlab_alloc() peeks current region
> size in free set and tries to use its remaining space. However, the
> current region is very likely just been consumed with very little or
> no memory left, then it returns region size as fallback. This can
> result the calculated tlab size too big, and causes too many regions
> to retire while they still have fair amount of free space.
>
> When current region is too small for tlab, we can look ahead of next
> available region and use its size as hint. The approach seems to cut
> down retired region with usable space. As the result, we see less GC
> cycles.
>
>
> Ran Derby test with 1g heap.
>
> Before:
> http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/unpatched.stats.txt
>
> After:
> http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/patched.stats.txt
>
> Webrev:
> http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/webrev.00/index.html
>
> Test:
>
> hotspot_gc_shenandoah.
Nice one!
Please make sure you don't get funny ping-pong effects in TLAB sizing.
We have seen this before. If TLAB sizing doesn't flap around, it's good
to go from my side.
Roman
From zgu at redhat.com Fri May 5 22:26:15 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Fri, 5 May 2017 18:26:15 -0400
Subject: RFR(X): Reduce region retirement during tlab allocation
In-Reply-To: <3df6d2c5-be1c-f530-4f33-cb5500c95160@redhat.com>
References: <79515a64-408e-b4a7-541a-2ecba6ea7605@redhat.com>
<3df6d2c5-be1c-f530-4f33-cb5500c95160@redhat.com>
Message-ID:
I don't see any ping-pong effects. I do see some uneven TLAB sizes,
which suggest that we actually pick up those, otherwise to be retired
regions.
137.832s][debug][gc,alloc] Allocate new tlab, requested size = 524288 bytes
[137.833s][debug][gc,alloc] Allocate new tlab, requested size = 524288 bytes
[137.834s][debug][gc,alloc] Allocate new tlab, requested size = 524288 bytes
[137.838s][debug][gc,alloc] Allocate new tlab, requested size = 27704 bytes
[137.838s][debug][gc,alloc] Allocate new tlab, requested size = 373640 bytes
[137.926s][debug][gc,alloc] Allocate new tlab, requested size = 122944 bytes
[138.034s][debug][gc,alloc] Allocate new tlab, requested size = 524288 bytes
[138.041s][debug][gc,alloc] Allocate new tlab, requested size = 2656 bytes
[138.042s][debug][gc,alloc] Allocate new tlab, requested size = 521632 bytes
[138.090s][debug][gc,alloc] Allocate new tlab, requested size = 2688 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2688 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2672 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2696 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2704 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2712 bytes
[138.863s][debug][gc,alloc] Allocate new tlab, requested size = 3360 bytes
OK?
Thanks,
-Zhengyu
On 05/05/2017 05:07 PM, Roman Kennke wrote:
> Am 05.05.2017 um 22:11 schrieb Zhengyu Gu:
>> Current implementation of unsafe_max_tlab_alloc() peeks current region
>> size in free set and tries to use its remaining space. However, the
>> current region is very likely just been consumed with very little or
>> no memory left, then it returns region size as fallback. This can
>> result the calculated tlab size too big, and causes too many regions
>> to retire while they still have fair amount of free space.
>>
>> When current region is too small for tlab, we can look ahead of next
>> available region and use its size as hint. The approach seems to cut
>> down retired region with usable space. As the result, we see less GC
>> cycles.
>>
>>
>> Ran Derby test with 1g heap.
>>
>> Before:
>> http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/unpatched.stats.txt
>>
>> After:
>> http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/patched.stats.txt
>>
>> Webrev:
>> http://cr.openjdk.java.net/~zgu/shenandoah/region_retirement/webrev.00/index.html
>>
>> Test:
>>
>> hotspot_gc_shenandoah.
>
> Nice one!
>
> Please make sure you don't get funny ping-pong effects in TLAB sizing.
> We have seen this before. If TLAB sizing doesn't flap around, it's good
> to go from my side.
>
> Roman
>
From rkennke at redhat.com Sat May 6 07:22:49 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Sat, 6 May 2017 09:22:49 +0200
Subject: RFR(X): Reduce region retirement during tlab allocation
In-Reply-To:
References: <79515a64-408e-b4a7-541a-2ecba6ea7605@redhat.com>
<3df6d2c5-be1c-f530-4f33-cb5500c95160@redhat.com>
Message-ID: <495ce6cd-26d1-d0ac-be18-e5400f492bd6@redhat.com>
Am 06.05.2017 um 00:26 schrieb Zhengyu Gu:
> I don't see any ping-pong effects. I do see some uneven TLAB sizes,
> which suggest that we actually pick up those, otherwise to be retired
> regions.
>
> 137.832s][debug][gc,alloc] Allocate new tlab, requested size = 524288
> bytes
> [137.833s][debug][gc,alloc] Allocate new tlab, requested size = 524288
> bytes
> [137.834s][debug][gc,alloc] Allocate new tlab, requested size = 524288
> bytes
> [137.838s][debug][gc,alloc] Allocate new tlab, requested size = 27704
> bytes
> [137.838s][debug][gc,alloc] Allocate new tlab, requested size = 373640
> bytes
> [137.926s][debug][gc,alloc] Allocate new tlab, requested size = 122944
> bytes
> [138.034s][debug][gc,alloc] Allocate new tlab, requested size = 524288
> bytes
> [138.041s][debug][gc,alloc] Allocate new tlab, requested size = 2656
> bytes
> [138.042s][debug][gc,alloc] Allocate new tlab, requested size = 521632
> bytes
> [138.090s][debug][gc,alloc] Allocate new tlab, requested size = 2688
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2688
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 521600
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2672
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2696
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2704
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 2712
> bytes
> [138.863s][debug][gc,alloc] Allocate new tlab, requested size = 3360
> bytes
>
>
> OK?
Ok!
From ashipile at redhat.com Mon May 8 11:16:07 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 08 May 2017 11:16:07 +0000
Subject: hg: shenandoah/jdk9/hotspot: Deferred, batched,
parallel Matrix cleanup
Message-ID: <201705081116.v48BG757028923@aojmv0008.oracle.com>
Changeset: 02224ce1b0eb
Author: shade
Date: 2017-05-08 13:14 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/02224ce1b0eb
Deferred, batched, parallel Matrix cleanup
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegion.cpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegion.hpp
! src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
From zgu at redhat.com Mon May 8 11:42:47 2017
From: zgu at redhat.com (zgu at redhat.com)
Date: Mon, 08 May 2017 11:42:47 +0000
Subject: hg: shenandoah/jdk9/hotspot: 2 new changesets
Message-ID: <201705081142.v48Bgm0h007971@aojmv0008.oracle.com>
Changeset: af42dc08a929
Author: zgu
Date: 2017-05-08 07:40 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/af42dc08a929
Reduce region retirement during tlab allocation
! src/share/vm/gc/shenandoah/shenandoahFreeSet.cpp
! src/share/vm/gc/shenandoah/shenandoahFreeSet.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
Changeset: 5703aee64fd4
Author: zgu
Date: 2017-05-08 07:40 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/5703aee64fd4
Merge
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From rkennke at redhat.com Mon May 8 15:12:20 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 8 May 2017 17:12:20 +0200
Subject: RFR: Implement heuristics to switch between merged and separate
update-refs phase
Message-ID: <6108e4de-a725-2bc9-05f6-e081c670f1f5@redhat.com>
We have two ways to update references now: during a separate phase right
after evacuation and piggy-backed on subsequent marking. Doing it in a
separate phase right after evac makes sense when the time to the next
cycle is long: in this case it would improve cache behaviour when
reading the brooks ptr, and reclaim the cset earlier and thus giving us
more room to breathe. On the other hand, when pressure is high and GC
cycles are running (almost) back-to-back, it's not that benefitial
because it would traverse the heap twice, and we are better off to
update references while we're marking.
This change implements a heuristic to switch between the two modes based
on pressure. It measures the gap between cycles (and keeps a short
moving-window history of it) and also measures how long marking and
update-refs take (incl. moving-window history) and decides whether or
not to do a separate or merged update-refs phase based on that. The
exact behaviour is controlled by ShenandoahMergeUpdateRefs[Min|Max]Gap
arguments. I hope the description of those make any sense ;-)
This also means that, at least when running with adaptive heuristics
(the default), the argument -XX:+/-ShenandoahUpdateRefsEarly is unused.
http://cr.openjdk.java.net/~rkennke/merge-uprefs/webrev.01/
Testing: hotspot_gc_shenandoah, specjvm-compiler
Ok?
Roman
From shade at redhat.com Mon May 8 16:23:04 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 8 May 2017 18:23:04 +0200
Subject: RFR: Implement heuristics to switch between merged and separate
update-refs phase
In-Reply-To: <6108e4de-a725-2bc9-05f6-e081c670f1f5@redhat.com>
References: <6108e4de-a725-2bc9-05f6-e081c670f1f5@redhat.com>
Message-ID: <0c3077e6-5071-3bb5-10fd-1f5f227ae971@redhat.com>
On 05/08/2017 05:12 PM, Roman Kennke wrote:
> This also means that, at least when running with adaptive heuristics
> (the default), the argument -XX:+/-ShenandoahUpdateRefsEarly is unused.
Um. I wonder if there is an option to turn off UR unconditionally. Should we
rewire that flag have three values: always-on, always-off, adaptive?
> http://cr.openjdk.java.net/~rkennke/merge-uprefs/webrev.01/
This seems redundant:
672 double cycle_gap_max = _cycle_gap_history->maximum();
Otherwise good.
-Aleksey
From ashipile at redhat.com Mon May 8 18:52:47 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 08 May 2017 18:52:47 +0000
Subject: hg: shenandoah/jdk9/hotspot: Fix fastdebug build failure.
Message-ID: <201705081852.v48IqmH0029972@aojmv0008.oracle.com>
Changeset: 2446ef1af4ad
Author: shade
Date: 2017-05-08 20:51 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/2446ef1af4ad
Fix fastdebug build failure.
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From shade at redhat.com Mon May 8 19:23:49 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 8 May 2017 21:23:49 +0200
Subject: RFR: Purge ratio, global, connections heuristics
Message-ID: <28b254b7-1f95-0ebf-933b-0232e35b2009@redhat.com>
Hi,
I propose we purge the heuristics that bit-rotted. We seem to only use five of
them: adaptive, dynamic, passive, aggressive, and partial.
The rest can be gone:
http://cr.openjdk.java.net/~shade/shenandoah/remove-heuristics/webrev.01/
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From rkennke at redhat.com Mon May 8 19:26:51 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 8 May 2017 21:26:51 +0200
Subject: RFR: Purge ratio, global, connections heuristics
In-Reply-To: <28b254b7-1f95-0ebf-933b-0232e35b2009@redhat.com>
References: <28b254b7-1f95-0ebf-933b-0232e35b2009@redhat.com>
Message-ID: <46be2403-d9b4-ecb6-f76e-0ab3bf29398a@redhat.com>
Am 08.05.2017 um 21:23 schrieb Aleksey Shipilev:
> Hi,
>
> I propose we purge the heuristics that bit-rotted. We seem to only use five of
> them: adaptive, dynamic, passive, aggressive, and partial.
>
> The rest can be gone:
> http://cr.openjdk.java.net/~shade/shenandoah/remove-heuristics/webrev.01/
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
Oh yes, please!
Roman
From zgu at redhat.com Mon May 8 19:32:22 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Mon, 8 May 2017 15:32:22 -0400
Subject: RFR(XS): Cleanup: exclude tlab/gclab allocation debug log from
production
Message-ID: <3499920a-81b4-13d0-d759-c0aa650d2586@redhat.com>
Sneaked in in earlier push. Make it debug only.
http://cr.openjdk.java.net/~zgu/shenandoah/cleanup_debug_log/webrev.00/
Thanks,
-Zhengyu
From ashipile at redhat.com Mon May 8 19:36:53 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 08 May 2017 19:36:53 +0000
Subject: hg: shenandoah/jdk9/hotspot: RFR: Purge ratio, global,
connections heuristics.
Message-ID: <201705081936.v48Jarlc016445@aojmv0008.oracle.com>
Changeset: 1c716bd0e0b3
Author: shade
Date: 2017-05-08 21:28 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1c716bd0e0b3
RFR: Purge ratio, global, connections heuristics.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoah_globals.hpp
From shade at redhat.com Mon May 8 19:35:40 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 8 May 2017 21:35:40 +0200
Subject: RFR(XS): Cleanup: exclude tlab/gclab allocation debug log from
production
In-Reply-To: <3499920a-81b4-13d0-d759-c0aa650d2586@redhat.com>
References: <3499920a-81b4-13d0-d759-c0aa650d2586@redhat.com>
Message-ID:
On 05/08/2017 09:32 PM, Zhengyu Gu wrote:
> Sneaked in in earlier push. Make it debug only.
>
> http://cr.openjdk.java.net/~zgu/shenandoah/cleanup_debug_log/webrev.00/
+1
-Aleksey
From rkennke at redhat.com Mon May 8 19:52:34 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 8 May 2017 21:52:34 +0200
Subject: RFR: Implement heuristics to switch between merged and separate
update-refs phase
In-Reply-To: <0c3077e6-5071-3bb5-10fd-1f5f227ae971@redhat.com>
References: <6108e4de-a725-2bc9-05f6-e081c670f1f5@redhat.com>
<0c3077e6-5071-3bb5-10fd-1f5f227ae971@redhat.com>
Message-ID: <7d19c2ec-329b-aaca-4015-ae24afbc5ea9@redhat.com>
Am 08.05.2017 um 18:23 schrieb Aleksey Shipilev:
> On 05/08/2017 05:12 PM, Roman Kennke wrote:
>> This also means that, at least when running with adaptive heuristics
>> (the default), the argument -XX:+/-ShenandoahUpdateRefsEarly is unused.
> Um. I wonder if there is an option to turn off UR unconditionally. Should we
> rewire that flag have three values: always-on, always-off, adaptive?
Like this ?
http://cr.openjdk.java.net/~rkennke/merge-uprefs/webrev.02/
it takes 'true' / 'on', 'false', 'off' and 'adaptive'. Under adaptive
heuristics, it defaults to adaptive, otherwise to true. It prints a
warning when attempting 'adaptive' on non-adaptive heuristics (mostly
because we need to call the same constructor from Adaptive), fails on
other values.
Roman
From shade at redhat.com Mon May 8 19:57:00 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 8 May 2017 21:57:00 +0200
Subject: RFR: Implement heuristics to switch between merged and separate
update-refs phase
In-Reply-To: <7d19c2ec-329b-aaca-4015-ae24afbc5ea9@redhat.com>
References: <6108e4de-a725-2bc9-05f6-e081c670f1f5@redhat.com>
<0c3077e6-5071-3bb5-10fd-1f5f227ae971@redhat.com>
<7d19c2ec-329b-aaca-4015-ae24afbc5ea9@redhat.com>
Message-ID: <9daa06ab-f5e5-494c-90b8-a1332e97f211@redhat.com>
On 05/08/2017 09:52 PM, Roman Kennke wrote:
> Am 08.05.2017 um 18:23 schrieb Aleksey Shipilev:
>> On 05/08/2017 05:12 PM, Roman Kennke wrote:
>>> This also means that, at least when running with adaptive heuristics
>>> (the default), the argument -XX:+/-ShenandoahUpdateRefsEarly is unused.
>> Um. I wonder if there is an option to turn off UR unconditionally. Should we
>> rewire that flag have three values: always-on, always-off, adaptive?
>
> Like this ?
>
> http://cr.openjdk.java.net/~rkennke/merge-uprefs/webrev.02/
*) Um. AdaptiveHeuristics() would still execute ShenandoahHeuristics(), right?
Which will then print the warning message?
227 } else if (strcmp(ShenandoahUpdateRefsEarly, "adaptive") == 0) {
228 log_warning(gc)("-XX:ShenandoahUpdateRefsEarly=adaptive only useful
with -XX:ShenandoahGCHeuristics=adaptive. Defaulting to 'true' instead.");
229 _update_refs_early = true;
*) Leftover:
588 tty->print_cr("last cycle gap: %f ms", last_cycle_gap);
Otherwise seems fine.
-Aleksey
From zgu at redhat.com Mon May 8 20:00:33 2017
From: zgu at redhat.com (zgu at redhat.com)
Date: Mon, 08 May 2017 20:00:33 +0000
Subject: hg: shenandoah/jdk9/hotspot: Cleanup: exclude tlab/gclab allocation
debug log from production
Message-ID: <201705082000.v48K0XMA023553@aojmv0008.oracle.com>
Changeset: baf2a720166c
Author: zgu
Date: 2017-05-08 15:25 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/baf2a720166c
Cleanup: exclude tlab/gclab allocation debug log from production
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From rkennke at redhat.com Mon May 8 20:23:15 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 8 May 2017 22:23:15 +0200
Subject: RFR: Implement heuristics to switch between merged and separate
update-refs phase
In-Reply-To: <9daa06ab-f5e5-494c-90b8-a1332e97f211@redhat.com>
References: <6108e4de-a725-2bc9-05f6-e081c670f1f5@redhat.com>
<0c3077e6-5071-3bb5-10fd-1f5f227ae971@redhat.com>
<7d19c2ec-329b-aaca-4015-ae24afbc5ea9@redhat.com>
<9daa06ab-f5e5-494c-90b8-a1332e97f211@redhat.com>
Message-ID: <3e1f4fea-365d-e446-a2e4-f0c0b97fc8ff@redhat.com>
Am 08.05.2017 um 21:57 schrieb Aleksey Shipilev:
> On 05/08/2017 09:52 PM, Roman Kennke wrote:
>> Am 08.05.2017 um 18:23 schrieb Aleksey Shipilev:
>>> On 05/08/2017 05:12 PM, Roman Kennke wrote:
>>>> This also means that, at least when running with adaptive heuristics
>>>> (the default), the argument -XX:+/-ShenandoahUpdateRefsEarly is unused.
>>> Um. I wonder if there is an option to turn off UR unconditionally. Should we
>>> rewire that flag have three values: always-on, always-off, adaptive?
>> Like this ?
>>
>> http://cr.openjdk.java.net/~rkennke/merge-uprefs/webrev.02/
> *) Um. AdaptiveHeuristics() would still execute ShenandoahHeuristics(), right?
> Which will then print the warning message?
>
> 227 } else if (strcmp(ShenandoahUpdateRefsEarly, "adaptive") == 0) {
> 228 log_warning(gc)("-XX:ShenandoahUpdateRefsEarly=adaptive only useful
> with -XX:ShenandoahGCHeuristics=adaptive. Defaulting to 'true' instead.");
> 229 _update_refs_early = true;
Duh.
Ok, I moved it all into ShenandoahHeuristics constructor now. Life's too
short.
> *) Leftover:
>
> 588 tty->print_cr("last cycle gap: %f ms", last_cycle_gap);
>
> Otherwise seems fine.
Removed.
http://cr.openjdk.java.net/~rkennke/merge-uprefs/webrev.03/
Ok now?
Roman
From shade at redhat.com Mon May 8 20:24:48 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 8 May 2017 22:24:48 +0200
Subject: RFR: Implement heuristics to switch between merged and separate
update-refs phase
In-Reply-To: <3e1f4fea-365d-e446-a2e4-f0c0b97fc8ff@redhat.com>
References: <6108e4de-a725-2bc9-05f6-e081c670f1f5@redhat.com>
<0c3077e6-5071-3bb5-10fd-1f5f227ae971@redhat.com>
<7d19c2ec-329b-aaca-4015-ae24afbc5ea9@redhat.com>
<9daa06ab-f5e5-494c-90b8-a1332e97f211@redhat.com>
<3e1f4fea-365d-e446-a2e4-f0c0b97fc8ff@redhat.com>
Message-ID:
On 05/08/2017 10:23 PM, Roman Kennke wrote:
> Am 08.05.2017 um 21:57 schrieb Aleksey Shipilev:
>> On 05/08/2017 09:52 PM, Roman Kennke wrote:
>>> Am 08.05.2017 um 18:23 schrieb Aleksey Shipilev:
>>>> On 05/08/2017 05:12 PM, Roman Kennke wrote:
>>>>> This also means that, at least when running with adaptive heuristics
>>>>> (the default), the argument -XX:+/-ShenandoahUpdateRefsEarly is unused.
>>>> Um. I wonder if there is an option to turn off UR unconditionally. Should we
>>>> rewire that flag have three values: always-on, always-off, adaptive?
>>> Like this ?
>>>
>>> http://cr.openjdk.java.net/~rkennke/merge-uprefs/webrev.02/
>> *) Um. AdaptiveHeuristics() would still execute ShenandoahHeuristics(), right?
>> Which will then print the warning message?
>>
>> 227 } else if (strcmp(ShenandoahUpdateRefsEarly, "adaptive") == 0) {
>> 228 log_warning(gc)("-XX:ShenandoahUpdateRefsEarly=adaptive only useful
>> with -XX:ShenandoahGCHeuristics=adaptive. Defaulting to 'true' instead.");
>> 229 _update_refs_early = true;
> Duh.
>
> Ok, I moved it all into ShenandoahHeuristics constructor now. Life's too
> short.
>
>> *) Leftover:
>>
>> 588 tty->print_cr("last cycle gap: %f ms", last_cycle_gap);
>>
>> Otherwise seems fine.
> Removed.
>
> http://cr.openjdk.java.net/~rkennke/merge-uprefs/webrev.03/
>
>
> Ok now?
OK.
-Aleksey
From roman at kennke.org Mon May 8 20:34:09 2017
From: roman at kennke.org (roman at kennke.org)
Date: Mon, 08 May 2017 20:34:09 +0000
Subject: hg: shenandoah/jdk9/hotspot: Implement heuristics to switch between
merged and separate update-refs phase.
Message-ID: <201705082034.v48KY9aj005442@aojmv0008.oracle.com>
Changeset: 6db19c2a2a18
Author: rkennke
Date: 2017-05-08 22:29 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/6db19c2a2a18
Implement heuristics to switch between merged and separate update-refs phase.
! src/share/vm/gc/shenandoah/shenandoahBarrierSet.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc/shenandoah/shenandoah_globals.hpp
From rkennke at redhat.com Tue May 9 10:21:12 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 9 May 2017 12:21:12 +0200
Subject: RFR: Fix merged update refs
Message-ID: <08e2b1c6-4ad0-74a4-ba67-2a9345075c67@redhat.com>
I made a little mistake yesterday when I moved flag initialization into
ShenandoahHeuristic: I forgot to remove the _update_refs_adaptive field
in AdaptiveHeuristic, and this one overrides the same field in
ShenandoahHeuristics. Problem is the forgotten field never gets
initialized and is always false.
http://cr.openjdk.java.net/~rkennke/fix-merge-uprefs/webrev.00/
Ok?
Roman
From shade at redhat.com Tue May 9 10:23:16 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 9 May 2017 12:23:16 +0200
Subject: RFR: Fix merged update refs
In-Reply-To: <08e2b1c6-4ad0-74a4-ba67-2a9345075c67@redhat.com>
References: <08e2b1c6-4ad0-74a4-ba67-2a9345075c67@redhat.com>
Message-ID: <11c40144-b3d2-f587-fb3e-e20b243c41b2@redhat.com>
On 05/09/2017 12:21 PM, Roman Kennke wrote:
> I made a little mistake yesterday when I moved flag initialization into
> ShenandoahHeuristic: I forgot to remove the _update_refs_adaptive field
> in AdaptiveHeuristic, and this one overrides the same field in
> ShenandoahHeuristics. Problem is the forgotten field never gets
> initialized and is always false.
>
> http://cr.openjdk.java.net/~rkennke/fix-merge-uprefs/webrev.00/
>
>
> Ok?
OK.
-Aleksey
From roman at kennke.org Tue May 9 10:27:49 2017
From: roman at kennke.org (roman at kennke.org)
Date: Tue, 09 May 2017 10:27:49 +0000
Subject: hg: shenandoah/jdk9/hotspot: Fix merged update refs.
Message-ID: <201705091027.v49ARnCr008634@aojmv0008.oracle.com>
Changeset: 4ee5b7c8a8ac
Author: rkennke
Date: 2017-05-09 12:26 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/4ee5b7c8a8ac
Fix merged update refs.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
From ashipile at redhat.com Tue May 9 10:47:44 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 10:47:44 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Purge
ShenandoahVerify(Reads|Writes)ToFromSpace.
Message-ID: <201705091047.v49AliQD016178@aojmv0008.oracle.com>
Changeset: 7a9e5d350f60
Author: shade
Date: 2017-05-09 12:46 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/7a9e5d350f60
[backport] Purge ShenandoahVerify(Reads|Writes)ToFromSpace.
! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp
! src/cpu/aarch64/vm/shenandoahBarrierSet_aarch64.cpp
! src/cpu/aarch64/vm/templateTable_aarch64.cpp
! src/cpu/aarch64/vm/vtableStubs_aarch64.cpp
! src/cpu/x86/vm/macroAssembler_x86.cpp
! src/cpu/x86/vm/shenandoahBarrierSet_x86.cpp
! src/cpu/x86/vm/templateTable_x86_64.cpp
! src/cpu/x86/vm/vtableStubs_x86_64.cpp
! src/os_cpu/linux_x86/vm/os_linux_x86.cpp
! src/share/vm/classfile/javaClasses.cpp
! src/share/vm/classfile/javaClasses.hpp
! src/share/vm/gc_implementation/shenandoah/brooksPointer.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoah_globals.hpp
! src/share/vm/opto/graphKit.cpp
! src/share/vm/opto/library_call.cpp
! src/share/vm/opto/parseHelper.cpp
! src/share/vm/runtime/handles.cpp
! src/share/vm/runtime/safepoint.cpp
From ashipile at redhat.com Tue May 9 11:19:42 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 11:19:42 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Purge ratio, global,
connections heuristics.
Message-ID: <201705091119.v49BJgcA028044@aojmv0008.oracle.com>
Changeset: 1a6cbe12d5d2
Author: shade
Date: 2017-05-09 13:18 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/1a6cbe12d5d2
[backport] Purge ratio, global, connections heuristics.
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoah_globals.hpp
From ashipile at redhat.com Tue May 9 11:30:36 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 11:30:36 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Reduce region retirement
during tlab allocation
Message-ID: <201705091130.v49BUajw001042@aojmv0008.oracle.com>
Changeset: 577aaacece0c
Author: shade
Date: 2017-05-09 13:29 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/577aaacece0c
[backport] Reduce region retirement during tlab allocation
! src/share/vm/gc_implementation/shenandoah/shenandoahFreeSet.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahFreeSet.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
From ashipile at redhat.com Tue May 9 11:34:48 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 11:34:48 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Nit: mark-compact phase 3
(Adjust Pointers) should announce itself as "Phase 3"
Message-ID: <201705091134.v49BYmQV003637@aojmv0008.oracle.com>
Changeset: 55bf3165ec19
Author: shade
Date: 2017-05-09 13:32 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/55bf3165ec19
[backport] Nit: mark-compact phase 3 (Adjust Pointers) should announce itself as "Phase 3"
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.cpp
From ashipile at redhat.com Tue May 9 11:40:06 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 11:40:06 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Replace ShHeapRegionSet::get
with get_fast
Message-ID: <201705091140.v49Be7mo004913@aojmv0008.oracle.com>
Changeset: dccfc0e25ac1
Author: shade
Date: 2017-05-09 13:38 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/dccfc0e25ac1
[backport] Replace ShHeapRegionSet::get with get_fast
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahFreeSet.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionSet.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionSet.hpp
From ashipile at redhat.com Tue May 9 12:05:57 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 12:05:57 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Remove obsolete
compile_resolve_oop_runtime() methods
Message-ID: <201705091205.v49C5vTS021356@aojmv0008.oracle.com>
Changeset: 3e3efd9ac8ea
Author: shade
Date: 2017-05-09 14:04 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/3e3efd9ac8ea
[backport] Remove obsolete compile_resolve_oop_runtime() methods
! src/cpu/aarch64/vm/shenandoahBarrierSet_aarch64.cpp
! src/cpu/x86/vm/shenandoahBarrierSet_x86.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahBarrierSet.hpp
From ashipile at redhat.com Tue May 9 12:17:26 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 12:17:26 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Use CollectedHeap::base()
instead of ShenandoahHeap::first_region_bottom()
Message-ID: <201705091217.v49CHQYX025292@aojmv0008.oracle.com>
Changeset: ca75b384657b
Author: shade
Date: 2017-05-09 14:16 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/ca75b384657b
[backport] Use CollectedHeap::base() instead of ShenandoahHeap::first_region_bottom()
! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp
! src/cpu/x86/vm/macroAssembler_x86.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.inline.hpp
From ashipile at redhat.com Tue May 9 12:18:33 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 12:18:33 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Purge ealier version of
redefined classes during class unloading
Message-ID: <201705091218.v49CIXBS026201@aojmv0008.oracle.com>
Changeset: 3b94577c3a35
Author: shade
Date: 2017-05-09 14:17 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/3b94577c3a35
[backport] Purge ealier version of redefined classes during class unloading
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
From ashipile at redhat.com Tue May 9 14:14:08 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 14:14:08 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Cleanup class unloading and
string intern code
Message-ID: <201705091414.v49EE8GH005952@aojmv0008.oracle.com>
Changeset: bf8135bae459
Author: shade
Date: 2017-05-09 16:12 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/bf8135bae459
[backport] Cleanup class unloading and string intern code
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
+ test/gc/shenandoah/StringInternCleanup.java
From ashipile at redhat.com Tue May 9 14:25:27 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 14:25:27 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Rename final mark operations
Message-ID: <201705091425.v49EPRgD011986@aojmv0008.oracle.com>
Changeset: 684602c7f1c7
Author: shade
Date: 2017-05-09 16:24 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/684602c7f1c7
[backport] Rename final mark operations
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc_implementation/shenandoah/vm_operations_shenandoah.cpp
! src/share/vm/gc_implementation/shenandoah/vm_operations_shenandoah.hpp
! src/share/vm/runtime/vm_operations.hpp
From zgu at redhat.com Tue May 9 14:32:31 2017
From: zgu at redhat.com (zgu at redhat.com)
Date: Tue, 09 May 2017 14:32:31 +0000
Subject: hg: shenandoah/jdk8u/hotspot: 2 new changesets
Message-ID: <201705091432.v49EWVuj015662@aojmv0008.oracle.com>
Changeset: d82ce8930615
Author: zgu
Date: 2017-05-09 10:26 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/d82ce8930615
Refactor parallel ClassLoaderData iterator
! src/share/vm/classfile/classLoaderData.cpp
! src/share/vm/classfile/classLoaderData.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahRootProcessor.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahRootProcessor.hpp
Changeset: ca1272daca44
Author: zgu
Date: 2017-05-09 10:31 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/ca1272daca44
Merge
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
From ashipile at redhat.com Tue May 9 14:42:15 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 14:42:15 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Clean up unused fields and
methods
Message-ID: <201705091442.v49EgFF2018684@aojmv0008.oracle.com>
Changeset: b7f4f2c895a4
Author: shade
Date: 2017-05-09 16:40 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/b7f4f2c895a4
[backport] Clean up unused fields and methods
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectionSet.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionSet.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMonitoringSupport.cpp
From ashipile at redhat.com Tue May 9 14:52:31 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 14:52:31 +0000
Subject: hg: shenandoah/jdk8u/hotspot: 3 new changesets
Message-ID: <201705091452.v49EqVCA023363@aojmv0008.oracle.com>
Changeset: 757394cdeeea
Author: shade
Date: 2017-05-09 16:42 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/757394cdeeea
[backport] Make sure new_active_workers is used
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
Changeset: 86874ad49130
Author: shade
Date: 2017-05-09 16:42 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/86874ad49130
[backport] Correct prefetch offset for marked object iteration
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.inline.hpp
Changeset: cdfd5cc5603d
Author: shade
Date: 2017-05-09 16:48 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/cdfd5cc5603d
[backport] Total pauses should include final-mark pauses
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/vm_operations_shenandoah.cpp
From ashipile at redhat.com Tue May 9 15:08:00 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 15:08:00 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Report correct total garbage
data. Print out garbage and cset data with -Xlog:gc+ergo
Message-ID: <201705091508.v49F8076029260@aojmv0008.oracle.com>
Changeset: b05549242c01
Author: shade
Date: 2017-05-09 17:01 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/b05549242c01
[backport] Report correct total garbage data. Print out garbage and cset data with -Xlog:gc+ergo
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
From ashipile at redhat.com Tue May 9 15:36:19 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 15:36:19 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Deferred region cleanup.
Message-ID: <201705091536.v49FaJ0Z010665@aojmv0008.oracle.com>
Changeset: e65a9aa209c5
Author: shade
Date: 2017-05-09 17:35 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/e65a9aa209c5
[backport] Deferred region cleanup.
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
From ashipile at redhat.com Tue May 9 15:45:38 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 15:45:38 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Use lock version heap region
memory allocator
Message-ID: <201705091545.v49FjcZW013627@aojmv0008.oracle.com>
Changeset: 156a54575174
Author: shade
Date: 2017-05-09 17:44 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/156a54575174
[backport] Use lock version heap region memory allocator
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.inline.hpp
From ashipile at redhat.com Tue May 9 15:54:08 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 15:54:08 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Heap memory usage counting
not longer needs to be atomic
Message-ID: <201705091554.v49Fs90U017730@aojmv0008.oracle.com>
Changeset: cc8e01c92e0e
Author: shade
Date: 2017-05-09 17:52 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/cc8e01c92e0e
[backport] Heap memory usage counting not longer needs to be atomic
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
From ashipile at redhat.com Tue May 9 16:19:56 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 16:19:56 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Update statistics to capture
thread data accurately
Message-ID: <201705091619.v49GJuD8028311@aojmv0008.oracle.com>
Changeset: 78e1ffe1fbc6
Author: shade
Date: 2017-05-09 18:15 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/78e1ffe1fbc6
[backport] Update statistics to capture thread data accurately
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
From ashipile at redhat.com Tue May 9 16:31:48 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 16:31:48 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Update
ShenandoahHeapSampling to avoid double counting.
Message-ID: <201705091631.v49GVm29002949@aojmv0008.oracle.com>
Changeset: 836fc0675cfb
Author: shade
Date: 2017-05-09 18:30 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/836fc0675cfb
[backport] Update ShenandoahHeapSampling to avoid double counting.
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionCounters.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionCounters.hpp
From ashipile at redhat.com Tue May 9 16:56:55 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 09 May 2017 16:56:55 +0000
Subject: hg: shenandoah/jdk8u/hotspot: 2 new changesets
Message-ID: <201705091656.v49GuujL013519@aojmv0008.oracle.com>
Changeset: 87b5e4b7012a
Author: shade
Date: 2017-05-09 18:48 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/87b5e4b7012a
[backport] ShenandoahHeap::evacuate_object() with boolean result flag.
! src/share/vm/gc_implementation/shenandoah/shenandoahBarrierSet.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.inline.hpp
Changeset: 001500bca1ad
Author: shade
Date: 2017-05-09 18:55 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/001500bca1ad
[backport] Cleanup duplicated Shenandoah task queue declarations
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahOopClosures.hpp
From rkennke at redhat.com Tue May 9 17:14:30 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 9 May 2017 19:14:30 +0200
Subject: RFR (8u-backport): Implement early update references phase
Message-ID:
This is a straight backport of the early update references phase and all
related code from JDK9.
http://cr.openjdk.java.net/~rkennke/backport-uprefs/webrev.00/
Testing: hotspot_gc_shenandoah, specjvm compiler
Ok?
From shade at redhat.com Tue May 9 17:24:47 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 9 May 2017 19:24:47 +0200
Subject: RFR (8u-backport): Implement early update references phase
In-Reply-To:
References:
Message-ID: <8ea5f5ee-8d8f-4db9-86f3-961d2b5f0afb@redhat.com>
On 05/09/2017 07:14 PM, Roman Kennke wrote:
> This is a straight backport of the early update references phase and all
> related code from JDK9.
>
> http://cr.openjdk.java.net/~rkennke/backport-uprefs/webrev.00/
>
>
> Testing: hotspot_gc_shenandoah, specjvm compiler
>
> Ok?
Nice and tidy, thanks.
Comparing with 9, these are the interesting differences, which might be good to
fix in this iteration:
*) ShenandoahHeuristics::record_gc_start/end() seem to be missing?
*) ShenandoahHeap::update_refs_in_progress_addr() seems to be missing?
Thanks,
-Aleksey
From rkennke at redhat.com Tue May 9 19:02:35 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 9 May 2017 21:02:35 +0200
Subject: RFR (8u-backport): Implement early update references phase
In-Reply-To: <8ea5f5ee-8d8f-4db9-86f3-961d2b5f0afb@redhat.com>
References:
<8ea5f5ee-8d8f-4db9-86f3-961d2b5f0afb@redhat.com>
Message-ID: <6a31f2be-02f3-1eb2-ad6b-682f6c8c7e91@redhat.com>
Am 09.05.2017 um 19:24 schrieb Aleksey Shipilev:
> On 05/09/2017 07:14 PM, Roman Kennke wrote:
>> This is a straight backport of the early update references phase and all
>> related code from JDK9.
>>
>> http://cr.openjdk.java.net/~rkennke/backport-uprefs/webrev.00/
>>
>>
>> Testing: hotspot_gc_shenandoah, specjvm compiler
>>
>> Ok?
> Nice and tidy, thanks.
>
> Comparing with 9, these are the interesting differences, which might be good to
> fix in this iteration:
>
> *) ShenandoahHeuristics::record_gc_start/end() seem to be missing?
This one seems to be used only for partial GC. However, it looks more
consistent in this iteration. Added.
> *) ShenandoahHeap::update_refs_in_progress_addr() seems to be missing?
Similar: this is only used for the improved store checks, but looks more
consistent here. Added too.
I also added heap occupancy logging for the update refs pause, as
present in jdk9.
http://cr.openjdk.java.net/~rkennke/backport-uprefs/webrev.01/
Ok?
Roman
From shade at redhat.com Tue May 9 19:10:11 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 9 May 2017 21:10:11 +0200
Subject: RFR (8u-backport): Implement early update references phase
In-Reply-To: <6a31f2be-02f3-1eb2-ad6b-682f6c8c7e91@redhat.com>
References:
<8ea5f5ee-8d8f-4db9-86f3-961d2b5f0afb@redhat.com>
<6a31f2be-02f3-1eb2-ad6b-682f6c8c7e91@redhat.com>
Message-ID: <1da488b0-0938-9137-5fb3-d01e5d25a7a7@redhat.com>
On 05/09/2017 09:02 PM, Roman Kennke wrote:
> Am 09.05.2017 um 19:24 schrieb Aleksey Shipilev:
>> On 05/09/2017 07:14 PM, Roman Kennke wrote:
>>> This is a straight backport of the early update references phase and all
>>> related code from JDK9.
>>>
>>> http://cr.openjdk.java.net/~rkennke/backport-uprefs/webrev.00/
>>>
>>>
>>> Testing: hotspot_gc_shenandoah, specjvm compiler
>>>
>>> Ok?
>> Nice and tidy, thanks.
>>
>> Comparing with 9, these are the interesting differences, which might be good to
>> fix in this iteration:
>>
>> *) ShenandoahHeuristics::record_gc_start/end() seem to be missing?
> This one seems to be used only for partial GC. However, it looks more
> consistent in this iteration. Added.
>
>> *) ShenandoahHeap::update_refs_in_progress_addr() seems to be missing?
> Similar: this is only used for the improved store checks, but looks more
> consistent here. Added too.
>
> I also added heap occupancy logging for the update refs pause, as
> present in jdk9.
>
> http://cr.openjdk.java.net/~rkennke/backport-uprefs/webrev.01/
>
>
> Ok?
OK!
Thanks,
-Aleksey
From roman at kennke.org Tue May 9 19:17:10 2017
From: roman at kennke.org (roman at kennke.org)
Date: Tue, 09 May 2017 19:17:10 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Implement early update
references phase.
Message-ID: <201705091917.v49JHAmO021032@aojmv0008.oracle.com>
Changeset: 885d7935a37a
Author: rkennke
Date: 2017-03-28 17:22 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/885d7935a37a
[backport] Implement early update references phase.
! src/share/vm/gc_implementation/shenandoah/shenandoahBarrierSet.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionCounters.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionCounters.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahOopClosures.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahOopClosures.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoah_globals.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoah_specialized_oop_closures.hpp
! src/share/vm/gc_implementation/shenandoah/vm_operations_shenandoah.cpp
! src/share/vm/gc_implementation/shenandoah/vm_operations_shenandoah.hpp
! src/share/vm/runtime/vm_operations.hpp
From ashipile at redhat.com Wed May 10 09:44:49 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 10 May 2017 09:44:49 +0000
Subject: hg: shenandoah/jdk8u/hotspot: 2 new changesets
Message-ID: <201705100944.v4A9inJZ007907@aojmv0008.oracle.com>
Changeset: c16f21704912
Author: shade
Date: 2017-05-10 11:38 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/c16f21704912
[backport] Relax assert to not fire at safepoint
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.inline.hpp
Changeset: 756713991d8f
Author: shade
Date: 2017-05-10 11:42 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/756713991d8f
[backport] Fix DerivedPointerTable handling when scanning roots twice in init-evac phase
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
From ashipile at redhat.com Wed May 10 10:19:13 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 10 May 2017 10:19:13 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Heap/matrix verification for
all reachable objects
Message-ID: <201705101019.v4AAJDv7020283@aojmv0008.oracle.com>
Changeset: ecc0f7d24e16
Author: shade
Date: 2017-05-10 12:17 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/ecc0f7d24e16
[backport] Heap/matrix verification for all reachable objects
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.cpp
From shade at redhat.com Wed May 10 10:25:11 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 10 May 2017 12:25:11 +0200
Subject: RFR 9/8u: Print heap changes in phases that actually change heap
Message-ID: <8d6147ce-785b-fa80-c3a9-345ca01293c6@redhat.com>
Hi,
I think it makes sense to print heap changes only for phases that change heap
occupancy. This means demoting Init-UR, and promoting Conc Reset Bitmaps:
diff -r 4ee5b7c8a8ac src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp Tue May 09
12:26:31 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp Wed May 10
12:24:22 2017 +0200
@@ -244,7 +244,7 @@
{
- GCTraceTime(Info, gc) time("Concurrent reset bitmaps", gc_timer,
GCCause::_no_gc);
+ GCTraceTime(Info, gc) time("Concurrent reset bitmaps", gc_timer,
GCCause::_no_gc, true);
diff -r 4ee5b7c8a8ac src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp
--- a/src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp Tue May 09
12:26:31 2017 +0200
+++ b/src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp Wed May 10
12:24:22 2017 +0200
@@ -147,7 +147,7 @@
void VM_ShenandoahInitUpdateRefs::doit() {
GCIdMark gc_id_mark(_gc_id);
ShenandoahHeap *sh = ShenandoahHeap::heap();
- GCTraceTime(Info, gc) time("Pause Init Update Refs", sh->gc_timer(),
GCCause::_no_gc, true);
+ GCTraceTime(Info, gc) time("Pause Init Update Refs", sh->gc_timer(),
GCCause::_no_gc);
Will look like this:
[info][gc] GC(3) Pause Init Mark 0.481ms
[info][gc] GC(3) Concurrent marking 3698M->3704M(4096M) 2.087ms
[info][gc] GC(3) Pause Final Mark 3704M->182M(4096M) 1.778ms
[info][gc] GC(3) Concurrent evacuation 184M->198M(4096M) 1.029ms
[info][gc] GC(3) Pause Init Update Refs 0.019ms
[info][gc] GC(3) Concurrent update references 200M->206M(4096M) 1.760ms
[info][gc] GC(3) Pause Final Update Refs 206M->48M(4096M) 0.409ms
[info][gc] GC(3) Concurrent reset bitmaps 48M->48M(4096M) 0.081ms
The mirror patch goes to 8u.
Thanks,
-Aleksey
From rkennke at redhat.com Wed May 10 10:49:32 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 10 May 2017 12:49:32 +0200
Subject: RFR 9/8u: Print heap changes in phases that actually change heap
In-Reply-To: <8d6147ce-785b-fa80-c3a9-345ca01293c6@redhat.com>
References: <8d6147ce-785b-fa80-c3a9-345ca01293c6@redhat.com>
Message-ID: <061a2e89-f31e-0fbd-fdff-e139d5300d11@redhat.com>
Am 10.05.2017 um 12:25 schrieb Aleksey Shipilev:
> Hi,
>
> I think it makes sense to print heap changes only for phases that change heap
> occupancy. This means demoting Init-UR, and promoting Conc Reset Bitmaps:
>
> diff -r 4ee5b7c8a8ac src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp Tue May 09
> 12:26:31 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp Wed May 10
> 12:24:22 2017 +0200
> @@ -244,7 +244,7 @@
>
> {
> - GCTraceTime(Info, gc) time("Concurrent reset bitmaps", gc_timer,
> GCCause::_no_gc);
> + GCTraceTime(Info, gc) time("Concurrent reset bitmaps", gc_timer,
> GCCause::_no_gc, true);
>
> diff -r 4ee5b7c8a8ac src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp
> --- a/src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp Tue May 09
> 12:26:31 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp Wed May 10
> 12:24:22 2017 +0200
> @@ -147,7 +147,7 @@
> void VM_ShenandoahInitUpdateRefs::doit() {
> GCIdMark gc_id_mark(_gc_id);
> ShenandoahHeap *sh = ShenandoahHeap::heap();
> - GCTraceTime(Info, gc) time("Pause Init Update Refs", sh->gc_timer(),
> GCCause::_no_gc, true);
> + GCTraceTime(Info, gc) time("Pause Init Update Refs", sh->gc_timer(),
> GCCause::_no_gc);
>
> Will look like this:
>
> [info][gc] GC(3) Pause Init Mark 0.481ms
> [info][gc] GC(3) Concurrent marking 3698M->3704M(4096M) 2.087ms
> [info][gc] GC(3) Pause Final Mark 3704M->182M(4096M) 1.778ms
> [info][gc] GC(3) Concurrent evacuation 184M->198M(4096M) 1.029ms
> [info][gc] GC(3) Pause Init Update Refs 0.019ms
> [info][gc] GC(3) Concurrent update references 200M->206M(4096M) 1.760ms
> [info][gc] GC(3) Pause Final Update Refs 206M->48M(4096M) 0.409ms
> [info][gc] GC(3) Concurrent reset bitmaps 48M->48M(4096M) 0.081ms
>
> The mirror patch goes to 8u.
Yep!
From ashipile at redhat.com Wed May 10 10:51:18 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 10 May 2017 10:51:18 +0000
Subject: hg: shenandoah/jdk9/hotspot: Print heap changes in phases that
actually change heap occupancy
Message-ID: <201705101051.v4AApIYu000644@aojmv0008.oracle.com>
Changeset: 783aaa07ce76
Author: shade
Date: 2017-05-10 12:30 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/783aaa07ce76
Print heap changes in phases that actually change heap occupancy
! src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp
From ashipile at redhat.com Wed May 10 10:51:24 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 10 May 2017 10:51:24 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Print heap changes in phases
that actually change heap occupancy
Message-ID: <201705101051.v4AApOID000737@aojmv0008.oracle.com>
Changeset: 0076322a406c
Author: shade
Date: 2017-05-10 12:30 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/0076322a406c
[backport] Print heap changes in phases that actually change heap occupancy
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc_implementation/shenandoah/vm_operations_shenandoah.cpp
From shade at redhat.com Wed May 10 10:58:39 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 10 May 2017 12:58:39 +0200
Subject: RFR [8u]: Backport parallel code cache scanning
Message-ID: <5ad35c31-66f6-5e20-223a-a5245994399d@redhat.com>
Hi,
We know workloads that have lots of compiled code, and there parallel code cache
scans are beneficial.
Let's backport it from 9 to 8u:
http://cr.openjdk.java.net/~shade/shenandoah/parallel-codecache-8u/webrev.01/
Testing: hotspot_gc_shenandoah, jcstress -m quick
Thanks,
-Aleksey
From roman at kennke.org Wed May 10 11:35:40 2017
From: roman at kennke.org (Roman Kennke)
Date: Wed, 10 May 2017 13:35:40 +0200
Subject: RFR [8u]: Backport parallel code cache scanning
In-Reply-To: <5ad35c31-66f6-5e20-223a-a5245994399d@redhat.com>
References: <5ad35c31-66f6-5e20-223a-a5245994399d@redhat.com>
Message-ID:
Am 10.05.2017 um 12:58 schrieb Aleksey Shipilev:
> Hi,
>
> We know workloads that have lots of compiled code, and there parallel code cache
> scans are beneficial.
>
> Let's backport it from 9 to 8u:
> http://cr.openjdk.java.net/~shade/shenandoah/parallel-codecache-8u/webrev.01/
>
> Testing: hotspot_gc_shenandoah, jcstress -m quick
>
> Thanks,
> -Aleksey
>
>
Yes
From ashipile at redhat.com Wed May 10 12:22:14 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 10 May 2017 12:22:14 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Parallel code cache scanning
Message-ID: <201705101222.v4ACMEUr004376@aojmv0008.oracle.com>
Changeset: dcdf681fc866
Author: shade
Date: 2017-05-10 14:20 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/dcdf681fc866
[backport] Parallel code cache scanning
! src/share/vm/code/codeCache.cpp
! src/share/vm/code/codeCache.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahRootProcessor.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahRootProcessor.hpp
From rkennke at redhat.com Wed May 10 14:07:41 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 10 May 2017 16:07:41 +0200
Subject: RFR: Simplify parallel synchronizer roots iterator
Message-ID: <91829ec6-25c7-0991-72a1-6f60eed61d6b@redhat.com>
The parallel synchronizer roots iterator is a bit too complicated for no
good reason (I think, correct me if I'm wrong). It's doing two CASes per
loop iteration, once over the CHAINED_MARKER/CLAIMED_MARKER in the
block, and once more over the _cur field in the
ParallelObjectSynchronizerIterator. I think doing a very simple CAS-loop
over the _cur field is good enough, and maybe even improves performance
slightly:
This is what I get with gc-bench's roots.Sync benchmark:
baseline:
[15,840s][info][gc,stats] S: Synchronizer Roots = 0,16 s (a
= 17334 us) (n = 9) (lvls, us = 11523, 13867, 14062,
16992, 25422)
[15,841s][info][gc,stats] UR: Synchronizer Roots = 0,11 s (a
= 12206 us) (n = 9) (lvls, us = 9707, 10352, 11719,
11914, 15709)
patched:
[15,463s][info][gc,stats] S: Synchronizer Roots = 0,15 s (a
= 16147 us) (n = 9) (lvls, us = 11523, 12500, 15430,
15820, 25440)
[15,463s][info][gc,stats] UR: Synchronizer Roots = 0,10 s (a
= 11111 us) (n = 9) (lvls, us = 9160, 9414, 9766,
11523, 13777)
http://cr.openjdk.java.net/~rkennke/simplify-sync-roots/webrev.00/
As a nice bonus, this reduces diffs between upstream jdk9 and shenandoah
jdk9 (removed CLAIMED_MARKER and cas_set_object())
Testing: hotspot_gc_shenandoah, specjvm-derby, gc-bench/roots.Sync
Note: gc-basher fails in hotspot_gc_shenandoah run, but doesn't seem
related to that change.
Ok?
Roman
From rkennke at redhat.com Wed May 10 14:11:05 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 10 May 2017 16:11:05 +0200
Subject: RFR: Simplify parallel synchronizer roots iterator
In-Reply-To: <91829ec6-25c7-0991-72a1-6f60eed61d6b@redhat.com>
References: <91829ec6-25c7-0991-72a1-6f60eed61d6b@redhat.com>
Message-ID: <46115508-39ee-8400-990c-d193d0e686db@redhat.com>
Am 10.05.2017 um 16:07 schrieb Roman Kennke:
> The parallel synchronizer roots iterator is a bit too complicated for no
> good reason (I think, correct me if I'm wrong). It's doing two CASes per
> loop iteration, once over the CHAINED_MARKER/CLAIMED_MARKER in the
> block, and once more over the _cur field in the
> ParallelObjectSynchronizerIterator. I think doing a very simple CAS-loop
> over the _cur field is good enough, and maybe even improves performance
> slightly:
>
> This is what I get with gc-bench's roots.Sync benchmark:
>
> baseline:
> [15,840s][info][gc,stats] S: Synchronizer Roots = 0,16 s (a
> = 17334 us) (n = 9) (lvls, us = 11523, 13867, 14062,
> 16992, 25422)
> [15,841s][info][gc,stats] UR: Synchronizer Roots = 0,11 s (a
> = 12206 us) (n = 9) (lvls, us = 9707, 10352, 11719,
> 11914, 15709)
>
> patched:
> [15,463s][info][gc,stats] S: Synchronizer Roots = 0,15 s (a
> = 16147 us) (n = 9) (lvls, us = 11523, 12500, 15430,
> 15820, 25440)
> [15,463s][info][gc,stats] UR: Synchronizer Roots = 0,10 s (a
> = 11111 us) (n = 9) (lvls, us = 9160, 9414, 9766,
> 11523, 13777)
>
>
> http://cr.openjdk.java.net/~rkennke/simplify-sync-roots/webrev.00/
>
>
>
> As a nice bonus, this reduces diffs between upstream jdk9 and shenandoah
> jdk9 (removed CLAIMED_MARKER and cas_set_object())
>
> Testing: hotspot_gc_shenandoah, specjvm-derby, gc-bench/roots.Sync
>
> Note: gc-basher fails in hotspot_gc_shenandoah run, but doesn't seem
> related to that change.
I just noticed a leftover from some jdk8u related work in my patch.
Here's the cleaned up patch:
http://cr.openjdk.java.net/~rkennke/simplify-sync-roots/webrev.01/
Ok now?
Roman
From shade at redhat.com Wed May 10 14:14:35 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 10 May 2017 16:14:35 +0200
Subject: RFR: Simplify parallel synchronizer roots iterator
In-Reply-To: <46115508-39ee-8400-990c-d193d0e686db@redhat.com>
References: <91829ec6-25c7-0991-72a1-6f60eed61d6b@redhat.com>
<46115508-39ee-8400-990c-d193d0e686db@redhat.com>
Message-ID: <04ae5f9d-0ca2-94c5-9c4d-ad87a3a163b8@redhat.com>
On 05/10/2017 04:11 PM, Roman Kennke wrote:
> http://cr.openjdk.java.net/~rkennke/simplify-sync-roots/webrev.01/
The idea sounds fine.
*) my_cur and next_block variables could be *void, to avoid clutter?
*) I still see the asserts that reference CLAIMEDMARKER -- does it even build
with fastdebug?
Thanks,
-Aleksey
From rkennke at redhat.com Wed May 10 14:53:08 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 10 May 2017 16:53:08 +0200
Subject: RFR: Simplify parallel synchronizer roots iterator
In-Reply-To: <04ae5f9d-0ca2-94c5-9c4d-ad87a3a163b8@redhat.com>
References: <91829ec6-25c7-0991-72a1-6f60eed61d6b@redhat.com>
<46115508-39ee-8400-990c-d193d0e686db@redhat.com>
<04ae5f9d-0ca2-94c5-9c4d-ad87a3a163b8@redhat.com>
Message-ID:
Am 10.05.2017 um 16:14 schrieb Aleksey Shipilev:
> On 05/10/2017 04:11 PM, Roman Kennke wrote:
>> http://cr.openjdk.java.net/~rkennke/simplify-sync-roots/webrev.01/
> The idea sounds fine.
>
> *) my_cur and next_block variables could be *void, to avoid clutter?
Infact, I made them be ObjectMonitor* instead, and also let claim()
return ObjectMonitor*. This looks like the usual way to ignore PaddedEnd
unless where it's needed (e.g. below in iteration code).
> *) I still see the asserts that reference CLAIMEDMARKER -- does it even build
> with fastdebug?
Oops.
Also, we don't need the destructor anymore to restore CHAINEDMARKER, and
we also don't need _head anymore. Yippie!
http://cr.openjdk.java.net/~rkennke/simplify-sync-roots/webrev.02/
Ok now?
Roman
From shade at redhat.com Wed May 10 15:06:07 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 10 May 2017 17:06:07 +0200
Subject: RFR: Simplify parallel synchronizer roots iterator
In-Reply-To:
References: <91829ec6-25c7-0991-72a1-6f60eed61d6b@redhat.com>
<46115508-39ee-8400-990c-d193d0e686db@redhat.com>
<04ae5f9d-0ca2-94c5-9c4d-ad87a3a163b8@redhat.com>
Message-ID: <6a7a07a1-0657-1bf3-5c83-532387159b3e@redhat.com>
On 05/10/2017 04:53 PM, Roman Kennke wrote:
> Am 10.05.2017 um 16:14 schrieb Aleksey Shipilev:
>> On 05/10/2017 04:11 PM, Roman Kennke wrote:
>>> http://cr.openjdk.java.net/~rkennke/simplify-sync-roots/webrev.01/
>> The idea sounds fine.
>>
>> *) my_cur and next_block variables could be *void, to avoid clutter?
> Infact, I made them be ObjectMonitor* instead, and also let claim()
> return ObjectMonitor*. This looks like the usual way to ignore PaddedEnd
> unless where it's needed (e.g. below in iteration code).
>> *) I still see the asserts that reference CLAIMEDMARKER -- does it even build
>> with fastdebug?
> Oops.
>
> Also, we don't need the destructor anymore to restore CHAINEDMARKER, and
> we also don't need _head anymore. Yippie!
>
> http://cr.openjdk.java.net/~rkennke/simplify-sync-roots/webrev.02/
>
>
> Ok now?
OK.
-Aleksey
From roman at kennke.org Wed May 10 15:14:21 2017
From: roman at kennke.org (roman at kennke.org)
Date: Wed, 10 May 2017 15:14:21 +0000
Subject: hg: shenandoah/jdk9/hotspot: Simplify parallel synchronizer roots
iterator.
Message-ID: <201705101514.v4AFELKC004335@aojmv0008.oracle.com>
Changeset: 29a651648ff2
Author: rkennke
Date: 2017-05-10 16:50 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/29a651648ff2
Simplify parallel synchronizer roots iterator.
! src/share/vm/runtime/objectMonitor.cpp
! src/share/vm/runtime/objectMonitor.hpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
From shade at redhat.com Wed May 10 15:32:44 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 10 May 2017 17:32:44 +0200
Subject: RFR: fastdebug updates matrix on evacuation
Message-ID: <350da4e5-1a08-a27b-7b3d-49a2be0ceabf@redhat.com>
Oops.
http://cr.openjdk.java.net/~shade/shenandoah/assert-update-matix/webrev.01/
Thanks,
-Aleksey
From rkennke at redhat.com Wed May 10 15:38:41 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 10 May 2017 17:38:41 +0200
Subject: RFR: fastdebug updates matrix on evacuation
In-Reply-To: <350da4e5-1a08-a27b-7b3d-49a2be0ceabf@redhat.com>
References: <350da4e5-1a08-a27b-7b3d-49a2be0ceabf@redhat.com>
Message-ID: <04a18445-55b3-37ae-b625-e738726440fc@redhat.com>
Am 10.05.2017 um 17:32 schrieb Aleksey Shipilev:
> Oops.
>
> http://cr.openjdk.java.net/~shade/shenandoah/assert-update-matix/webrev.01/
>
> Thanks,
> -Aleksey
>
Ok. Might need it someday when we're using the matrix for UR or such.
(Right now we're rebuilding the matrix during UR... reminds me that we
might want to skip building the matrix during conc-mark?)
Roman
From ashipile at redhat.com Wed May 10 15:43:20 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 10 May 2017 15:43:20 +0000
Subject: hg: shenandoah/jdk9/hotspot: fastdebug updates matrix on evacuation
Message-ID: <201705101543.v4AFhKFJ022007@aojmv0008.oracle.com>
Changeset: 3c313d99a200
Author: shade
Date: 2017-05-10 17:41 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/3c313d99a200
fastdebug updates matrix on evacuation
! src/share/vm/gc/shenandoah/shenandoahHeap.inline.hpp
From rkennke at redhat.com Wed May 10 20:15:59 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 10 May 2017 22:15:59 +0200
Subject: RFR: Fast synchronizer root scanning
Message-ID: <76248eb0-b806-8220-f6bd-5502a2ed104f@redhat.com>
When scanning synchronizer roots, we are scanning everything in
gBlockList, which, as far as I can tell, are all active monitor blocks
of all threads, plus any free blocks that have piled up. Doing this
appears to be quite inefficient.
I have implemented an alternative way to scan synchronizer roots: each
Thread maintains its own thread-local list of in-use monitors and a
free-list. The global in-use list is only used for 'moribund' threads. I
think it is sufficient scan each Thread's local in-use list plus the
global list. I checked with SPECjvm and jcstress and found no ill
issues. Performance wise, it looks *much* better:
baseline:
[14,393s][info][gc,stats] S: Thread Roots = 0,34 s (a
= 37748 us) (n = 9) (lvls, us = 36523, 36523, 36914,
37305, 42215)
[14,393s][info][gc,stats] S: Synchronizer Roots = 0,14 s (a
= 15115 us) (n = 9) (lvls, us = 9746, 10938, 14258,
14648, 25847)
[14,393s][info][gc,stats] UR: Thread Roots = 0,22 s (a
= 24967 us) (n = 9) (lvls, us = 12305, 24219, 25977,
27148, 27758)
[14,393s][info][gc,stats] UR: Synchronizer Roots = 0,11 s (a
= 11906 us) (n = 9) (lvls, us = 8340, 9082, 12109,
12695, 13787)
patched:
[14,293s][info][gc,stats] S: Thread Roots = 0,36 s (a
= 40365 us) (n = 9) (lvls, us = 32031, 32031, 34570,
37109, 67224)
[14,293s][info][gc,stats] S: Synchronizer Roots = 0,00 s (a
= 0 us) (n = 9) (lvls, us = 0, 0,
0, 0, 0)
[14,294s][info][gc,stats] UR: Thread Roots = 0,22 s (a
= 24459 us) (n = 9) (lvls, us = 15820, 20508, 22070,
26172, 32573)
[14,294s][info][gc,stats] UR: Synchronizer Roots = 0,00 s (a
= 0 us) (n = 9) (lvls, us = 0, 0,
0, 0, 0)
I.e. even though the work of scanning synchronizer roots is added to
thread roots scanning, thread-roots scanning does not very significantly
take longer, but sync roots scanning drops to 0 (there's usually nothing
to do for global in-use list).
I guarded this new behaviour with -XX:+ShenandoahFastSyncRoots, and
defaulting to false for now. This will allow us to do more testing and
get feedback from hotspot-runtime-dev, before enabling it by default.
http://cr.openjdk.java.net/~rkennke/fastsyncroots/webrev.00/
Testing: hotspot_gc_shenandoah, jcstress -m quick, jmh-specjvm
Ok?
From zgu at redhat.com Wed May 10 20:20:03 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 10 May 2017 16:20:03 -0400
Subject: RFR: Fast synchronizer root scanning
In-Reply-To: <76248eb0-b806-8220-f6bd-5502a2ed104f@redhat.com>
References: <76248eb0-b806-8220-f6bd-5502a2ed104f@redhat.com>
Message-ID: <82bb1669-386f-0733-b4c4-e46678610e8e@redhat.com>
OK.
-Zhengyu
On 05/10/2017 04:15 PM, Roman Kennke wrote:
> When scanning synchronizer roots, we are scanning everything in
> gBlockList, which, as far as I can tell, are all active monitor blocks
> of all threads, plus any free blocks that have piled up. Doing this
> appears to be quite inefficient.
>
> I have implemented an alternative way to scan synchronizer roots: each
> Thread maintains its own thread-local list of in-use monitors and a
> free-list. The global in-use list is only used for 'moribund' threads. I
> think it is sufficient scan each Thread's local in-use list plus the
> global list. I checked with SPECjvm and jcstress and found no ill
> issues. Performance wise, it looks *much* better:
>
> baseline:
> [14,393s][info][gc,stats] S: Thread Roots = 0,34 s (a
> = 37748 us) (n = 9) (lvls, us = 36523, 36523, 36914,
> 37305, 42215)
> [14,393s][info][gc,stats] S: Synchronizer Roots = 0,14 s (a
> = 15115 us) (n = 9) (lvls, us = 9746, 10938, 14258,
> 14648, 25847)
> [14,393s][info][gc,stats] UR: Thread Roots = 0,22 s (a
> = 24967 us) (n = 9) (lvls, us = 12305, 24219, 25977,
> 27148, 27758)
> [14,393s][info][gc,stats] UR: Synchronizer Roots = 0,11 s (a
> = 11906 us) (n = 9) (lvls, us = 8340, 9082, 12109,
> 12695, 13787)
>
> patched:
> [14,293s][info][gc,stats] S: Thread Roots = 0,36 s (a
> = 40365 us) (n = 9) (lvls, us = 32031, 32031, 34570,
> 37109, 67224)
> [14,293s][info][gc,stats] S: Synchronizer Roots = 0,00 s (a
> = 0 us) (n = 9) (lvls, us = 0, 0,
> 0, 0, 0)
> [14,294s][info][gc,stats] UR: Thread Roots = 0,22 s (a
> = 24459 us) (n = 9) (lvls, us = 15820, 20508, 22070,
> 26172, 32573)
> [14,294s][info][gc,stats] UR: Synchronizer Roots = 0,00 s (a
> = 0 us) (n = 9) (lvls, us = 0, 0,
> 0, 0, 0)
>
>
> I.e. even though the work of scanning synchronizer roots is added to
> thread roots scanning, thread-roots scanning does not very significantly
> take longer, but sync roots scanning drops to 0 (there's usually nothing
> to do for global in-use list).
>
> I guarded this new behaviour with -XX:+ShenandoahFastSyncRoots, and
> defaulting to false for now. This will allow us to do more testing and
> get feedback from hotspot-runtime-dev, before enabling it by default.
>
> http://cr.openjdk.java.net/~rkennke/fastsyncroots/webrev.00/
>
>
> Testing: hotspot_gc_shenandoah, jcstress -m quick, jmh-specjvm
>
> Ok?
>
>
From roman at kennke.org Wed May 10 20:25:53 2017
From: roman at kennke.org (roman at kennke.org)
Date: Wed, 10 May 2017 20:25:53 +0000
Subject: hg: shenandoah/jdk9/hotspot: Fast synchronizer root scanning.
Message-ID: <201705102025.v4AKPs0g000853@aojmv0008.oracle.com>
Changeset: 85c3e4589c8e
Author: rkennke
Date: 2017-05-10 22:23 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/85c3e4589c8e
Fast synchronizer root scanning.
! src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp
! src/share/vm/gc/shenandoah/shenandoah_globals.hpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
! src/share/vm/runtime/thread.cpp
From shade at redhat.com Thu May 11 09:14:53 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 11 May 2017 11:14:53 +0200
Subject: RFR: Enable fast synchronizer root scanning by default
Message-ID: <04da1270-4324-23b6-cd48-00f520c45155@redhat.com>
Hi,
We see good performance improvements, and positive code reviews upstream for
fast synchronizer root scanning. Let's enable it by default:
$ hg diff
diff -r 85c3e4589c8e src/share/vm/gc/shenandoah/shenandoah_globals.hpp
--- a/src/share/vm/gc/shenandoah/shenandoah_globals.hpp Wed May 10 22:23:37 2017
+0200
+++ b/src/share/vm/gc/shenandoah/shenandoah_globals.hpp Thu May 11 11:00:49 2017
+0200
@@ -214,7 +214,7 @@
"If true, only execute storeval barrier when updating " \
"references.") \
\
- experimental(bool, ShenandoahFastSyncRoots, false, \
+ experimental(bool, ShenandoahFastSyncRoots, true, \
"Enable fast synchronizer roots scanning") \
\
diagnostic(bool, ShenandoahSATBBarrier, true, \
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From rkennke at redhat.com Thu May 11 09:16:50 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Thu, 11 May 2017 11:16:50 +0200
Subject: RFR: Enable fast synchronizer root scanning by default
In-Reply-To: <04da1270-4324-23b6-cd48-00f520c45155@redhat.com>
References: <04da1270-4324-23b6-cd48-00f520c45155@redhat.com>
Message-ID:
Am 11.05.2017 um 11:14 schrieb Aleksey Shipilev:
> Hi,
>
> We see good performance improvements, and positive code reviews upstream for
> fast synchronizer root scanning. Let's enable it by default:
>
> $ hg diff
> diff -r 85c3e4589c8e src/share/vm/gc/shenandoah/shenandoah_globals.hpp
> --- a/src/share/vm/gc/shenandoah/shenandoah_globals.hpp Wed May 10 22:23:37 2017
> +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoah_globals.hpp Thu May 11 11:00:49 2017
> +0200
> @@ -214,7 +214,7 @@
> "If true, only execute storeval barrier when updating " \
> "references.") \
> \
> - experimental(bool, ShenandoahFastSyncRoots, false, \
> + experimental(bool, ShenandoahFastSyncRoots, true, \
> "Enable fast synchronizer roots scanning") \
> \
> diagnostic(bool, ShenandoahSATBBarrier, true, \
>
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
Ok
From ashipile at redhat.com Thu May 11 09:26:11 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 11 May 2017 09:26:11 +0000
Subject: hg: shenandoah/jdk9/hotspot: Enable fast synchronizer root scanning
by default
Message-ID: <201705110926.v4B9QBI7007698@aojmv0008.oracle.com>
Changeset: 63015cf54987
Author: shade
Date: 2017-05-11 11:24 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/63015cf54987
Enable fast synchronizer root scanning by default
! src/share/vm/gc/shenandoah/shenandoah_globals.hpp
From ashipile at redhat.com Thu May 11 10:35:28 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 11 May 2017 10:35:28 +0000
Subject: hg: shenandoah/jdk8u/hotspot: 2 new changesets
Message-ID: <201705111035.v4BAZToM001641@aojmv0008.oracle.com>
Changeset: b4a4d14efbf2
Author: shade
Date: 2017-05-11 12:08 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/b4a4d14efbf2
[backport] Simplify parallel synchronizer roots iterator
! src/share/vm/runtime/objectMonitor.cpp
! src/share/vm/runtime/objectMonitor.hpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
Changeset: 41b9fcc408f2
Author: shade
Date: 2017-05-11 12:33 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/41b9fcc408f2
[backport] Fast synchronizer root scanning
! src/share/vm/gc_implementation/shenandoah/shenandoahRootProcessor.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoah_globals.hpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
! src/share/vm/runtime/thread.cpp
From shade at redhat.com Thu May 11 11:59:55 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 11 May 2017 13:59:55 +0200
Subject: RFR: 9+8u: Assorted cleanups
Message-ID: <736ee353-fe60-e531-f711-608ebd1bbc2b@redhat.com>
Some of these were found by static analysis, some by inspecting ASSERT blocks:
http://cr.openjdk.java.net/~shade/shenandoah/cleanups-3/webrev.01/
Testing: hotspot_gc_shenandoah
-Aleksey
From rkennke at redhat.com Thu May 11 12:18:22 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Thu, 11 May 2017 14:18:22 +0200
Subject: RFR: 9+8u: Assorted cleanups
In-Reply-To: <736ee353-fe60-e531-f711-608ebd1bbc2b@redhat.com>
References: <736ee353-fe60-e531-f711-608ebd1bbc2b@redhat.com>
Message-ID: <8bbaba54-f061-6a14-06fb-4becc820bbe7@redhat.com>
Am 11.05.2017 um 13:59 schrieb Aleksey Shipilev:
> Some of these were found by static analysis, some by inspecting ASSERT blocks:
> http://cr.openjdk.java.net/~shade/shenandoah/cleanups-3/webrev.01/
>
> Testing: hotspot_gc_shenandoah
>
> -Aleksey
>
Looks good to me.
Roman
From ashipile at redhat.com Thu May 11 12:22:55 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 11 May 2017 12:22:55 +0000
Subject: hg: shenandoah/jdk9/hotspot: Assorted cleanups.
Message-ID: <201705111222.v4BCMtIn016382@aojmv0008.oracle.com>
Changeset: 3ed2f0047b78
Author: shade
Date: 2017-05-11 14:21 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/3ed2f0047b78
Assorted cleanups.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.inline.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentThread.hpp
! src/share/vm/gc/shenandoah/shenandoahFreeSet.cpp
! src/share/vm/gc/shenandoah/shenandoahFreeSet.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.inline.hpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp
! src/share/vm/gc/shenandoah/shenandoah_globals.hpp
From zgu at redhat.com Thu May 11 12:26:21 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Thu, 11 May 2017 08:26:21 -0400
Subject: RFR(XS): Cleanup: removed redundant
ClassLoaderData::clear_claimed_marks() call
Message-ID: <7018be3e-4fdc-20ea-6b7b-4510cc345c28@redhat.com>
Now, the call is encapsulated in ShenandoahRootProcessor's cld_iterator.
Webrev:
http://cr.openjdk.java.net/~zgu/shenandoah/redundant_clear_cld/webrev.00/
Test:
hotspot_gc_shenandoah test with fastdebug and release builds.
Thanks,
-Zhengyu
From shade at redhat.com Thu May 11 12:28:41 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 11 May 2017 14:28:41 +0200
Subject: RFR(XS): Cleanup: removed redundant
ClassLoaderData::clear_claimed_marks() call
In-Reply-To: <7018be3e-4fdc-20ea-6b7b-4510cc345c28@redhat.com>
References: <7018be3e-4fdc-20ea-6b7b-4510cc345c28@redhat.com>
Message-ID: <05a4e5f7-f0d4-076c-206b-2d0dac9041d0@redhat.com>
On 05/11/2017 02:26 PM, Zhengyu Gu wrote:
> Now, the call is encapsulated in ShenandoahRootProcessor's cld_iterator.
>
> Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/redundant_clear_cld/webrev.00/
Yup.
Can you also look around 8u about the same thing?
Thanks,
-Aleksey
From ashipile at redhat.com Thu May 11 12:36:11 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 11 May 2017 12:36:11 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Assorted cleanups
Message-ID: <201705111236.v4BCaC41021305@aojmv0008.oracle.com>
Changeset: 24559fd0aeee
Author: shade
Date: 2017-05-11 14:31 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/24559fd0aeee
[backport] Assorted cleanups
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentThread.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahFreeSet.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahFreeSet.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoah_globals.hpp
From zgu at redhat.com Thu May 11 13:40:56 2017
From: zgu at redhat.com (zgu at redhat.com)
Date: Thu, 11 May 2017 13:40:56 +0000
Subject: hg: shenandoah/jdk9/hotspot: Cleanup: removed redundant cld
clear_claimed_mark call
Message-ID: <201705111340.v4BDeuJ7013236@aojmv0008.oracle.com>
Changeset: 4c0009be260d
Author: zgu
Date: 2017-05-11 08:19 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/4c0009be260d
Cleanup: removed redundant cld clear_claimed_mark call
! src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
From zgu at redhat.com Thu May 11 15:13:20 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Thu, 11 May 2017 11:13:20 -0400
Subject: RFR(XS): [8u] Cleanup: Removed redundant
ClassLoaderData::clear_claimed_marks()
Message-ID: <15a7bb7f-c1de-da5f-18da-6cf8a20d6ac4@redhat.com>
Cleanup for jdk8u.
Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/clean_cld_8u/webrev.00/
Test:
hotspot_gc_shenandoah with fastdebug and release builds.
Thanks,
-Zhengyu
From shade at redhat.com Thu May 11 15:22:24 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 11 May 2017 17:22:24 +0200
Subject: RFR(XS): [8u] Cleanup: Removed redundant
ClassLoaderData::clear_claimed_marks()
In-Reply-To: <15a7bb7f-c1de-da5f-18da-6cf8a20d6ac4@redhat.com>
References: <15a7bb7f-c1de-da5f-18da-6cf8a20d6ac4@redhat.com>
Message-ID: <6f0ae41d-100c-d17c-add2-751fafe31476@redhat.com>
On 05/11/2017 05:13 PM, Zhengyu Gu wrote:
> Cleanup for jdk8u.
>
> Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/clean_cld_8u/webrev.00/
Looks good to me.
-Aleksey
From zgu at redhat.com Thu May 11 15:29:45 2017
From: zgu at redhat.com (zgu at redhat.com)
Date: Thu, 11 May 2017 15:29:45 +0000
Subject: hg: shenandoah/jdk8u/hotspot: Cleanup: Removed redundant
ClassLoaderData::clear_claimed_marks() calls
Message-ID: <201705111529.v4BFTkVA022706@aojmv0008.oracle.com>
Changeset: e7fad5d40c0f
Author: zgu
Date: 2017-05-11 09:52 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/e7fad5d40c0f
Cleanup: Removed redundant ClassLoaderData::clear_claimed_marks() calls
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
From shade at redhat.com Thu May 11 17:39:26 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 11 May 2017 19:39:26 +0200
Subject: RFR: Update region sampling to include TLAB/GCLAB allocation data
Message-ID: <75fddbc2-4a3a-5b0d-9702-5dbaee34ae35@redhat.com>
Hi,
It seems useful to see TLAB/GCLAB allocations in Visualizer. Additionally, this
fixes "recycled" region flag handling that is updated at the inconvenient time,
and when heap region sampling is actually disabled. It does update counters on
allocation path, but that path is only normally taken to claim entire TLABs.
Webrev:
http://cr.openjdk.java.net/~shade/shenandoah/sampling-gclabs/webrev.01/
Going to commit the same to 8u too.
Testing: hotspot_gc_shenandoah; Visualizer runs with some workloads
Thanks,
-Aleksey
From rkennke at redhat.com Thu May 11 17:43:15 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Thu, 11 May 2017 19:43:15 +0200
Subject: RFR: Update region sampling to include TLAB/GCLAB allocation data
In-Reply-To: <75fddbc2-4a3a-5b0d-9702-5dbaee34ae35@redhat.com>
References: <75fddbc2-4a3a-5b0d-9702-5dbaee34ae35@redhat.com>
Message-ID: <52D00F3A-BA77-4A5C-B4F4-F67834549535@redhat.com>
Looks good to me!
Am 11. Mai 2017 19:39:26 MESZ schrieb Aleksey Shipilev :
>Hi,
>
>It seems useful to see TLAB/GCLAB allocations in Visualizer.
>Additionally, this
>fixes "recycled" region flag handling that is updated at the
>inconvenient time,
>and when heap region sampling is actually disabled. It does update
>counters on
>allocation path, but that path is only normally taken to claim entire
>TLABs.
>
>Webrev:
>http://cr.openjdk.java.net/~shade/shenandoah/sampling-gclabs/webrev.01/
>
>Going to commit the same to 8u too.
>
>Testing: hotspot_gc_shenandoah; Visualizer runs with some workloads
>
>Thanks,
>-Aleksey
--
Sent from my FairPhone
From ashipile at redhat.com Thu May 11 17:48:56 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 11 May 2017 17:48:56 +0000
Subject: hg: shenandoah/jdk9/hotspot: Update region sampling to include
TLAB/GCLAB allocation data
Message-ID: <201705111748.v4BHmuna027392@aojmv0008.oracle.com>
Changeset: 9035d78d9ffd
Author: shade
Date: 2017-05-11 19:45 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/9035d78d9ffd
Update region sampling to include TLAB/GCLAB allocation data
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.inline.hpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegion.cpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegion.hpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegion.inline.hpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.hpp
From ashipile at redhat.com Thu May 11 18:14:46 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 11 May 2017 18:14:46 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Update region sampling to
include TLAB/GCLAB allocation data
Message-ID: <201705111814.v4BIEkja006790@aojmv0008.oracle.com>
Changeset: 7acdfcbbe10f
Author: shade
Date: 2017-05-11 20:13 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/7acdfcbbe10f
[backport] Update region sampling to include TLAB/GCLAB allocation data
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegion.inline.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionCounters.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionCounters.hpp
! src/share/vm/opto/shenandoahSupport.cpp
From shade at redhat.com Thu May 11 18:25:33 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Thu, 11 May 2017 20:25:33 +0200
Subject: RFR: 9+8u: Region sampling may not be enabled because last timetick
is uninitialized
Message-ID: <99f270f3-9a28-63c8-251a-1a288a861b72@redhat.com>
D'uh:
$ hg diff
diff -r 9035d78d9ffd src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp Thu May 11
19:45:32 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp Thu May 11
20:25:09 2017 +0200
@@ -28,8 +28,9 @@
#include "gc/shenandoah/shenandoahHeapRegionCounters.hpp"
#include "runtime/perfData.hpp"
-ShenandoahHeapRegionCounters::ShenandoahHeapRegionCounters() {
-
+ShenandoahHeapRegionCounters::ShenandoahHeapRegionCounters() :
+ _last_sample_millis(0)
+{
if (UsePerfData) {
EXCEPTION_MARK;
ResourceMark rm;
Thanks,
-Aleksey
From rkennke at redhat.com Thu May 11 18:57:01 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Thu, 11 May 2017 20:57:01 +0200
Subject: RFR: 9+8u: Region sampling may not be enabled because last
timetick is uninitialized
In-Reply-To: <99f270f3-9a28-63c8-251a-1a288a861b72@redhat.com>
References: <99f270f3-9a28-63c8-251a-1a288a861b72@redhat.com>
Message-ID: <7468f1d7-a19a-cc8d-d1e8-fbeaaa2ce113@redhat.com>
Am 11.05.2017 um 20:25 schrieb Aleksey Shipilev:
> D'uh:
>
> $ hg diff
> diff -r 9035d78d9ffd src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp Thu May 11
> 19:45:32 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp Thu May 11
> 20:25:09 2017 +0200
> @@ -28,8 +28,9 @@
> #include "gc/shenandoah/shenandoahHeapRegionCounters.hpp"
> #include "runtime/perfData.hpp"
>
> -ShenandoahHeapRegionCounters::ShenandoahHeapRegionCounters() {
> -
> +ShenandoahHeapRegionCounters::ShenandoahHeapRegionCounters() :
> + _last_sample_millis(0)
> +{
> if (UsePerfData) {
> EXCEPTION_MARK;
> ResourceMark rm;
>
>
> Thanks,
> -Aleksey
>
yes!
From ashipile at redhat.com Thu May 11 19:15:58 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 11 May 2017 19:15:58 +0000
Subject: hg: shenandoah/jdk9/hotspot: Region sampling may not be enabled
because last timetick is uninitialized
Message-ID: <201705111915.v4BJFwLx028913@aojmv0008.oracle.com>
Changeset: d5d4cc781486
Author: shade
Date: 2017-05-11 21:14 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/d5d4cc781486
Region sampling may not be enabled because last timetick is uninitialized
! src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp
From ashipile at redhat.com Thu May 11 19:16:07 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Thu, 11 May 2017 19:16:07 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Region sampling may not be
enabled because last timetick is uninitialized
Message-ID: <201705111916.v4BJG7C4028981@aojmv0008.oracle.com>
Changeset: 2dd39224c175
Author: shade
Date: 2017-05-11 21:14 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/2dd39224c175
[backport] Region sampling may not be enabled because last timetick is uninitialized
! src/share/vm/gc_implementation/shenandoah/shenandoahHeapRegionCounters.cpp
From shade at redhat.com Fri May 12 10:47:06 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Fri, 12 May 2017 12:47:06 +0200
Subject: RFR: Cleanup: update-refs check in_collection_set twice
Message-ID: <2e809e33-f64a-ab5d-c82d-c11f507964ee@redhat.com>
Hi,
Minor cleanup in update-refs handling, do in_collection_set check once:
diff -r d5d4cc781486 src/share/vm/gc/shenandoah/shenandoahHeap.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahHeap.cpp Thu May 11 21:14:39 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahHeap.cpp Fri May 12 12:43:18 2017 +0200
@@ -2400,15 +2400,16 @@
void work(uint worker_id) {
ShenandoahHeapRegion* r = _regions->claim_next();
while (r != NULL) {
- if (! _heap->in_collection_set(r) &&
- ! r->is_empty()) {
- _heap->marked_object_oop_safe_iterate(r, &cl);
- } else if (_heap->in_collection_set(r)) {
+ if (_heap->in_collection_set(r)) {
HeapWord* bottom = r->bottom();
HeapWord* top = _heap->complete_top_at_mark_start(r->bottom());
if (top > bottom) {
_heap->complete_mark_bit_map()->clear_range_large(MemRegion(bottom,
top));
}
+ } else {
+ if (!r->is_empty()) {
+ _heap->marked_object_oop_safe_iterate(r, &cl);
+ }
}
if (_heap->cancelled_concgc()) {
return;
Thanks,
-Aleksey
From rkennke at redhat.com Fri May 12 10:50:39 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Fri, 12 May 2017 12:50:39 +0200
Subject: RFR: Cleanup: update-refs check in_collection_set twice
In-Reply-To: <2e809e33-f64a-ab5d-c82d-c11f507964ee@redhat.com>
References: <2e809e33-f64a-ab5d-c82d-c11f507964ee@redhat.com>
Message-ID:
Am 12.05.2017 um 12:47 schrieb Aleksey Shipilev:
> Hi,
>
> Minor cleanup in update-refs handling, do in_collection_set check once:
>
> diff -r d5d4cc781486 src/share/vm/gc/shenandoah/shenandoahHeap.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahHeap.cpp Thu May 11 21:14:39 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahHeap.cpp Fri May 12 12:43:18 2017 +0200
> @@ -2400,15 +2400,16 @@
> void work(uint worker_id) {
> ShenandoahHeapRegion* r = _regions->claim_next();
> while (r != NULL) {
> - if (! _heap->in_collection_set(r) &&
> - ! r->is_empty()) {
> - _heap->marked_object_oop_safe_iterate(r, &cl);
> - } else if (_heap->in_collection_set(r)) {
> + if (_heap->in_collection_set(r)) {
> HeapWord* bottom = r->bottom();
> HeapWord* top = _heap->complete_top_at_mark_start(r->bottom());
> if (top > bottom) {
> _heap->complete_mark_bit_map()->clear_range_large(MemRegion(bottom,
> top));
> }
> + } else {
> + if (!r->is_empty()) {
> + _heap->marked_object_oop_safe_iterate(r, &cl);
> + }
> }
> if (_heap->cancelled_concgc()) {
> return;
>
> Thanks,
> -Aleksey
>
Yes
From ashipile at redhat.com Fri May 12 10:53:01 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 12 May 2017 10:53:01 +0000
Subject: hg: shenandoah/jdk9/hotspot: Cleanup: update-refs check
in_collection_set twice
Message-ID: <201705121053.v4CAr1XN029585@aojmv0008.oracle.com>
Changeset: 71ef78a756e7
Author: shade
Date: 2017-05-12 12:51 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/71ef78a756e7
Cleanup: update-refs check in_collection_set twice
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From ashipile at redhat.com Fri May 12 11:05:11 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 12 May 2017 11:05:11 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Cleanup: update-refs check
in_collection_set twice
Message-ID: <201705121105.v4CB5BVv003862@aojmv0008.oracle.com>
Changeset: 390e6ca36177
Author: shade
Date: 2017-05-12 13:03 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/390e6ca36177
[backport] Cleanup: update-refs check in_collection_set twice
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
From shade at redhat.com Fri May 12 11:23:20 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Fri, 12 May 2017 13:23:20 +0200
Subject: RFR: Fix up pointer volatility
Message-ID: <8cdb3ac3-4c63-50f6-2eb1-d360b7235ffe@redhat.com>
Hi,
Scanned through our changes against upstream to see if we get pointer volatility
right everywhere. We seem to be, and the only missing place is this:
diff -r 71ef78a756e7 src/share/vm/gc/shenandoah/shenandoahHeap.hpp
--- a/src/share/vm/gc/shenandoah/shenandoahHeap.hpp Fri May 12 12:51:33 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahHeap.hpp Fri May 12 13:21:39 2017 +0200
@@ -201,7 +201,7 @@
ShenandoahConnectionMatrix* _connection_matrix;
#ifdef ASSERT
- volatile Thread* _heap_lock_owner;
+ Thread* volatile _heap_lock_owner;
#endif
public:
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From rkennke at redhat.com Fri May 12 11:49:20 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Fri, 12 May 2017 13:49:20 +0200
Subject: RFR: Fix up pointer volatility
In-Reply-To: <8cdb3ac3-4c63-50f6-2eb1-d360b7235ffe@redhat.com>
References: <8cdb3ac3-4c63-50f6-2eb1-d360b7235ffe@redhat.com>
Message-ID:
Yes
> Hi,
>
> Scanned through our changes against upstream to see if we get pointer volatility
> right everywhere. We seem to be, and the only missing place is this:
>
> diff -r 71ef78a756e7 src/share/vm/gc/shenandoah/shenandoahHeap.hpp
> --- a/src/share/vm/gc/shenandoah/shenandoahHeap.hpp Fri May 12 12:51:33 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahHeap.hpp Fri May 12 13:21:39 2017 +0200
> @@ -201,7 +201,7 @@
> ShenandoahConnectionMatrix* _connection_matrix;
>
> #ifdef ASSERT
> - volatile Thread* _heap_lock_owner;
> + Thread* volatile _heap_lock_owner;
> #endif
>
> public:
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
From ashipile at redhat.com Fri May 12 11:51:11 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 12 May 2017 11:51:11 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Fix up pointer volatility
Message-ID: <201705121151.v4CBpBuo018798@aojmv0008.oracle.com>
Changeset: 642fc8cfdc03
Author: shade
Date: 2017-05-12 13:42 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/642fc8cfdc03
[backport] Fix up pointer volatility
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
From ashipile at redhat.com Fri May 12 11:51:31 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 12 May 2017 11:51:31 +0000
Subject: hg: shenandoah/jdk9/hotspot: Fix up pointer volatility
Message-ID: <201705121151.v4CBpWE6019098@aojmv0008.oracle.com>
Changeset: e0ac01d9dae2
Author: shade
Date: 2017-05-12 13:37 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/e0ac01d9dae2
Fix up pointer volatility
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
From shade at redhat.com Fri May 12 14:43:30 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Fri, 12 May 2017 16:43:30 +0200
Subject: RFR: Incorrect conditional matrix cleanup in SHMatrix::clean_batched
Message-ID:
Hi,
Zhengyu found this embarrassing bug introduced by me:
diff -r e0ac01d9dae2 src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp Fri May 12
13:37:36 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp Fri May 12
16:30:50 2017 +0200
@@ -117,7 +117,7 @@
size_t start = r * stride;
for (size_t i = 0; i < count; i++) {
size_t t = start + idxs[i];
- if (matrix[t] == 0) {
+ if (matrix[t] != 0) {
matrix[t] = 0;
}
}
This should not affect correctness though, because we "just" keep matrix way
more conservative than required.
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From shade at redhat.com Fri May 12 14:52:40 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Fri, 12 May 2017 16:52:40 +0200
Subject: RFR: Incorrect conditional matrix cleanup in
SHMatrix::clean_batched
In-Reply-To:
References:
Message-ID: <2ecbaccf-0dfb-7a27-3d1d-fb6ef0bc5901@redhat.com>
On 05/12/2017 04:43 PM, Aleksey Shipilev wrote:
> Hi,
>
> Zhengyu found this embarrassing bug introduced by me:
>
> diff -r e0ac01d9dae2 src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp Fri May 12
> 13:37:36 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp Fri May 12
> 16:30:50 2017 +0200
> @@ -117,7 +117,7 @@
> size_t start = r * stride;
> for (size_t i = 0; i < count; i++) {
> size_t t = start + idxs[i];
> - if (matrix[t] == 0) {
> + if (matrix[t] != 0) {
> matrix[t] = 0;
> }
> }
>
Actually, should assert too:
$ hg diff
diff -r e0ac01d9dae2 src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp Fri May 12
13:37:36 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp Fri May 12
16:48:22 2017 +0200
@@ -117,7 +117,7 @@
size_t start = r * stride;
for (size_t i = 0; i < count; i++) {
size_t t = start + idxs[i];
- if (matrix[t] == 0) {
+ if (matrix[t] != 0) {
matrix[t] = 0;
}
}
@@ -152,4 +152,13 @@
ShenandoahMatrixCleanupTask cl(_matrix, _stride, idxs, count);
ShenandoahHeap::heap()->workers()->run_task(&cl);
+
+#ifdef ASSERT
+ for (size_t i = 0; i < count; i++) {
+ for (size_t c = 0; c < _stride; c++) {
+ assert (!is_connected(idxs[i], c), "should not be connected");
+ assert (!is_connected(c, idxs[i]), "should not be connected");
+ }
+ }
+#endif
}
-Aleksey
From zgu at redhat.com Fri May 12 15:01:07 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Fri, 12 May 2017 11:01:07 -0400
Subject: RFR: Incorrect conditional matrix cleanup in
SHMatrix::clean_batched
In-Reply-To:
References:
Message-ID: <16f5855d-47ed-055b-0de1-d0eb1b6e410f@redhat.com>
Good to me.
-Zhengyu
On 05/12/2017 10:43 AM, Aleksey Shipilev wrote:
> Hi,
>
> Zhengyu found this embarrassing bug introduced by me:
>
> diff -r e0ac01d9dae2 src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp Fri May 12
> 13:37:36 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp Fri May 12
> 16:30:50 2017 +0200
> @@ -117,7 +117,7 @@
> size_t start = r * stride;
> for (size_t i = 0; i < count; i++) {
> size_t t = start + idxs[i];L
> - if (matrix[t] == 0) {
> + if (matrix[t] != 0) {
> matrix[t] = 0;
> }
> }
>
>
> This should not affect correctness though, because we "just" keep matrix way
> more conservative than required.
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
From ashipile at redhat.com Fri May 12 15:07:31 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 12 May 2017 15:07:31 +0000
Subject: hg: shenandoah/jdk9/hotspot: Incorrect conditional matrix cleanup in
SHMatrix::clean_batched
Message-ID: <201705121507.v4CF7Vlx001582@aojmv0008.oracle.com>
Changeset: 4931b832162d
Author: shade
Date: 2017-05-12 17:06 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/4931b832162d
Incorrect conditional matrix cleanup in SHMatrix::clean_batched
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp
From rkennke at redhat.com Mon May 15 19:21:14 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 15 May 2017 21:21:14 +0200
Subject: RFR: Deflate idle monitors per thread
Message-ID:
Current idle monitor deflation happens when all thread have arrived at
safepoint, but is single-threaded by the VM thread. This patch
implements per-thread idle monitor deflation. This will deflate monitors
when GC calls into Thread::oops_do() or possibly_parallel_oops_do(), and
utilizes the GC worker threads to deflate monitors. This should
parallelize well, and behave better on caches (synchronizer roots are
scanned right after deflation!). All is enabled by
-XX:+DeflateIdleMonitorsPerThread.
http://cr.openjdk.java.net/~rkennke/deflate-per-thread/webrev.00/
Testing: specjvm, hotspot_gc_shenandoah
Ok?
Roman
From rkennke at redhat.com Mon May 15 19:32:35 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 15 May 2017 21:32:35 +0200
Subject: RFR: Deflate idle monitors per thread
In-Reply-To:
References:
Message-ID: <226140a3-452a-ef5b-e9e5-b699d349bc53@redhat.com>
CC'ing Aleksey. OpenJDK lists are down atm.
Roman
Am 15.05.2017 um 21:21 schrieb Roman Kennke:
> Current idle monitor deflation happens when all thread have arrived at
> safepoint, but is single-threaded by the VM thread. This patch
> implements per-thread idle monitor deflation. This will deflate monitors
> when GC calls into Thread::oops_do() or possibly_parallel_oops_do(), and
> utilizes the GC worker threads to deflate monitors. This should
> parallelize well, and behave better on caches (synchronizer roots are
> scanned right after deflation!). All is enabled by
> -XX:+DeflateIdleMonitorsPerThread.
>
> http://cr.openjdk.java.net/~rkennke/deflate-per-thread/webrev.00/
>
>
>
> Testing: specjvm, hotspot_gc_shenandoah
>
> Ok?
>
> Roman
>
>
From roman at kennke.org Mon May 15 19:32:24 2017
From: roman at kennke.org (roman at kennke.org)
Date: Mon, 15 May 2017 19:32:24 +0000
Subject: hg: shenandoah/jdk9/hotspot: Deflate idle monitors per thread.
Message-ID: <201705151932.v4FJWOKA013255@aojmv0008.oracle.com>
Changeset: 51a2913ba313
Author: rkennke
Date: 2017-05-15 21:27 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/51a2913ba313
Deflate idle monitors per thread.
! src/share/vm/runtime/globals.hpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
! src/share/vm/runtime/thread.cpp
From shade at redhat.com Mon May 15 15:42:28 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 15 May 2017 17:42:28 +0200
Subject: RFR: Skip RESOLVE when references update is not needed
Message-ID: <01286ece-d2ba-b310-bf7d-db4859af930b@redhat.com>
Hi,
When UR pass is done, we know there are no to-space references in heap anymore,
and we might as well skip their resolving until the next evac. Concurrent mark
already does specialize this for main loop, but not for the init mark, and
concurrent code cache scan. We had this idea before, but until UR were turned on
by default, this only affected the GC cycle after Full GC. Now it affects most
cycles.
Patch:
http://cr.openjdk.java.net/~shade/shenandoah/initmark-skip-resolve/webrev.01/
Significantly improves performance when root set is heavy:
http://cr.openjdk.java.net/~shade/shenandoah/initmark-skip-resolve/perf.txt
Testing: hotspot_gc_shenandoah; jcstress -m quick
Thanks,
-Aleksey
From shade at redhat.com Mon May 15 19:24:14 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 15 May 2017 21:24:14 +0200
Subject: RFR: Variable steps in adaptive heuristics
Message-ID: <40bd5b2f-5a02-3215-154e-00c385174dab@redhat.com>
Hi,
Current adaptive heuristics makes only +1 or -1 steps for free threshold,
depending on conditions.
This is not good for several reasons:
a) Full GC means something going completely awry, and we need to step back hard
to alleviate this. Stepping one percent is not going to cut it, because we will
probably run into another Full GC;
b) Cancelled GC means something had changed so much, that we blew the free
threshold completely -- like a workload phase change -- and we should step back
harder to see what is going on.
c) When the initial guess for free threshold is wrong, it would take a while to
arrive to most optimal one with small steps.
The idea is to make variable steps, depending on distance from target and/or
exceptional circumstances:
http://cr.openjdk.java.net/~shade/shenandoah/adaptive-varsteps/webrev.01/
Testing: hotspot_gc_shenandoah, specjbb, specjvm
Thanks,
-Aleksey
From shade at redhat.com Mon May 15 18:13:29 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 15 May 2017 20:13:29 +0200
Subject: RFR: Print correct message about gross times in stats
Message-ID:
Hi,
We should make it clear gross times are not only about TTSP, but about the
entire safepoint mechanics. Let's make it say this:
$ hg diff
diff -r 4931b832162d src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Fri May 12
17:06:04 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Mon May 15
20:10:38 2017 +0200
@@ -1018,7 +1018,9 @@
void ShenandoahCollectorPolicy::print_tracing_info(outputStream* out) {
out->cr();
out->print_cr("GC STATISTICS:");
- out->print_cr(" \"(G)\" (gross) pauses include time to safepoint. \"(N)\"
(net) pauses are times spent in GC.");
+ out->print_cr(" \"(G)\" (gross) pauses include VM time: time to notify and
block threads, do the pre-");
+ out->print_cr(" and post-safepoint housekeeping. Use
-XX:+PrintSafepointStatistics to dissect.");
+ out->print_cr(" \"(N)\" (net) pauses are the times spent in the actual GC
code.");
out->print_cr(" \"a\" is average time for each phase, look at levels to see
if average makes sense.");
out->print_cr(" \"lvls\" are quantiles: 0%% (minimum), 25%%, 50%% (median),
75%%, 100%% (maximum).");
out->cr();
Thanks,
-Aleksey
From shade at redhat.com Mon May 15 19:33:31 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 15 May 2017 21:33:31 +0200
Subject: RFR: Deflate idle monitors per thread
In-Reply-To: <226140a3-452a-ef5b-e9e5-b699d349bc53@redhat.com>
References:
<226140a3-452a-ef5b-e9e5-b699d349bc53@redhat.com>
Message-ID:
On 05/15/2017 09:32 PM, Roman Kennke wrote:
> CC'ing Aleksey. OpenJDK lists are down atm.
>
> Roman
>
> Am 15.05.2017 um 21:21 schrieb Roman Kennke:
>> Current idle monitor deflation happens when all thread have arrived at
>> safepoint, but is single-threaded by the VM thread. This patch
>> implements per-thread idle monitor deflation. This will deflate monitors
>> when GC calls into Thread::oops_do() or possibly_parallel_oops_do(), and
>> utilizes the GC worker threads to deflate monitors. This should
>> parallelize well, and behave better on caches (synchronizer roots are
>> scanned right after deflation!). All is enabled by
>> -XX:+DeflateIdleMonitorsPerThread.
>>
>> http://cr.openjdk.java.net/~rkennke/deflate-per-thread/webrev.00/
Looks good.
-Aleksey
From rkennke at redhat.com Tue May 16 07:47:28 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 16 May 2017 09:47:28 +0200
Subject: RFR: Skip RESOLVE when references update is not needed
In-Reply-To: <01286ece-d2ba-b310-bf7d-db4859af930b@redhat.com>
References: <01286ece-d2ba-b310-bf7d-db4859af930b@redhat.com>
Message-ID:
Am 15.05.2017 um 17:42 schrieb Aleksey Shipilev:
> Hi,
>
> When UR pass is done, we know there are no to-space references in heap anymore,
> and we might as well skip their resolving until the next evac. Concurrent mark
> already does specialize this for main loop, but not for the init mark, and
> concurrent code cache scan. We had this idea before, but until UR were turned on
> by default, this only affected the GC cycle after Full GC. Now it affects most
> cycles.
>
> Patch:
> http://cr.openjdk.java.net/~shade/shenandoah/initmark-skip-resolve/webrev.01/
>
> Significantly improves performance when root set is heavy:
> http://cr.openjdk.java.net/~shade/shenandoah/initmark-skip-resolve/perf.txt
>
> Testing: hotspot_gc_shenandoah; jcstress -m quick
>
> Thanks,
> -Aleksey
>
Great! Yes!
Roman
From rkennke at redhat.com Tue May 16 07:47:55 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 16 May 2017 09:47:55 +0200
Subject: RFR: Print correct message about gross times in stats
In-Reply-To:
References:
Message-ID: <3e1f048a-63c8-2cbb-61c6-9ac160b4dc45@redhat.com>
Am 15.05.2017 um 20:13 schrieb Aleksey Shipilev:
> Hi,
>
> We should make it clear gross times are not only about TTSP, but about the
> entire safepoint mechanics. Let's make it say this:
>
> $ hg diff
> diff -r 4931b832162d src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Fri May 12
> 17:06:04 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Mon May 15
> 20:10:38 2017 +0200
> @@ -1018,7 +1018,9 @@
> void ShenandoahCollectorPolicy::print_tracing_info(outputStream* out) {
> out->cr();
> out->print_cr("GC STATISTICS:");
> - out->print_cr(" \"(G)\" (gross) pauses include time to safepoint. \"(N)\"
> (net) pauses are times spent in GC.");
> + out->print_cr(" \"(G)\" (gross) pauses include VM time: time to notify and
> block threads, do the pre-");
> + out->print_cr(" and post-safepoint housekeeping. Use
> -XX:+PrintSafepointStatistics to dissect.");
> + out->print_cr(" \"(N)\" (net) pauses are the times spent in the actual GC
> code.");
> out->print_cr(" \"a\" is average time for each phase, look at levels to see
> if average makes sense.");
> out->print_cr(" \"lvls\" are quantiles: 0%% (minimum), 25%%, 50%% (median),
> 75%%, 100%% (maximum).");
> out->cr();
>
> Thanks,
> -Aleksey
>
Yes
From rkennke at redhat.com Tue May 16 07:49:56 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 16 May 2017 09:49:56 +0200
Subject: RFR: Variable steps in adaptive heuristics
In-Reply-To: <40bd5b2f-5a02-3215-154e-00c385174dab@redhat.com>
References: <40bd5b2f-5a02-3215-154e-00c385174dab@redhat.com>
Message-ID: <620a0ba0-7789-597c-62e6-8df879416653@redhat.com>
Am 15.05.2017 um 21:24 schrieb Aleksey Shipilev:
> Hi,
>
> Current adaptive heuristics makes only +1 or -1 steps for free threshold,
> depending on conditions.
>
> This is not good for several reasons:
> a) Full GC means something going completely awry, and we need to step back hard
> to alleviate this. Stepping one percent is not going to cut it, because we will
> probably run into another Full GC;
> b) Cancelled GC means something had changed so much, that we blew the free
> threshold completely -- like a workload phase change -- and we should step back
> harder to see what is going on.
> c) When the initial guess for free threshold is wrong, it would take a while to
> arrive to most optimal one with small steps.
>
> The idea is to make variable steps, depending on distance from target and/or
> exceptional circumstances:
> http://cr.openjdk.java.net/~shade/shenandoah/adaptive-varsteps/webrev.01/
>
> Testing: hotspot_gc_shenandoah, specjbb, specjvm
>
> Thanks,
> -Aleksey
>
>
Ok, yes!
From ashipile at redhat.com Tue May 16 10:06:07 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 16 May 2017 10:06:07 +0000
Subject: hg: shenandoah/jdk9/hotspot: 3 new changesets
Message-ID: <201705161006.v4GA67iR012907@aojmv0008.oracle.com>
Changeset: 477814772114
Author: shade
Date: 2017-05-16 11:22 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/477814772114
Variable steps in adaptive heuristics
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoah_globals.hpp
Changeset: fc29358b2d4d
Author: shade
Date: 2017-05-16 11:56 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/fc29358b2d4d
Print correct message about gross times in stats
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
Changeset: bbb8e765c863
Author: shade
Date: 2017-05-16 12:04 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/bbb8e765c863
Skip RESOLVE when references update is not needed
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
From ashipile at redhat.com Tue May 16 11:00:30 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 16 May 2017 11:00:30 +0000
Subject: hg: shenandoah/jdk8u/hotspot: 3 new changesets
Message-ID: <201705161100.v4GB0UuU002541@aojmv0008.oracle.com>
Changeset: edae7c21879d
Author: shade
Date: 2017-05-16 12:37 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/edae7c21879d
[backport] Variable steps in adaptive heuristics
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoah_globals.hpp
Changeset: a891895706c2
Author: shade
Date: 2017-05-16 12:47 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/a891895706c2
[backport] Print correct message about gross times in stats
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
Changeset: ce0042742112
Author: shade
Date: 2017-05-16 12:58 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/ce0042742112
[backport] Skip RESOLVE when references update is not needed
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
From shade at redhat.com Tue May 16 15:25:14 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 16 May 2017 17:25:14 +0200
Subject: RFR: Separate Full GC root operations in GC stats
Message-ID:
The only thing that Full GC shares with Init Mark is root operations. Sometimes
what is clearly the Full GC root operation gets reported under Init Mark,
confusing the analysis.
Patch:
http://cr.openjdk.java.net/~shade/shenandoah/stats-fullgc-roots/webrev.01/
Sample output:
http://cr.openjdk.java.net/~shade/shenandoah/stats-fullgc-roots/perf.txt
Testing: hotspot_gc_shenandoah
-Aleksey
From rkennke at redhat.com Tue May 16 15:34:54 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 16 May 2017 17:34:54 +0200
Subject: RFR: Separate Full GC root operations in GC stats
In-Reply-To:
References:
Message-ID:
Am 16.05.2017 um 17:25 schrieb Aleksey Shipilev:
> The only thing that Full GC shares with Init Mark is root operations. Sometimes
> what is clearly the Full GC root operation gets reported under Init Mark,
> confusing the analysis.
>
> Patch:
> http://cr.openjdk.java.net/~shade/shenandoah/stats-fullgc-roots/webrev.01/
>
> Sample output:
> http://cr.openjdk.java.net/~shade/shenandoah/stats-fullgc-roots/perf.txt
>
> Testing: hotspot_gc_shenandoah
>
> -Aleksey
>
Ok
From ashipile at redhat.com Tue May 16 15:37:16 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 16 May 2017 15:37:16 +0000
Subject: hg: shenandoah/jdk9/hotspot: Separate Full GC root operations in GC
stats
Message-ID: <201705161537.v4GFbGJx016243@aojmv0008.oracle.com>
Changeset: 1451ffa899f7
Author: shade
Date: 2017-05-16 17:34 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1451ffa899f7
Separate Full GC root operations in GC stats
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
From ashipile at redhat.com Tue May 16 15:43:41 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 16 May 2017 15:43:41 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Separate Full GC root
operations in GC stats
Message-ID: <201705161543.v4GFhfUH021714@aojmv0008.oracle.com>
Changeset: e10289c0553d
Author: shade
Date: 2017-05-16 17:41 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/e10289c0553d
[backport] Separate Full GC root operations in GC stats
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.cpp
From zgu at redhat.com Tue May 16 20:15:10 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Tue, 16 May 2017 16:15:10 -0400
Subject: RFR(XS): Matrix inbound regions do not get clear in most of cases
Message-ID: <4c8d1705-f05c-f757-553e-0a7089b392ca@redhat.com>
Webrev:
http://cr.openjdk.java.net/~zgu/shenandoah/clean_matrix_inbound/webrev.00/
Test:
fastdebug and release build: hotspot_gc_shenandoah
Modified gcbasher on to-gc1
-Zhengyu
From shade at redhat.com Tue May 16 20:18:28 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 16 May 2017 22:18:28 +0200
Subject: RFR(XS): Matrix inbound regions do not get clear in most of cases
In-Reply-To: <4c8d1705-f05c-f757-553e-0a7089b392ca@redhat.com>
References: <4c8d1705-f05c-f757-553e-0a7089b392ca@redhat.com>
Message-ID:
On 05/16/2017 10:15 PM, Zhengyu Gu wrote:
> Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/clean_matrix_inbound/webrev.00/
D'oh. Looks good. Let me do add ASSERT blocks in the follow-up patches.
-Aleksey
From zgu at redhat.com Tue May 16 20:20:55 2017
From: zgu at redhat.com (zgu at redhat.com)
Date: Tue, 16 May 2017 20:20:55 +0000
Subject: hg: shenandoah/jdk9/hotspot: Matrix inbound regions do not clear for
the most of cases
Message-ID: <201705162020.v4GKKtUC007888@aojmv0008.oracle.com>
Changeset: 83ebd5aa56ef
Author: zgu
Date: 2017-05-16 15:42 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/83ebd5aa56ef
Matrix inbound regions do not clear for the most of cases
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.inline.hpp
From shade at redhat.com Tue May 16 20:33:12 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 16 May 2017 22:33:12 +0200
Subject: RFR: Add asserts to SHConnMatrix::clear_* methods
Message-ID: <000e675c-4d1d-9524-77e9-e66d68793755@redhat.com>
It makes sense to assert more thoroughly in clear_* methods to avoid bugs like
the one Zhengyu fixed recently:
http://cr.openjdk.java.net/~shade/shenandoah/matrix-asserts-1/webrev.01/
Testing: hotspot_gc_shenandoah
-Aleksey
From zgu at redhat.com Tue May 16 21:00:56 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Tue, 16 May 2017 17:00:56 -0400
Subject: RFR: Add asserts to SHConnMatrix::clear_* methods
In-Reply-To: <000e675c-4d1d-9524-77e9-e66d68793755@redhat.com>
References: <000e675c-4d1d-9524-77e9-e66d68793755@redhat.com>
Message-ID: <82a79e89-d9fd-2543-53b4-f05f786bd03d@redhat.com>
Good to me.
-Zhengyu
On 05/16/2017 04:33 PM, Aleksey Shipilev wrote:
> It makes sense to assert more thoroughly in clear_* methods to avoid bugs like
> the one Zhengyu fixed recently:
> http://cr.openjdk.java.net/~shade/shenandoah/matrix-asserts-1/webrev.01/
>
> Testing: hotspot_gc_shenandoah
>
> -Aleksey
>
>
From rkennke at redhat.com Tue May 16 21:03:48 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 16 May 2017 23:03:48 +0200
Subject: RFR: Improve deflating even more
Message-ID: <9b2cc0d9-dcad-3045-5bd0-fe835eb0d15b@redhat.com>
Discussions on hotspot-runtime-dev and code inspection have shown a
problem with the recent monitor deflating change. When allocating object
monitors, and we exceed a certain threshold, ObjectSynchronizer induces
a special empty safepoint that only serves to deflate idle monitors.
However, last changed made that a no-op. We're potentially piling up
idle monitors until next GC safepoint, which can be longish.
Another problem is that most GCs (basically all but Shenandoah at this
point) can't handle per-thread deflation, because they store away mark
words, and abuse them as forwarding pointer. However, for deflation we
need the real mark word.
This patch:
- adds a check for the forced-deflating situation, and deflates monitors
when running into this forced deflation safepoint and for GCs that don't
support per-thread deflation.
- Collapses deflation and oop iteration into one pass, if supported by GC
- Adds some machinery to ask the GC to deflate idle monitors using
multiple GC threads, even for no-GC safepoints
- Adds some GC interfaces to ask the GC if it supports per-thread deflation
http://cr.openjdk.java.net/~rkennke/deflating/webrev.00/
Testing: hotspot_gc_shenandoah, jcstress, specjvm
Ok?
From shade at redhat.com Tue May 16 21:12:40 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 16 May 2017 23:12:40 +0200
Subject: RFR: Improve deflating even more
In-Reply-To: <9b2cc0d9-dcad-3045-5bd0-fe835eb0d15b@redhat.com>
References: <9b2cc0d9-dcad-3045-5bd0-fe835eb0d15b@redhat.com>
Message-ID: <60d45c62-5962-c726-3e21-7a90d0de886e@redhat.com>
On 05/16/2017 11:03 PM, Roman Kennke wrote:
> http://cr.openjdk.java.net/~rkennke/deflating/webrev.00/
Threads::parallel_threads_do -> Threads::parallel_java_threads_do?
Otherwise seems fine for testing. We'd need to see if that is the final form for
upstreaming soonish.
-Aleksey
From ashipile at redhat.com Tue May 16 21:14:17 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 16 May 2017 21:14:17 +0000
Subject: hg: shenandoah/jdk9/hotspot: Add asserts to SHConnMatrix::clear_*
methods
Message-ID: <201705162114.v4GLEIWk024576@aojmv0008.oracle.com>
Changeset: 3b72ef7ad344
Author: shade
Date: 2017-05-16 23:07 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/3b72ef7ad344
Add asserts to SHConnMatrix::clear_* methods
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.inline.hpp
From roman at kennke.org Tue May 16 21:30:21 2017
From: roman at kennke.org (roman at kennke.org)
Date: Tue, 16 May 2017 21:30:21 +0000
Subject: hg: shenandoah/jdk9/hotspot: Improve deflating even more.
Message-ID: <201705162130.v4GLULV8000704@aojmv0008.oracle.com>
Changeset: f42fc313b007
Author: rkennke
Date: 2017-05-16 23:28 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/f42fc313b007
Improve deflating even more.
! src/share/vm/gc/shared/collectedHeap.cpp
! src/share/vm/gc/shared/collectedHeap.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
! src/share/vm/runtime/thread.cpp
! src/share/vm/runtime/thread.hpp
From shade at redhat.com Wed May 17 15:52:00 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 17 May 2017 17:52:00 +0200
Subject: RFR: Adaptive should not be scared of user-requested System.gc()
Message-ID:
http://cr.openjdk.java.net/~shade/shenandoah/adaptive-silent-sysgc/webrev.01/
Users may trigger System.gc() for their own reasons, we might as well ignore
that in heuristics decisions that observe the heap occupancies. Also refactors a
bit.
Testing: hotspot_gc_shenandoah, sanity benchmark runs
Thanks,
-Aleksey
From rkennke at redhat.com Wed May 17 15:54:23 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 17 May 2017 17:54:23 +0200
Subject: RFR: Adaptive should not be scared of user-requested System.gc()
In-Reply-To:
References:
Message-ID: <02947496-1afe-4096-4d6c-2a33bbf4bc86@redhat.com>
Am 17.05.2017 um 17:52 schrieb Aleksey Shipilev:
> http://cr.openjdk.java.net/~shade/shenandoah/adaptive-silent-sysgc/webrev.01/
>
> Users may trigger System.gc() for their own reasons, we might as well ignore
> that in heuristics decisions that observe the heap occupancies. Also refactors a
> bit.
>
> Testing: hotspot_gc_shenandoah, sanity benchmark runs
>
> Thanks,
> -Aleksey
>
Ok
From ashipile at redhat.com Wed May 17 15:58:26 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 17 May 2017 15:58:26 +0000
Subject: hg: shenandoah/jdk9/hotspot: Adaptive should not be scared of
user-requested System.gc()
Message-ID: <201705171558.v4HFwQK7020036@aojmv0008.oracle.com>
Changeset: 8d83c6e30c74
Author: shade
Date: 2017-05-17 17:56 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/8d83c6e30c74
Adaptive should not be scared of user-requested System.gc()
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
From ashipile at redhat.com Wed May 17 16:07:25 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 17 May 2017 16:07:25 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Adaptive should not be
scared of user-requested System.gc()
Message-ID: <201705171607.v4HG7PHA024807@aojmv0008.oracle.com>
Changeset: 82747e54dfd4
Author: shade
Date: 2017-05-17 18:05 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/82747e54dfd4
[backport] Adaptive should not be scared of user-requested System.gc()
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.cpp
From shade at redhat.com Fri May 19 08:07:03 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Fri, 19 May 2017 10:07:03 +0200
Subject: RFR: jdk 9b170 merge
Message-ID: <5c34703f-a000-778a-d700-de03c3957862@redhat.com>
Hi,
Merge from http://hg.openjdk.java.net/jdk9/jdk9/ at jdk-9+170 is ready, merged
without conflicts:
http://cr.openjdk.java.net/~shade/shenandoah/merge-jdk9b170/
Comes with Module System update, JVMCI updates, string/symbol table leak fix,
and a bunch of compiler fixes. Does not require jtreg. Passes
hotspot_gc_shenandoah fine in both release and fastdebug.
Ok to push?
-Aleksey
From rkennke at redhat.com Fri May 19 08:11:07 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Fri, 19 May 2017 10:11:07 +0200
Subject: RFR: jdk 9b170 merge
In-Reply-To: <5c34703f-a000-778a-d700-de03c3957862@redhat.com>
References: <5c34703f-a000-778a-d700-de03c3957862@redhat.com>
Message-ID: <1113AA68-28F3-418A-A74C-49ABFE9A6CDD@redhat.com>
Ok
Am 19. Mai 2017 10:07:03 MESZ schrieb Aleksey Shipilev :
>Hi,
>
>Merge from http://hg.openjdk.java.net/jdk9/jdk9/ at jdk-9+170 is ready,
>merged
>without conflicts:
> http://cr.openjdk.java.net/~shade/shenandoah/merge-jdk9b170/
>
>Comes with Module System update, JVMCI updates, string/symbol table
>leak fix,
>and a bunch of compiler fixes. Does not require jtreg. Passes
>hotspot_gc_shenandoah fine in both release and fastdebug.
>
>Ok to push?
>
>-Aleksey
--
Sent from my FairPhone
From ashipile at redhat.com Fri May 19 08:32:29 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 19 May 2017 08:32:29 +0000
Subject: hg: shenandoah/jdk9/corba: 7 new changesets
Message-ID: <201705190832.v4J8WTjm012059@aojmv0008.oracle.com>
Changeset: 43de67f51801
Author: lana
Date: 2017-04-20 18:14 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/corba/rev/43de67f51801
Added tag jdk-9+166 for changeset 934c18145915
! .hgtags
Changeset: 03a2cc9c8a1e
Author: lana
Date: 2017-04-27 16:07 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/corba/rev/03a2cc9c8a1e
Added tag jdk-9+167 for changeset 43de67f51801
! .hgtags
Changeset: b2218d41edef
Author: lana
Date: 2017-05-04 16:38 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/corba/rev/b2218d41edef
Added tag jdk-9+168 for changeset 03a2cc9c8a1e
! .hgtags
Changeset: 72bb2cd3f013
Author: lana
Date: 2017-05-11 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/corba/rev/72bb2cd3f013
Added tag jdk-9+169 for changeset b2218d41edef
! .hgtags
Changeset: a3e210a93f90
Author: jjg
Date: 2017-05-10 15:24 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/corba/rev/a3e210a93f90
8180041: Fix HTML 5 issues in java.corba
Reviewed-by: alanb, lancea
! src/java.corba/share/classes/com/sun/corba/se/spi/monitoring/package.html
! src/java.corba/share/classes/org/omg/CORBA/Any.java
! src/java.corba/share/classes/org/omg/CORBA/ORB.java
! src/java.corba/share/classes/org/omg/CORBA/doc-files/compliance.html
! src/java.corba/share/classes/org/omg/CORBA/doc-files/generatedfiles.html
! src/java.corba/share/classes/org/omg/CORBA/package.html
! src/java.corba/share/classes/org/omg/CORBA/portable/package.html
! src/java.corba/share/classes/org/omg/CORBA_2_3/package.html
! src/java.corba/share/classes/org/omg/PortableInterceptor/IOP.idl
! src/java.corba/share/classes/org/omg/PortableInterceptor/Interceptors.idl
! src/java.corba/share/classes/org/omg/PortableInterceptor/package.html
! src/java.corba/share/classes/org/omg/PortableServer/package.html
Changeset: 8a4ab3b0ab9a
Author: lana
Date: 2017-05-11 18:10 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/corba/rev/8a4ab3b0ab9a
Merge
Changeset: c62e5964cfcf
Author: lana
Date: 2017-05-18 14:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/corba/rev/c62e5964cfcf
Added tag jdk-9+170 for changeset 8a4ab3b0ab9a
! .hgtags
From ashipile at redhat.com Fri May 19 08:32:32 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 19 May 2017 08:32:32 +0000
Subject: hg: shenandoah/jdk9/jaxws: 7 new changesets
Message-ID: <201705190832.v4J8WWi4012289@aojmv0008.oracle.com>
Changeset: eea021f7411c
Author: lana
Date: 2017-04-20 18:14 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxws/rev/eea021f7411c
Added tag jdk-9+166 for changeset b1f30c27367b
! .hgtags
Changeset: 1c610f1b4097
Author: aefimov
Date: 2017-04-24 18:21 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxws/rev/1c610f1b4097
8176168: Performance drop due to SAXParser SymbolTable reset
Reviewed-by: joehw, lancea
! src/java.xml.ws/share/classes/com/sun/xml/internal/messaging/saaj/util/ParserPool.java
Changeset: 2746716dcc5a
Author: lana
Date: 2017-04-27 16:07 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxws/rev/2746716dcc5a
Added tag jdk-9+167 for changeset 1c610f1b4097
! .hgtags
Changeset: e66ea56c8751
Author: lana
Date: 2017-05-04 16:38 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxws/rev/e66ea56c8751
Added tag jdk-9+168 for changeset 2746716dcc5a
! .hgtags
Changeset: 912cf69806d5
Author: lancea
Date: 2017-05-05 13:32 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxws/rev/912cf69806d5
8179566: Add additional jaxws messages to be translated
Reviewed-by: alanb, mchung
+ src/jdk.xml.ws/share/classes/com/sun/tools/internal/ws/resources/newmessages.properties
Changeset: e75d3abe579a
Author: lana
Date: 2017-05-11 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxws/rev/e75d3abe579a
Added tag jdk-9+169 for changeset 912cf69806d5
! .hgtags
Changeset: 139e7c786ee4
Author: lana
Date: 2017-05-18 14:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxws/rev/139e7c786ee4
Added tag jdk-9+170 for changeset e75d3abe579a
! .hgtags
From ashipile at redhat.com Fri May 19 08:32:35 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 19 May 2017 08:32:35 +0000
Subject: hg: shenandoah/jdk9/nashorn: 14 new changesets
Message-ID: <201705190832.v4J8WZd2012334@aojmv0008.oracle.com>
Changeset: 85bf1d0aeb09
Author: lana
Date: 2017-04-20 18:14 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/85bf1d0aeb09
Added tag jdk-9+166 for changeset 5b2e7b2101c0
! .hgtags
Changeset: 03e5f1316a2d
Author: sundar
Date: 2017-04-19 14:05 +0530
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/03e5f1316a2d
8178954: jjs uses wrong javadoc base URL
Reviewed-by: hannesw
! src/jdk.scripting.nashorn.shell/share/classes/jdk/nashorn/tools/jjs/Main.java
Changeset: c9ffb95dfef4
Author: sundar
Date: 2017-04-19 15:34 +0530
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/c9ffb95dfef4
8178315: nashorn ant build failure with @moduleGraph javadoc tag
Summary: Added support for moduleGraph tag
Reviewed-by: sundar, hannesw
Contributed-by: srinivas.dama at oracle.com
! make/project.properties
Changeset: b9a42a98ec1d
Author: jlahoda
Date: 2017-04-19 13:38 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/b9a42a98ec1d
8178012: Finish removal of -Xmodule:
Summary: Setting jtreg to use --patch-module instead of -Xmodule:.
Reviewed-by: alanb
! test/TEST.ROOT
Changeset: a623ab461523
Author: vtewari
Date: 2017-04-12 14:35 +0530
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/a623ab461523
8177656: Closed/nashorn/JDK_8034967.java starts failing (all platforms) since 9/154
Reviewed-by: jlaskey
! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/linker/JavaAdapterClassLoader.java
Changeset: e118c818dbf8
Author: lana
Date: 2017-04-21 03:33 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/e118c818dbf8
Merge
Changeset: 98935976d88c
Author: lana
Date: 2017-04-27 16:07 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/98935976d88c
Added tag jdk-9+167 for changeset e118c818dbf8
! .hgtags
Changeset: a3022cc65b17
Author: jjg
Date: 2017-04-26 10:56 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/a3022cc65b17
8179304: Fix HTML 5 errors in jdk.scripting.nashorn and jdk.dynalink module
Reviewed-by: sundar, jlaskey, hannesw
! src/jdk.dynalink/share/classes/jdk/dynalink/StandardOperation.java
! src/jdk.dynalink/share/classes/jdk/dynalink/linker/GuardingTypeConverterFactory.java
! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/TreeVisitor.java
Changeset: 0f81cde5a1f7
Author: lana
Date: 2017-04-27 21:16 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/0f81cde5a1f7
Merge
Changeset: c78163ad1a4e
Author: lana
Date: 2017-05-04 16:38 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/c78163ad1a4e
Added tag jdk-9+168 for changeset 0f81cde5a1f7
! .hgtags
Changeset: 131e25008015
Author: ihse
Date: 2017-05-09 12:54 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/131e25008015
8179889: Fix typographic errors in copyright headers
Reviewed-by: erikj, dholmes
! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/codegen/SpillObjectCreator.java
! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/codegen/TypeMap.java
! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/SpillProperty.java
! test/script/basic/JDK-8150218.js
! test/script/basic/JDK-8170594.js
! test/script/basic/JDK-8171849.js
! test/script/basic/es6/JDK-8168373.js
Changeset: 597d3dc02579
Author: lana
Date: 2017-05-11 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/597d3dc02579
Added tag jdk-9+169 for changeset 131e25008015
! .hgtags
Changeset: 550bfc15779f
Author: sdama
Date: 2017-05-12 12:12 +0530
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/550bfc15779f
8179891: JavaDoc for for..in is incorrect
Summary: Fixed javadoc typo error
Reviewed-by: sundar, hannesw, jlaskey
Contributed-by: srinivas.dama at oracle.com
! src/jdk.scripting.nashorn/share/classes/jdk/nashorn/api/tree/ForOfLoopTree.java
Changeset: fc416270a776
Author: lana
Date: 2017-05-18 14:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/nashorn/rev/fc416270a776
Added tag jdk-9+170 for changeset 550bfc15779f
! .hgtags
From ashipile at redhat.com Fri May 19 08:32:37 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 19 May 2017 08:32:37 +0000
Subject: hg: shenandoah/jdk9/langtools: 49 new changesets
Message-ID: <201705190832.v4J8WcD6012350@aojmv0008.oracle.com>
Changeset: 151bc67acf92
Author: mcimadamore
Date: 2017-04-11 14:03 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/151bc67acf92
8178414: T8177933.java fails even after fix for JDK-8178283
Summary: add T8177933.java to problem list
Reviewed-by: jlahoda
! test/ProblemList.txt
Changeset: 256d9fce6c53
Author: rfield
Date: 2017-04-11 17:26 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/256d9fce6c53
8178023: jshell tool: crash with ugly message on attempt to add non-existant module path
Reviewed-by: jlahoda
! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/JShellTool.java
! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n.properties
! src/jdk.jshell/share/classes/jdk/jshell/execution/FailOverExecutionControlProvider.java
! src/jdk.jshell/share/classes/jdk/jshell/execution/JdiInitiator.java
! test/jdk/jshell/DyingRemoteAgent.java
! test/jdk/jshell/HangingRemoteAgent.java
! test/jdk/jshell/HistoryTest.java
! test/jdk/jshell/JdiBadOptionLaunchExecutionControlTest.java
! test/jdk/jshell/JdiBadOptionListenExecutionControlTest.java
! test/jdk/jshell/JdiBogusHostListenExecutionControlTest.java
! test/jdk/jshell/ReplToolTesting.java
! test/jdk/jshell/StartOptionTest.java
! test/jdk/jshell/ToolProviderTest.java
! test/jdk/jshell/ToolReloadTest.java
! test/jdk/jshell/UITesting.java
Changeset: 3e7eab1d1e96
Author: ksrini
Date: 2017-04-12 11:42 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/3e7eab1d1e96
8178067: support for @uses/@provides tags is broken
Reviewed-by: jjg
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java
! test/jdk/javadoc/doclet/lib/JavadocTester.java
+ test/jdk/javadoc/doclet/testModules/TestModuleServices.java
! test/jdk/javadoc/doclet/testModules/TestModules.java
! test/tools/lib/toolbox/ModuleBuilder.java
Changeset: 688279815c27
Author: ksrini
Date: 2017-04-12 13:48 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/688279815c27
8178686: Fix incorrect bug id in test.
Reviewed-by: darcy
! test/jdk/javadoc/doclet/testModules/TestModuleServices.java
Changeset: 42705de602d7
Author: lana
Date: 2017-04-13 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/42705de602d7
Merge
Changeset: b51c0ba6fd8f
Author: rfield
Date: 2017-04-13 14:11 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/b51c0ba6fd8f
8178520: jshell tool: /help /save -- incorrect description of /save -start
Reviewed-by: jlahoda
! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n.properties
Changeset: ad2910e96239
Author: jjg
Date: 2017-04-14 15:54 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/ad2910e96239
8178426: Extra } is coming in the javadoc of Taglet.toString() API
Reviewed-by: ksrini, bpatel
! src/jdk.javadoc/share/classes/jdk/javadoc/doclet/Taglet.java
Changeset: d2f92cb767a6
Author: bpatel
Date: 2017-04-14 17:23 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/d2f92cb767a6
8175823: doclet crashes when documenting a single class in a module.
Reviewed-by: jjg, ksrini
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java
! test/jdk/javadoc/doclet/testModules/TestModules.java
+ test/jdk/javadoc/doclet/testModules/moduleNoExport/module-info.java
+ test/jdk/javadoc/doclet/testModules/moduleNoExport/testpkgmdlNoExport/TestClassInModuleNoExport.java
Changeset: 8b68fb0d8159
Author: jjg
Date: 2017-04-17 14:16 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/8b68fb0d8159
8178509: MODULE_SOURCE_PATH: Implement missing methods
8178493: StandardJavaFileManager: Clarify/document the use of IllegalStateException
Reviewed-by: jlahoda
! src/java.compiler/share/classes/javax/tools/StandardJavaFileManager.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java
! test/tools/javac/modules/ModuleSourcePathTest.java
! test/tools/lib/toolbox/JavacTask.java
Changeset: 229a32ad3b26
Author: jjg
Date: 2017-04-17 15:08 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/229a32ad3b26
8176801: tools/javac/platform/PlatformProviderTest.java sensitive to warnings sent to stderr
Reviewed-by: ksrini
! test/ProblemList.txt
Changeset: 2a8b403a6233
Author: jjg
Date: 2017-04-17 15:28 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/2a8b403a6233
8161295: javac, cleanup use of ModuleTestBase
Reviewed-by: ksrini
! test/tools/javac/modules/ModuleTestBase.java
Changeset: 2bd173891dcf
Author: lana
Date: 2017-04-20 18:14 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/2bd173891dcf
Added tag jdk-9+166 for changeset 2a8b403a6233
! .hgtags
Changeset: 5aa6f825b4ec
Author: jjg
Date: 2017-04-17 17:03 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/5aa6f825b4ec
8162917: langtools/test/tools/javadoc/CompletionError.java is not runnable
Reviewed-by: ksrini
! test/tools/javadoc/CompletionError.java
Changeset: b9a29aa786dd
Author: ksrini
Date: 2017-04-18 06:29 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/b9a29aa786dd
8178339: javadoc includes qualified opens in "Additional Opened Packages" section
Reviewed-by: jjg
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleWriterImpl.java
+ test/jdk/javadoc/doclet/testModules/TestIndirectExportsOpens.java
! test/jdk/javadoc/doclet/testModules/TestModules.java
! test/tools/lib/toolbox/ModuleBuilder.java
Changeset: 7977d89e3d58
Author: ksrini
Date: 2017-04-18 13:39 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/7977d89e3d58
8178904: javadoc jdk/javadoc/doclet/testModules/TestIndirectExportsOpens.java fails
Reviewed-by: jjg
! test/jdk/javadoc/doclet/testModules/TestIndirectExportsOpens.java
Changeset: 4e5cf20add94
Author: darcy
Date: 2017-04-18 13:43 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/4e5cf20add94
8178916: Update annotation processing API for terminology changes in modules
Reviewed-by: jjg
! src/java.compiler/share/classes/javax/annotation/processing/Processor.java
! src/java.compiler/share/classes/javax/lang/model/element/ModuleElement.java
Changeset: 4bc3bdb40687
Author: jjg
Date: 2017-04-18 15:03 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/4bc3bdb40687
8157763: update links to technotes in javadoc API
Reviewed-by: ksrini
! src/jdk.compiler/share/classes/com/sun/source/doctree/package-info.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/DocCommentParser.java
! src/jdk.javadoc/share/classes/com/sun/tools/doclets/Taglet.java
! src/jdk.javadoc/share/classes/com/sun/tools/javadoc/main/JavaScriptScanner.java
Changeset: 770234a2ab10
Author: jlahoda
Date: 2017-04-19 11:36 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/770234a2ab10
8178035: MergedTabShiftTabTest sometimes time outs
Summary: Splitting MergedTabShiftTabTest into two tests, increasing timeout.
Reviewed-by: rfield
! test/jdk/jshell/HistoryUITest.java
+ test/jdk/jshell/MergedTabShiftTabCommandTest.java
+ test/jdk/jshell/MergedTabShiftTabExpressionTest.java
- test/jdk/jshell/MergedTabShiftTabTest.java
! test/jdk/jshell/UITesting.java
Changeset: 7c4f03097a05
Author: jlahoda
Date: 2017-04-19 13:38 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/7c4f03097a05
8178012: Finish removal of -Xmodule:
Summary: Changing -Xmodule: option to -XD-Xmodule:, setting jtreg to use --patch-module instead of -Xmodule:.
Reviewed-by: jjg
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/main/Option.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties
! test/TEST.ROOT
+ test/tools/javac/modules/LegacyXModuleTest.java
Changeset: 68536b95691c
Author: bpatel
Date: 2017-04-19 10:26 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/68536b95691c
8176452: Javadoc UI style issue with index in description.
Reviewed-by: jjg, ksrini
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css
! test/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java
! test/jdk/javadoc/doclet/testStylesheet/pkg/A.java
Changeset: f13bda195619
Author: jlahoda
Date: 2017-04-20 13:43 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/f13bda195619
8178481: jdk/jshell/CompletionSuggestionTest.java routinely fails
Summary: Depending on the test order, the completion after 'import c' may include additional entries besides 'com', only checking 'com' is present.
Reviewed-by: rfield
! test/jdk/jshell/CompletionSuggestionTest.java
Changeset: 9be30ec2401e
Author: ksrini
Date: 2017-04-20 14:37 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/9be30ec2401e
8178830: standard doclet: -javafx option should be unhidden
Reviewed-by: bpatel, jjg
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Configuration.java
! test/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java
Changeset: 7d89c9c5d41f
Author: lana
Date: 2017-04-21 03:34 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/7d89c9c5d41f
Merge
- test/jdk/jshell/MergedTabShiftTabTest.java
Changeset: e5707ba051dc
Author: jjiang
Date: 2017-04-21 19:33 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/e5707ba051dc
8179066: Add jdk/jshell/MergedTabShiftTabExpressionTest.java to ProblemList due to JDK-8179002
Reviewed-by: rfield
! test/ProblemList.txt
Changeset: afe5cd584dce
Author: rfield
Date: 2017-04-21 12:27 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/afe5cd584dce
8178992: jshell tool: missing references in /help /set mode
Reviewed-by: jlahoda
! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/resources/l10n.properties
Changeset: b8a35541a048
Author: jjg
Date: 2017-04-20 16:13 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/b8a35541a048
8178017: JDK 9 change to symlink handling causes misleading class.public.should.be.in.file diagnostic
Reviewed-by: jlahoda, cushon
! src/jdk.compiler/share/classes/com/sun/tools/javac/file/PathFileObject.java
+ test/tools/javac/file/SymLinkTest.java
Changeset: d4a4dd242791
Author: jjg
Date: 2017-04-21 13:58 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/d4a4dd242791
Merge
Changeset: 3248e421620b
Author: jlahoda
Date: 2017-04-24 18:58 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/3248e421620b
8179002: jdk/jshell/MergedTabShiftTabExpressionTest.java fails intermittently
Summary: Handle incomming byte arrays in batches, to avoid unnecessary matching.
Reviewed-by: rfield
! test/ProblemList.txt
! test/jdk/jshell/UITesting.java
Changeset: f260f1a2acf6
Author: jjg
Date: 2017-04-24 14:59 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/f260f1a2acf6
8176327: javac produces wrong module-info
8178518: Add method JavaFileManager.contains
Reviewed-by: jlahoda
! src/java.compiler/share/classes/javax/tools/ForwardingJavaFileManager.java
! src/java.compiler/share/classes/javax/tools/JavaFileManager.java
! src/jdk.compiler/share/classes/com/sun/tools/doclint/DocLint.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/api/ClientCodeWrapper.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/api/WrappingJavaFileManager.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/file/Locations.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties
! src/jdk.jshell/share/classes/jdk/jshell/MemoryFileManager.java
! test/tools/doclint/ProvidesTest.java
! test/tools/doclint/ProvidesTest.out
! test/tools/doclint/UsesTest.java
! test/tools/doclint/UsesTest.out
! test/tools/javac/api/TestClientCodeWrapper.java
+ test/tools/javac/diags/examples/FileShouldBeOnSourcePathOrPatchPath/FileShouldBeOnSourcePathOrModulePath.java
+ test/tools/javac/diags/examples/FileShouldBeOnSourcePathOrPatchPath/sourcepath/module-info.java
! test/tools/javac/file/ModuleAndPackageLocations.java
+ test/tools/javac/modules/ContainsTest.java
+ test/tools/javac/modules/SourcePathTest.java
! test/tools/javac/modules/T8158224/T8158224.java
- test/tools/javac/modules/T8158224/T8158224.out
Changeset: 7e0ac3c3eaba
Author: lana
Date: 2017-04-27 16:07 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/7e0ac3c3eaba
Added tag jdk-9+167 for changeset f260f1a2acf6
! .hgtags
Changeset: 13f457e05af0
Author: smarks
Date: 2017-04-25 16:14 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/13f457e05af0
8168444: (jdeprscan) improper handling of primitives and primitive array types
Reviewed-by: psandoz, jjg
! src/jdk.jdeps/share/classes/com/sun/tools/jdeprscan/scan/Scan.java
! test/tools/jdeprscan/tests/jdk/jdeprscan/TestLoadExpected.csv
+ test/tools/jdeprscan/tests/jdk/jdeprscan/TestPrims.csv
+ test/tools/jdeprscan/tests/jdk/jdeprscan/TestPrims.java
Changeset: fff0714129d8
Author: jjg
Date: 2017-04-25 18:35 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/fff0714129d8
8179299: Fix HTML 5 errors in java.compiler module
8179300: Fix HTML 5 errors in jdk.compiler module
8179301: Fix HTML 5 errors in jdk.javadoc module
8179303: Fix HTML 5 errors in jdk.jshell module
Reviewed-by: darcy
! src/java.compiler/share/classes/javax/lang/model/element/ModuleElement.java
! src/java.compiler/share/classes/javax/tools/JavaFileManager.java
! src/jdk.compiler/share/classes/com/sun/source/doctree/DocTreeVisitor.java
! src/jdk.compiler/share/classes/com/sun/source/tree/LambdaExpressionTree.java
! src/jdk.compiler/share/classes/com/sun/source/tree/TreeVisitor.java
! src/jdk.javadoc/share/classes/com/sun/javadoc/FieldDoc.java
! src/jdk.javadoc/share/classes/com/sun/javadoc/MethodDoc.java
! src/jdk.javadoc/share/classes/com/sun/javadoc/Tag.java
! src/jdk.javadoc/share/classes/com/sun/javadoc/package-info.java
! src/jdk.javadoc/share/classes/jdk/javadoc/doclet/package-info.java
! src/jdk.jshell/share/classes/jdk/jshell/execution/JdiExecutionControlProvider.java
Changeset: 6a8ceafed0e8
Author: bpatel
Date: 2017-04-26 08:15 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/6a8ceafed0e8
8166306: Broken link for All Packages in java.jnlp module
Reviewed-by: jjg, ksrini
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractPackageIndexWriter.java
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDoclet.java
! test/jdk/javadoc/doclet/testModules/TestModules.java
Changeset: 29001eb39fd8
Author: smarks
Date: 2017-04-26 15:49 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/29001eb39fd8
8169203: (jdeprscan) eliminate duplicate "can't find class" errors
Reviewed-by: jjg
! src/jdk.jdeps/share/classes/com/sun/tools/jdeprscan/scan/Scan.java
+ test/tools/jdeprscan/tests/jdk/jdeprscan/TestNotFound.java
Changeset: af62fa3a3a89
Author: lana
Date: 2017-04-27 21:16 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/af62fa3a3a89
Merge
Changeset: bc21e5ba6bf1
Author: mcimadamore
Date: 2017-04-28 11:06 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/bc21e5ba6bf1
8178437: remove tools/javac/lambda/speculative/T8177933.java
Summary: remove test from test folder and from problem list
Reviewed-by: jlahoda
! test/ProblemList.txt
- test/tools/javac/lambda/speculative/T8177933.java
Changeset: c61dc27c48d1
Author: lana
Date: 2017-05-04 16:38 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/c61dc27c48d1
Added tag jdk-9+168 for changeset bc21e5ba6bf1
! .hgtags
Changeset: c4129e2ec84f
Author: alanb
Date: 2017-05-04 07:28 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/c4129e2ec84f
8178380: Module system implementation refresh (5/2017)
Reviewed-by: jjg, mchung
! src/jdk.jdeps/share/classes/com/sun/tools/classfile/ClassWriter.java
! src/jdk.jdeps/share/classes/com/sun/tools/classfile/ModuleTarget_attribute.java
! src/jdk.jdeps/share/classes/com/sun/tools/javap/AttributeWriter.java
Changeset: b22dee7cea7d
Author: alanb
Date: 2017-05-04 09:43 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/b22dee7cea7d
Merge
Changeset: 5daed0e904ac
Author: lana
Date: 2017-05-04 17:55 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/5daed0e904ac
Merge
Changeset: 1faee09b8da1
Author: jlahoda
Date: 2017-05-09 12:22 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/1faee09b8da1
8179531: JShell: fails to provide bytecode for dynamically created lambdas
Summary: Adding support for getResource(s) to the JShell's ClassLoader
Reviewed-by: psandoz, rfield
! src/jdk.jshell/share/classes/jdk/jshell/execution/DefaultLoaderDelegate.java
! src/jdk.jshell/share/classes/jdk/jshell/execution/DirectExecutionControl.java
! src/jdk.jshell/share/classes/jdk/jshell/execution/JdiExecutionControl.java
! src/jdk.jshell/share/classes/jdk/jshell/execution/LoaderDelegate.java
! src/jdk.jshell/share/classes/jdk/jshell/execution/RemoteExecutionControl.java
+ test/jdk/jshell/GetResourceTest.java
Changeset: 0e522ff8b9f5
Author: ihse
Date: 2017-05-09 12:55 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/0e522ff8b9f5
8179889: Fix typographic errors in copyright headers
Reviewed-by: erikj, dholmes
! src/jdk.jshell/share/classes/jdk/jshell/JShell.java
! src/jdk.jshell/share/classes/jdk/jshell/execution/JdiInitiator.java
! test/jdk/javadoc/doclet/testStylesheet/pkg/A.java
! test/jdk/javadoc/tool/treeapi/overview.html
! test/jdk/jshell/WrapperTest.java
! test/tools/javac/classreader/8171132/BadConstantValue.java
! test/tools/javac/modules/PoorChoiceForModuleNameTest.java
! test/tools/javadoc/sampleapi/res/fx.xml
! test/tools/javadoc/sampleapi/res/simple.xml
! test/tools/javadoc/sampleapi/res/tiny.xml
Changeset: bc191bf0aa56
Author: lana
Date: 2017-05-11 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/bc191bf0aa56
Added tag jdk-9+169 for changeset 0e522ff8b9f5
! .hgtags
Changeset: ee84b7d44339
Author: jjg
Date: 2017-05-09 17:20 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/ee84b7d44339
8179479: Add new styles to enable HTML 5 tables
Reviewed-by: bpatel
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css
Changeset: d5c5150ad2d9
Author: lana
Date: 2017-05-11 18:11 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/d5c5150ad2d9
Merge
Changeset: 6ffca66728a7
Author: ksrini
Date: 2017-05-11 15:12 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/6ffca66728a7
8179632: Fix the old doclet documentation
Reviewed-by: jjg
! src/jdk.javadoc/share/classes/com/sun/javadoc/package-info.java
! src/jdk.javadoc/share/classes/com/sun/tools/doclets/package-info.java
+ src/jdk.javadoc/share/classes/com/sun/tools/doclets/standard/package-info.java
Changeset: 77a2d6c1f321
Author: jlahoda
Date: 2017-05-12 06:42 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/77a2d6c1f321
8178152: Handling of incubating modules, the jdk.unsupported module and --add-exports with --release
Summary: --release 9 should only allow documented modules; --add-exports/--add-reads/--patch-module should not be allowed on system modules when --release 9 is used.
Reviewed-by: jjg, erikj, ihse
! make/gendata/Gendata-jdk.compiler.gmk
+ make/src/classes/build/tools/symbolgenerator/TransitiveDependencies.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Modules.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/main/Arguments.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/platform/JDKPlatformProvider.java
! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties
+ test/tools/javac/diags/examples/AddExportsWithRelease.java
+ test/tools/javac/diags/examples/AddReadsWithRelease.java
+ test/tools/javac/diags/examples/PatchModuleWithRelease/PatchModuleWithRelease.java
+ test/tools/javac/diags/examples/PatchModuleWithRelease/patchmodule/java.base/java/lang/Test.java
! test/tools/javac/options/release/ReleaseOptionClashes.java
+ test/tools/javac/options/release/ReleaseOptionUnsupported.java
Changeset: 18355c879c69
Author: bpatel
Date: 2017-05-12 18:05 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/18355c879c69
8178043: Support grouping modules in unified javadoc
Reviewed-by: jjg, ksrini
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractModuleIndexWriter.java
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexFrameWriter.java
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModuleIndexWriter.java
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ModulePackageIndexFrameWriter.java
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PackageIndexWriter.java
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/standard.properties
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/Configuration.java
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/doclets.properties
! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Group.java
! test/jdk/javadoc/doclet/testModules/TestModules.java
Changeset: aae59039c1f5
Author: lana
Date: 2017-05-18 14:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/langtools/rev/aae59039c1f5
Added tag jdk-9+170 for changeset 18355c879c69
! .hgtags
From ashipile at redhat.com Fri May 19 08:32:39 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 19 May 2017 08:32:39 +0000
Subject: hg: shenandoah/jdk9: 51 new changesets
Message-ID: <201705190832.v4J8WdSe012354@aojmv0008.oracle.com>
Changeset: 7d5d7ae50c72
Author: rriggs
Date: 2017-04-11 14:20 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/7d5d7ae50c72
8178347: Process and ProcessHandle getPid method name inconsistency
Reviewed-by: alanb, bpb
! test/lib/jdk/test/lib/apps/LingeredApp.java
! test/lib/jdk/test/lib/process/ProcessTools.java
Changeset: 35fbd9906dfc
Author: erikj
Date: 2017-04-13 09:41 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/35fbd9906dfc
8177822: Move closed jib configuration for arm platforms to open
Reviewed-by: tbell
! common/conf/jib-profiles.js
Changeset: 9e093f2eaabc
Author: erikj
Date: 2017-04-13 09:50 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/9e093f2eaabc
8176271: Still unable to build JDK 9 on some *7 sparcs
Reviewed-by: ihse
! common/conf/jib-profiles.js
Changeset: 455bd4cb2482
Author: lana
Date: 2017-04-13 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/455bd4cb2482
Merge
Changeset: ba5b16c9c6d8
Author: darcy
Date: 2017-04-13 14:38 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/ba5b16c9c6d8
8177553: Address removal lint warnings in the JDK build
Reviewed-by: mchung, erikj
! make/common/SetupJavaCompilers.gmk
Changeset: cf6ee4d4c839
Author: lana
Date: 2017-04-20 18:14 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/cf6ee4d4c839
Added tag jdk-9+166 for changeset ba5b16c9c6d8
! .hgtags
Changeset: d3c1b028c499
Author: shurailine
Date: 2017-04-17 19:23 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/d3c1b028c499
8173801: Modify makefiles to not build demos and samples bundles.
Reviewed-by: ihse, prr, erikj
! common/autoconf/spec.gmk.in
! common/bin/compare_exceptions.sh.incl
! common/nb_native/nbproject/configurations.xml
! make/Bundles.gmk
! make/Images.gmk
! make/Main.gmk
Changeset: 566474d7b2e0
Author: ihse
Date: 2017-04-19 10:24 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/566474d7b2e0
8172312: Update docs target and image for new combined docs
Reviewed-by: erikj, mchung
Contributed-by: Magnus Ihse Bursie , Mandy Chung
! make/Javadoc.gmk
! make/Main.gmk
! make/common/MakeBase.gmk
! make/common/Modules.gmk
Changeset: 0bf994fa4ee5
Author: ihse
Date: 2017-04-19 10:44 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/0bf994fa4ee5
8176785: Add build support to generate PNG file from .dot file
Reviewed-by: erikj, mchung
! make/Help.gmk
! make/Javadoc.gmk
! make/Main.gmk
! make/common/Modules.gmk
+ make/devkit/createGraphvizBundle.sh
Changeset: e5c480ca7b29
Author: ihse
Date: 2017-04-19 10:58 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/e5c480ca7b29
8178965: Second part of JDK-8176785
Reviewed-by: erikj, mchung
! common/autoconf/basics.m4
! common/autoconf/generated-configure.sh
! common/autoconf/jdk-options.m4
! common/autoconf/spec.gmk.in
! common/conf/jib-profiles.js
Changeset: cfdfc9d56584
Author: jlahoda
Date: 2017-04-19 13:37 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/cfdfc9d56584
8178012: Finish removal of -Xmodule:
Summary: Setting jtreg to use --patch-module instead of -Xmodule:, avoiding -Xmodule: in InMemoryJavaCompiler.
Reviewed-by: alanb
! test/lib/jdk/test/lib/InMemoryJavaCompiler.java
Changeset: d0e9877fff61
Author: mchung
Date: 2017-04-20 08:00 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/d0e9877fff61
8175819: OS name and arch in JMOD files should match the values as in the bundle names
Reviewed-by: erikj, ihse
! common/autoconf/generated-configure.sh
! common/autoconf/platform.m4
! common/autoconf/spec.gmk.in
! make/CreateJmods.gmk
! make/Images.gmk
Changeset: a01845fd5cfb
Author: mchung
Date: 2017-04-20 15:06 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/a01845fd5cfb
8179035: Include tool modules in unified docs
Reviewed-by: lancea
! make/common/Modules.gmk
Changeset: 118722fb3973
Author: lana
Date: 2017-04-21 03:33 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/118722fb3973
Merge
Changeset: 6832b2d9d1ae
Author: ihse
Date: 2017-04-21 11:31 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/6832b2d9d1ae
8175036: All API docs should be built for HTML 5
Reviewed-by: erikj
! make/Javadoc.gmk
Changeset: e7f726bdc75d
Author: ihse
Date: 2017-04-23 21:10 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/e7f726bdc75d
8178038: Copy jdwp-protocol.html to proper location
8178039: Copy jvmti.html to proper location
8178316: Add JVM-MANAGEMENT-MIB.mib to jdk/src/java.management/share/specs/
Reviewed-by: erikj, mchung
! make/Javadoc.gmk
! make/Main.gmk
! make/common/Modules.gmk
Changeset: 35017c286513
Author: ihse
Date: 2017-04-23 21:34 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/35017c286513
8179022: Add serialization spec as markdown
Reviewed-by: erikj, mchung, rriggs
! common/autoconf/generated-configure.sh
! common/autoconf/jdk-options.m4
! common/conf/jib-profiles.js
! make/Javadoc.gmk
! make/devkit/createGraphvizBundle.sh
+ make/devkit/createPandocBundle.sh
Changeset: 8d4bb4d437fe
Author: lana
Date: 2017-04-27 16:07 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/8d4bb4d437fe
Added tag jdk-9+167 for changeset 35017c286513
! .hgtags
Changeset: e1cd0e7075ae
Author: ksrini
Date: 2017-04-25 07:54 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/e1cd0e7075ae
8178725: provide way to link to external documentation
Reviewed-by: dholmes, erikj, ihse, jjg
! make/Javadoc.gmk
Changeset: 4a25d35d9159
Author: ihse
Date: 2017-04-26 14:34 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/4a25d35d9159
8178042: Allow custom taglets
Reviewed-by: erikj, mchung
! make/Javadoc.gmk
Changeset: 7f290cff26cd
Author: lana
Date: 2017-04-27 21:16 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/7f290cff26cd
Merge
Changeset: 55b9ec67de79
Author: ihse
Date: 2017-04-28 10:46 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/55b9ec67de79
8179361: specify -javafx option for javadoc command
Reviewed-by: erikj
! make/Javadoc.gmk
Changeset: a09f8a1f40ef
Author: dnsimon
Date: 2017-04-27 23:06 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/a09f8a1f40ef
8177845: Need a mechanism to load Graal
Reviewed-by: kvn, iveresov, mchung
! make/CompileJavaModules.gmk
! make/common/Modules.gmk
Changeset: 143d4c87bc1e
Author: erikj
Date: 2017-04-28 15:40 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/143d4c87bc1e
8179225: Update graphviz bundle script with up to date build instructions
Reviewed-by: tbell, ihse
! make/devkit/createGraphvizBundle.sh
Changeset: 8e1d0bed44e5
Author: lana
Date: 2017-05-04 16:38 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/8e1d0bed44e5
Added tag jdk-9+168 for changeset 143d4c87bc1e
! .hgtags
Changeset: 481bd01358a9
Author: ihse
Date: 2017-05-03 08:46 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/481bd01358a9
8179453: Add a proper SetupProcessMarkdown
Reviewed-by: erikj
! common/doc/testing.md
! make/Javadoc.gmk
! make/UpdateBuildDocs.gmk
+ make/common/ProcessMarkdown.gmk
Changeset: 5288abbc445c
Author: erikj
Date: 2017-05-03 20:49 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/5288abbc445c
8179438: Incremental builds broken on Windows
Reviewed-by: tbell, ihse
! make/common/NativeCompilation.gmk
Changeset: 0b1d62e12105
Author: alanb
Date: 2017-05-04 07:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/0b1d62e12105
8178380: Module system implementation refresh (5/2017)
Reviewed-by: alanb
Contributed-by: mandy.chung at oracle.com
! common/autoconf/generated-configure.sh
! common/autoconf/platform.m4
! common/autoconf/spec.gmk.in
! make/CreateJmods.gmk
! make/ReleaseFile.gmk
Changeset: 30db903fa442
Author: alanb
Date: 2017-05-04 09:43 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/30db903fa442
Merge
! common/autoconf/generated-configure.sh
Changeset: 25a364291f63
Author: lana
Date: 2017-05-04 17:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/25a364291f63
Merge
Changeset: 7931344eeb84
Author: ihse
Date: 2017-05-05 13:56 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/7931344eeb84
8179557: Update generated Javadoc footer documentation link
Reviewed-by: erikj
! make/Javadoc.gmk
Changeset: a0c7c5e12113
Author: ihse
Date: 2017-05-08 08:46 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/a0c7c5e12113
8179658: SetupProcessMarkdown creates long file names
Reviewed-by: tbell, erikj
! make/Javadoc.gmk
Changeset: 65694748f53c
Author: ihse
Date: 2017-05-08 14:02 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/65694748f53c
8140268: Generate link to specification license for JavaDoc API documentation
Reviewed-by: erikj
! make/Javadoc.gmk
Changeset: b25838a28195
Author: ihse
Date: 2017-05-09 14:31 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/b25838a28195
8179879: Clarify install.sh
Reviewed-by: erikj
! common/autoconf/build-aux/install.sh
Changeset: a0ce1616b7f1
Author: lana
Date: 2017-05-11 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/a0ce1616b7f1
Added tag jdk-9+169 for changeset b25838a28195
! .hgtags
Changeset: 7583288d0802
Author: ihse
Date: 2017-05-10 09:02 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/7583288d0802
8178278: Move Standard Algorithm Names document to specs directory
Reviewed-by: erikj
! make/Javadoc.gmk
Changeset: 4635fa3adac6
Author: erikj
Date: 2017-05-10 18:27 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/4635fa3adac6
8179867: JDK9 b167: demos exist in JDK bundles
Reviewed-by: ihse
! make/Bundles.gmk
! make/Main.gmk
Changeset: e50b2825a070
Author: tbell
Date: 2017-05-10 14:55 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/e50b2825a070
8180129: Bundles.gmk:181: *** unterminated call to function 'filter-out': missing ')'. Stop.
Reviewed-by: erikj
! make/Bundles.gmk
Changeset: d045961bbd5c
Author: ihse
Date: 2017-05-11 08:56 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/d045961bbd5c
8179105: Respect "include_in_docs" property from imported modules.
Reviewed-by: mchung, erikj
! make/common/Modules.gmk
Changeset: 4dfb05777cb6
Author: erikj
Date: 2017-05-11 18:41 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/4dfb05777cb6
8180083: Adjust Jib and JDL configurations for 9 to support new generation Mach 5
Reviewed-by: tbell, ihse
! common/conf/jib-profiles.js
Changeset: 503670294c7d
Author: lana
Date: 2017-05-11 18:10 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/503670294c7d
Merge
Changeset: f1ca22ebd70f
Author: iignatyev
Date: 2017-05-11 13:58 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/f1ca22ebd70f
8180037: move jdk.test.lib.InMemoryJavaCompiler to a separate package
Reviewed-by: mseledtsov, vlivanov
! test/lib/RedefineClassHelper.java
- test/lib/jdk/test/lib/InMemoryJavaCompiler.java
+ test/lib/jdk/test/lib/compiler/InMemoryJavaCompiler.java
Changeset: 52fd3ed2536f
Author: iignatyev
Date: 2017-05-11 13:58 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/52fd3ed2536f
8180004: jdk.test.lib.DynamicVMOption should be moved to jdk.test.lib.management
Reviewed-by: mseledtsov, vlivanov
- test/lib/jdk/test/lib/DynamicVMOption.java
+ test/lib/jdk/test/lib/management/DynamicVMOption.java
Changeset: 69879afbd98f
Author: ihse
Date: 2017-05-12 19:09 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/69879afbd98f
8175825: Stop including pubs repo
Reviewed-by: erikj
! common/autoconf/generated-configure.sh
! common/autoconf/spec.gmk.in
! common/bin/hgforest.sh
! common/doc/building.html
! common/doc/testing.html
+ make/Docs.gmk
- make/Javadoc.gmk
! make/Main.gmk
Changeset: f6e365a5e489
Author: ihse
Date: 2017-05-12 19:11 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/f6e365a5e489
8180281: --with-jtreg is broken for many use cases
Reviewed-by: erikj
! common/autoconf/generated-configure.sh
! common/autoconf/toolchain.m4
! make/RunTests.gmk
Changeset: c569c88b7650
Author: mchung
Date: 2017-05-12 13:29 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/c569c88b7650
8180208: Provide a new docs bundle page
Reviewed-by: ihse, jjg
! make/Docs.gmk
! make/Main.gmk
Changeset: 2878d95ace72
Author: ihse
Date: 2017-05-15 16:34 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/2878d95ace72
8180342: Fixup path for jtreg
Reviewed-by: erikj
! common/autoconf/generated-configure.sh
! common/autoconf/toolchain.m4
Changeset: 9f46e4fbae64
Author: ihse
Date: 2017-05-16 14:13 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/9f46e4fbae64
8180420: Set PATH for dot and pandoc in JIB
Reviewed-by: erikj
! common/conf/jib-profiles.js
Changeset: 4d163ec59d98
Author: ihse
Date: 2017-05-16 14:14 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/4d163ec59d98
8180328: Bad links in footer of all javadoc-generated pages
Reviewed-by: erikj
! make/Docs.gmk
Changeset: 30196d168c55
Author: lana
Date: 2017-05-18 14:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/30196d168c55
Added tag jdk-9+170 for changeset 4d163ec59d98
! .hgtags
Changeset: 1729a008c49f
Author: shade
Date: 2017-05-19 10:13 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/rev/1729a008c49f
Merge
- make/Javadoc.gmk
- test/lib/jdk/test/lib/DynamicVMOption.java
- test/lib/jdk/test/lib/InMemoryJavaCompiler.java
From ashipile at redhat.com Fri May 19 08:32:42 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 19 May 2017 08:32:42 +0000
Subject: hg: shenandoah/jdk9/hotspot: 33 new changesets
Message-ID: <201705190832.v4J8WhDe012392@aojmv0008.oracle.com>
Changeset: e8699be63872
Author: iveresov
Date: 2017-04-11 11:34 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/e8699be63872
8176887: AOT: SIGSEGV in AOTCodeHeap::next when using specific configuration
Summary: Derive MethodCounters from Metadata
Reviewed-by: kvn, coleenp
! src/share/vm/oops/metadata.hpp
! src/share/vm/oops/methodCounters.cpp
! src/share/vm/oops/methodCounters.hpp
Changeset: 66ec8add62cd
Author: dholmes
Date: 2017-04-11 19:39 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/66ec8add62cd
8135161: Missing commas in copyright notices
Reviewed-by: sspitsyn
! src/cpu/s390/vm/c1_Runtime1_s390.cpp
! src/share/vm/runtime/commandLineFlagConstraintsRuntime.cpp
! src/share/vm/runtime/commandLineFlagConstraintsRuntime.hpp
Changeset: 773e40f3fc21
Author: never
Date: 2017-04-06 00:03 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/773e40f3fc21
8178119: [JVMCI] when rethrowing exceptions at deopt the exception must be fetched after materialization
Reviewed-by: kvn
! src/share/vm/runtime/deoptimization.cpp
Changeset: 00bf892e5553
Author: rriggs
Date: 2017-04-12 11:43 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/00bf892e5553
8178347: Process and ProcessHandle getPid method name inconsistency
Reviewed-by: hseigel
! test/runtime/libadimalloc.solaris.sparc/Testlibadimalloc.java
! test/serviceability/attach/AttachSetGetFlag.java
! test/serviceability/tmtools/jstack/DaemonThreadTest.java
! test/serviceability/tmtools/jstack/SpreadLockTest.java
! test/serviceability/tmtools/jstack/ThreadNamesTest.java
! test/serviceability/tmtools/jstack/TraveledLockTest.java
! test/serviceability/tmtools/jstack/WaitNotifyThreadTest.java
! test/serviceability/tmtools/jstat/GcCapacityTest.java
! test/serviceability/tmtools/jstat/GcCauseTest01.java
! test/serviceability/tmtools/jstat/GcCauseTest02.java
! test/serviceability/tmtools/jstat/GcCauseTest03.java
! test/serviceability/tmtools/jstat/GcNewTest.java
! test/serviceability/tmtools/jstat/GcTest01.java
! test/serviceability/tmtools/jstat/GcTest02.java
Changeset: 4d6df9a75465
Author: dlong
Date: 2017-04-12 16:36 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/4d6df9a75465
8158168: Missing bounds checks for some String intrinsics
Reviewed-by: vlivanov, thartmann, sherman
! src/share/vm/opto/library_call.cpp
+ test/compiler/intrinsics/string/TestStringUTF16IntrinsicRangeChecks.java
! test/compiler/patches/java.base/java/lang/Helper.java
Changeset: bbf855a44562
Author: lana
Date: 2017-04-13 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/bbf855a44562
Merge
Changeset: 560d7aa083a2
Author: iignatyev
Date: 2017-04-14 18:31 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/560d7aa083a2
8178731: compiler/ciReplay/SABase.java does not compile
Reviewed-by: iignatyev, sspitsyn
Contributed-by: ekaterina.pavlova at oracle.com
! test/compiler/ciReplay/SABase.java
! test/serviceability/sa/sadebugd/SADebugDTest.java
Changeset: 443a768ec827
Author: lana
Date: 2017-04-20 18:14 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/443a768ec827
Added tag jdk-9+166 for changeset 560d7aa083a2
! .hgtags
Changeset: a92a6f4a454e
Author: jlahoda
Date: 2017-04-19 13:38 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/a92a6f4a454e
8178012: Finish removal of -Xmodule:
Summary: Setting jtreg to use --patch-module instead of -Xmodule:.
Reviewed-by: alanb
! test/TEST.ROOT
Changeset: 4368832d1991
Author: zmajo
Date: 2017-04-19 14:37 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/4368832d1991
8178723: Workaround for failure of CRC32C intrinsic on x86 machines without CLMUL support (JDK-8178720)
Summary: Disable CRC32C intrinsic on affected machines. Improve tests.
Reviewed-by: kvn, simonis, mdoerr, aph
Contributed-by: Lutz Schmidt , Zoltan Majo
! src/cpu/x86/vm/vm_version_x86.cpp
! test/compiler/intrinsics/zip/TestCRC32.java
! test/compiler/intrinsics/zip/TestCRC32C.java
Changeset: 0cdc61e61d57
Author: coleenp
Date: 2016-12-01 14:21 -0500
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/0cdc61e61d57
8168699: Validate special case invocations
Reviewed-by: acorn, kvn, lfoltan, ctornqvi, ahgross, vlivanov
! src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp
! src/cpu/arm/vm/c1_LIRAssembler_arm.cpp
! src/cpu/arm/vm/c1_LIRGenerator_arm.cpp
! src/cpu/ppc/vm/c1_LIRGenerator_ppc.cpp
! src/cpu/s390/vm/c1_LIRGenerator_s390.cpp
! src/cpu/sparc/vm/c1_LIRGenerator_sparc.cpp
! src/cpu/x86/vm/c1_LIRGenerator_x86.cpp
! src/share/vm/c1/c1_CodeStubs.hpp
! src/share/vm/c1/c1_GraphBuilder.cpp
! src/share/vm/c1/c1_Instruction.hpp
! src/share/vm/ci/ciInstanceKlass.cpp
! src/share/vm/ci/ciInstanceKlass.hpp
! src/share/vm/ci/ciMethod.cpp
! src/share/vm/ci/ciMethod.hpp
! src/share/vm/interpreter/interpreterRuntime.cpp
! src/share/vm/interpreter/linkResolver.cpp
! src/share/vm/interpreter/linkResolver.hpp
! src/share/vm/oops/cpCache.cpp
! src/share/vm/oops/cpCache.hpp
! src/share/vm/opto/doCall.cpp
! src/share/vm/prims/methodHandles.cpp
! src/share/vm/runtime/javaCalls.cpp
Changeset: b7690ac63aa5
Author: iveresov
Date: 2017-04-19 18:02 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/b7690ac63aa5
8178047: Aliasing problem with raw memory accesses
Summary: Require equal bases when unaliasing offsets for raw accesses
Reviewed-by: kvn
! src/share/vm/opto/memnode.cpp
! src/share/vm/opto/memnode.hpp
+ test/compiler/unsafe/TestRawAliasing.java
Changeset: 7650e0dcbf51
Author: lana
Date: 2017-04-21 03:34 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/7650e0dcbf51
Merge
Changeset: 1ca7ed1b17b5
Author: ehelin
Date: 2017-04-22 12:05 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1ca7ed1b17b5
8179013: Deprecate the Concurrent Mark Sweep (CMS) Garbage Collector
Reviewed-by: sjohanss, sangheki
! src/share/vm/runtime/arguments.cpp
! test/gc/startup_warnings/TestCMS.java
Changeset: efe1782aad5c
Author: lana
Date: 2017-04-27 16:07 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/efe1782aad5c
Added tag jdk-9+167 for changeset 1ca7ed1b17b5
! .hgtags
Changeset: f1cca489e9c6
Author: kbarrett
Date: 2017-04-26 22:34 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/f1cca489e9c6
8179084: HotSpot VM fails to start when AggressiveHeap is set
Summary: Don't set default ParallelGCThreads when processing AggressiveHeap
Reviewed-by: stefank, ehelin
! src/share/vm/runtime/arguments.cpp
+ test/gc/arguments/TestAggressiveHeap.java
Changeset: 537dbd601b34
Author: lana
Date: 2017-04-27 21:16 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/537dbd601b34
Merge
Changeset: fbb9c8026495
Author: dnsimon
Date: 2017-04-28 02:54 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/fbb9c8026495
8177845: Need a mechanism to load Graal
Reviewed-by: kvn, iveresov, mchung
! .mx.jvmci/.pydevproject
! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/EventProvider.java
! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotJVMCICompilerConfig.java
! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotJVMCIRuntime.java
! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotMemoryAccessProviderImpl.java
! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedObjectTypeImpl.java
! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.services/src/jdk/vm/ci/services/JVMCIServiceLocator.java
! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.services/src/jdk/vm/ci/services/Services.java
+ src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.services/src/jdk/vm/ci/services/internal/ReflectionAccessJDK.java
! src/jdk.internal.vm.ci/share/classes/module-info.java
! src/jdk.internal.vm.compiler/.mx.graal/.pydevproject
! src/jdk.internal.vm.compiler/.mx.graal/suite.py
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.api.test/src/org/graalvm/compiler/api/test/Graal.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.common/src/org/graalvm/compiler/core/common/util/ModuleAPI.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/CheckGraalInvariants.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/InterfaceMethodHandleTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/OptionsVerifierTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/StaticInterfaceFieldTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/UnbalancedMonitorsTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyBailoutUsageTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyDebugUsageTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/VerifyVirtualizableTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/debug/VerifyMethodMetricsTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core.test/src/org/graalvm/compiler/core/test/tutorial/StaticAnalysis.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/CheckGraalIntrinsics.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/ConstantPoolSubstitutionsTests.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/TestIntrinsicCompiles.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/CompileTheWorld.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalCompilerFactory.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/HotSpotGraalJVMCIServiceLocator.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotGraphBuilderPlugins.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/meta/HotSpotInvocationPlugins.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/AESCryptSubstitutions.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/CRC32Substitutions.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/replacements/ThreadSubstitutions.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugin.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.nodes/src/org/graalvm/compiler/nodes/graphbuilderconf/InvocationPlugins.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.printer/src/org/graalvm/compiler/printer/GraphPrinter.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements.test/src/org/graalvm/compiler/replacements/test/DeoptimizeOnExceptionTest.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/GraalServices.java
+ src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/JDK9Method.java
! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.test/src/org/graalvm/compiler/test/JLModule.java
! src/share/vm/runtime/arguments.cpp
! test/compiler/jvmci/JVM_GetJVMCIRuntimeTest.java
! test/compiler/jvmci/TestJVMCIPrintProperties.java
! test/compiler/jvmci/compilerToVM/AsResolvedJavaMethodTest.java
! test/compiler/jvmci/compilerToVM/DoNotInlineOrCompileTest.java
! test/compiler/jvmci/compilerToVM/FindUniqueConcreteMethodTest.java
! test/compiler/jvmci/compilerToVM/GetBytecodeTest.java
! test/compiler/jvmci/compilerToVM/GetClassInitializerTest.java
! test/compiler/jvmci/compilerToVM/GetConstantPoolTest.java
! test/compiler/jvmci/compilerToVM/GetExceptionTableTest.java
! test/compiler/jvmci/compilerToVM/GetImplementorTest.java
! test/compiler/jvmci/compilerToVM/GetLineNumberTableTest.java
! test/compiler/jvmci/compilerToVM/GetLocalVariableTableTest.java
! test/compiler/jvmci/compilerToVM/GetNextStackFrameTest.java
! test/compiler/jvmci/compilerToVM/GetResolvedJavaMethodTest.java
! test/compiler/jvmci/compilerToVM/GetResolvedJavaTypeTest.java
! test/compiler/jvmci/compilerToVM/GetStackTraceElementTest.java
! test/compiler/jvmci/compilerToVM/GetSymbolTest.java
! test/compiler/jvmci/compilerToVM/GetVtableIndexForInterfaceTest.java
! test/compiler/jvmci/compilerToVM/HasCompiledCodeForOSRTest.java
! test/compiler/jvmci/compilerToVM/HasFinalizableSubclassTest.java
! test/compiler/jvmci/compilerToVM/HasNeverInlineDirectiveTest.java
! test/compiler/jvmci/compilerToVM/InvalidateInstalledCodeTest.java
! test/compiler/jvmci/compilerToVM/IsCompilableTest.java
! test/compiler/jvmci/compilerToVM/IsMatureVsReprofileTest.java
! test/compiler/jvmci/compilerToVM/LookupKlassInPoolTest.java
! test/compiler/jvmci/compilerToVM/LookupKlassRefIndexInPoolTest.java
! test/compiler/jvmci/compilerToVM/LookupMethodInPoolTest.java
! test/compiler/jvmci/compilerToVM/LookupNameAndTypeRefIndexInPoolTest.java
! test/compiler/jvmci/compilerToVM/LookupNameInPoolTest.java
! test/compiler/jvmci/compilerToVM/LookupSignatureInPoolTest.java
! test/compiler/jvmci/compilerToVM/LookupTypeTest.java
! test/compiler/jvmci/compilerToVM/MaterializeVirtualObjectTest.java
! test/compiler/jvmci/compilerToVM/MethodIsIgnoredBySecurityStackWalkTest.java
! test/compiler/jvmci/compilerToVM/ReadConfigurationTest.java
! test/compiler/jvmci/compilerToVM/ReprofileTest.java
! test/compiler/jvmci/compilerToVM/ResolveConstantInPoolTest.java
! test/compiler/jvmci/compilerToVM/ResolveFieldInPoolTest.java
! test/compiler/jvmci/compilerToVM/ResolveMethodTest.java
! test/compiler/jvmci/compilerToVM/ResolvePossiblyCachedConstantInPoolTest.java
! test/compiler/jvmci/compilerToVM/ResolveTypeInPoolTest.java
! test/compiler/jvmci/compilerToVM/ShouldInlineMethodTest.java
! test/compiler/jvmci/errors/TestInvalidCompilationResult.java
! test/compiler/jvmci/errors/TestInvalidDebugInfo.java
! test/compiler/jvmci/errors/TestInvalidOopMap.java
! test/compiler/jvmci/events/JvmciNotifyInstallEventTest.java
! test/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/DataPatchTest.java
! test/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/InterpreterFrameSizeTest.java
! test/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/MaxOopMapStackOffsetTest.java
! test/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/SimpleCodeInstallationTest.java
! test/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/SimpleDebugInfoTest.java
! test/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/VirtualObjectDebugInfoTest.java
! test/compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/HotSpotConstantReflectionProviderTest.java
! test/compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/MemoryAccessProviderTest.java
! test/compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/MethodHandleAccessProviderTest.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ConstantTest.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/RedefineClassTest.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ResolvedJavaTypeResolveConcreteMethodTest.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ResolvedJavaTypeResolveMethodTest.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestConstantReflectionProvider.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaField.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaMethod.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaType.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestMetaAccessProvider.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaField.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaMethod.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaType.java
! test/compiler/jvmci/meta/StableFieldTest.java
Changeset: f36e864e66a7
Author: lana
Date: 2017-05-04 16:38 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/f36e864e66a7
Added tag jdk-9+168 for changeset fbb9c8026495
! .hgtags
Changeset: a0bd5a8c4e11
Author: alanb
Date: 2017-05-04 07:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/a0bd5a8c4e11
8178380: Module system implementation refresh (5/2017)
Reviewed-by: lfoltan, hseigel, mchung, sspitsyn
Contributed-by: alan.bateman at oracle.com, serguei.spitsyn at oracle.com
! src/share/vm/classfile/moduleEntry.cpp
! src/share/vm/classfile/modules.cpp
! src/share/vm/classfile/packageEntry.cpp
! src/share/vm/classfile/vmSymbols.hpp
! src/share/vm/logging/logTag.hpp
! src/share/vm/oops/instanceKlass.cpp
! src/share/vm/prims/jvmti.xml
! src/share/vm/prims/jvmtiExport.cpp
! src/share/vm/prims/jvmtiExport.hpp
! src/share/vm/runtime/arguments.cpp
! src/share/vm/runtime/globals.hpp
! src/share/vm/runtime/thread.cpp
! src/share/vm/services/attachListener.cpp
! src/share/vm/services/diagnosticCommand.cpp
! test/compiler/jsr292/RedefineMethodUsedByMultipleMethodHandles.java
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/RedefineClassTest.java
! test/compiler/profiling/spectrapredefineclass/Launcher.java
! test/compiler/profiling/spectrapredefineclass_classloaders/Launcher.java
! test/runtime/CommandLine/OptionsValidation/TestOptionsWithRangesDynamic.java
! test/runtime/Metaspace/DefineClass.java
! test/runtime/logging/ModulesTest.java
! test/runtime/logging/StartupTimeTest.java
! test/runtime/modules/JVMAddModuleExports.java
! test/runtime/modules/JVMAddModulePackage.java
! test/runtime/modules/JVMDefineModule.java
! test/runtime/modules/ModuleStress/ModuleStress.java
! test/runtime/modules/ModuleStress/ModuleStressGC.java
Changeset: fa79b980fa63
Author: alanb
Date: 2017-05-04 09:43 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/fa79b980fa63
Merge
! src/share/vm/runtime/arguments.cpp
! test/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/RedefineClassTest.java
Changeset: 70548873832d
Author: lana
Date: 2017-05-04 17:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/70548873832d
Merge
Changeset: d7da8c2b8b6c
Author: roland
Date: 2017-04-25 09:37 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/d7da8c2b8b6c
8179070: nashorn+octane's box2d causes c2 to crash with "Bad graph detected in compute_lca_of_uses"
Summary: ciTypeFlow speculates field is null but parsing uses non null constant because of concurrent class initialization
Reviewed-by: thartmann
! src/share/vm/opto/parse3.cpp
Changeset: 16d692be099c
Author: ihse
Date: 2017-05-09 12:53 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/16d692be099c
8179889: Fix typographic errors in copyright headers
Reviewed-by: erikj, dholmes
! src/cpu/aarch64/vm/assembler_aarch64.cpp
! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/runtime/ppc64/PPC64RegisterMap.java
! test/gc/class_unloading/TestClassUnloadingDisabled.java
! test/native/logging/test_logTagSetDescriptions.cpp
! test/native/memory/test_metachunk.cpp
! test/runtime/CommandLine/PermGenFlagsTest.java
! test/runtime/logging/ThreadLoggingTest.java
! test/runtime/logging/p2/B.jcod
! test/testlibrary/ctw/Makefile
Changeset: 910e24afc502
Author: lana
Date: 2017-05-11 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/910e24afc502
Added tag jdk-9+169 for changeset 16d692be099c
! .hgtags
Changeset: 830c73c1bd96
Author: ihse
Date: 2017-05-11 09:00 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/830c73c1bd96
8174848: Remove gpl templates from hotspot/make
Reviewed-by: erikj
- make/templates/gpl-cp-header
- make/templates/gpl-header
Changeset: cab132bfdaec
Author: lana
Date: 2017-05-11 18:11 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/cab132bfdaec
Merge
- make/templates/gpl-cp-header
- make/templates/gpl-header
Changeset: bffc9b76c590
Author: iignatyev
Date: 2017-05-11 14:03 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/bffc9b76c590
8180037: move jdk.test.lib.InMemoryJavaCompiler to a separate package
Reviewed-by: mseledtsov, vlivanov
! test/gc/metaspace/TestMetaspacePerfCounters.java
! test/runtime/BadObjectClass/BootstrapRedefine.java
! test/runtime/RedefineTests/ModifyAnonymous.java
! test/runtime/Unsafe/DefineClass.java
! test/runtime/Unsafe/NestedUnsafe.java
! test/runtime/defineAnonClass/NestedUnsafe.java
! test/runtime/defineAnonClass/NestedUnsafe2.java
! test/runtime/getSysPackage/GetSysPkgTest.java
! test/runtime/modules/ModuleStress/ModuleStress.java
! test/runtime/modules/PatchModule/PatchModule2Dirs.java
! test/runtime/modules/PatchModule/PatchModuleCDS.java
! test/runtime/modules/PatchModule/PatchModuleClassList.java
! test/runtime/modules/PatchModule/PatchModuleJavaBase.java
! test/runtime/modules/PatchModule/PatchModuleTest.java
! test/runtime/modules/PatchModule/PatchModuleTestJar.java
! test/runtime/modules/PatchModule/PatchModuleTestJarDir.java
! test/runtime/modules/PatchModule/PatchModuleTraceCL.java
! test/runtime/modules/Visibility/PatchModuleVisibility.java
! test/runtime/modules/Visibility/XbootcpNoVisibility.java
! test/runtime/modules/Visibility/XbootcpVisibility.java
Changeset: 434139d1c85b
Author: iignatyev
Date: 2017-05-11 14:13 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/434139d1c85b
8180004: jdk.test.lib.DynamicVMOption should be moved to jdk.test.lib.management
Reviewed-by: mseledtsov, vlivanov
! test/gc/arguments/TestDynMaxHeapFreeRatio.java
! test/gc/arguments/TestDynMinHeapFreeRatio.java
! test/gc/parallel/TestDynShrinkHeap.java
! test/runtime/CommandLine/OptionsValidation/TestJcmdOutput.java
! test/runtime/CommandLine/OptionsValidation/common/optionsvalidation/JVMOption.java
! test/runtime/CommandLine/VMOptionsFile/TestVMOptionsFile.java
Changeset: d6d7e5caf497
Author: tschatzl
Date: 2017-05-15 12:20 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/d6d7e5caf497
8180048: Interned string and symbol table leak memory during parallel unlinking
Summary: Make appending found dead BasicHashtableEntrys to the free list atomic.
Reviewed-by: ehelin, shade, coleenp
! src/share/vm/classfile/stringTable.cpp
! src/share/vm/classfile/stringTable.hpp
! src/share/vm/classfile/symbolTable.cpp
! src/share/vm/classfile/symbolTable.hpp
! src/share/vm/runtime/vmStructs.cpp
! src/share/vm/utilities/hashtable.cpp
! src/share/vm/utilities/hashtable.hpp
Changeset: 38a240fd58a2
Author: aph
Date: 2017-05-11 13:11 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/38a240fd58a2
8179954: AArch64: C1 and C2 volatile accesses are not sequentially consistent
Reviewed-by: roland
! src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp
! src/cpu/aarch64/vm/templateTable_aarch64.cpp
Changeset: b3ee8ab233ed
Author: lana
Date: 2017-05-18 14:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/b3ee8ab233ed
Added tag jdk-9+170 for changeset 38a240fd58a2
! .hgtags
Changeset: a3f03b9ae3f8
Author: shade
Date: 2017-05-19 10:13 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/a3f03b9ae3f8
Merge
- make/templates/gpl-cp-header
- make/templates/gpl-header
! src/cpu/aarch64/vm/c1_LIRGenerator_aarch64.cpp
! src/cpu/aarch64/vm/templateTable_aarch64.cpp
! src/cpu/x86/vm/c1_LIRGenerator_x86.cpp
! src/share/vm/ci/ciInstanceKlass.cpp
! src/share/vm/ci/ciInstanceKlass.hpp
! src/share/vm/classfile/modules.cpp
! src/share/vm/classfile/stringTable.cpp
! src/share/vm/interpreter/interpreterRuntime.cpp
! src/share/vm/oops/cpCache.cpp
! src/share/vm/oops/instanceKlass.cpp
! src/share/vm/opto/library_call.cpp
! src/share/vm/opto/memnode.cpp
! src/share/vm/opto/memnode.hpp
! src/share/vm/opto/parse3.cpp
! src/share/vm/prims/methodHandles.cpp
! src/share/vm/runtime/arguments.cpp
! src/share/vm/runtime/deoptimization.cpp
! src/share/vm/runtime/globals.hpp
! src/share/vm/runtime/thread.cpp
! src/share/vm/runtime/vmStructs.cpp
! src/share/vm/services/attachListener.cpp
! src/share/vm/services/diagnosticCommand.cpp
From ashipile at redhat.com Fri May 19 08:32:40 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 19 May 2017 08:32:40 +0000
Subject: hg: shenandoah/jdk9/jaxp: 19 new changesets
Message-ID: <201705190832.v4J8We4C012384@aojmv0008.oracle.com>
Changeset: 37cdb2871070
Author: rriggs
Date: 2017-04-12 10:53 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/37cdb2871070
8178347: Process and ProcessHandle getPid method name inconsistency
Reviewed-by: alanb, bpb
! test/javax/xml/jaxp/libs/jdk/testlibrary/ProcessTools.java
Changeset: 8d3febd5c9d8
Author: lana
Date: 2017-04-13 16:27 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/8d3febd5c9d8
Merge
Changeset: c98480dd22e7
Author: lana
Date: 2017-04-20 18:14 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/c98480dd22e7
Added tag jdk-9+166 for changeset 8d3febd5c9d8
! .hgtags
Changeset: 2fdbfbde3bc0
Author: joehw
Date: 2017-04-17 16:24 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/2fdbfbde3bc0
8162572: Update License Header for all JAXP sources
Reviewed-by: lancea
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/Constants.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/ExceptionConstants.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/Repository.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/AccessFlags.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Attribute.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/AttributeReader.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassFormatException.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ClassParser.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Code.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/CodeException.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Constant.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantCP.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantClass.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantDouble.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFieldref.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantFloat.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInteger.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantInterfaceMethodref.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantLong.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantMethodref.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantNameAndType.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantObject.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantPool.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantString.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantUtf8.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ConstantValue.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Deprecated.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/DescendingVisitor.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/EmptyVisitor.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/ExceptionTable.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Field.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/FieldOrMethod.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClass.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/InnerClasses.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/JavaClass.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumber.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/LineNumberTable.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariable.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/LocalVariableTable.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Method.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Node.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/PMGClass.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Signature.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/SourceFile.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMap.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapEntry.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/StackMapType.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Synthetic.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Unknown.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Utility.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/classfile/Visitor.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/AALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/AASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ACONST_NULL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ANEWARRAY.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ARETURN.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ARRAYLENGTH.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ATHROW.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/AllocationInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ArithmeticInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ArrayType.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BIPUSH.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BREAKPOINT.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BasicType.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BranchHandle.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/BranchInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CHECKCAST.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CPInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGen.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ClassGenException.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ClassObserver.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CodeExceptionGen.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/CompoundInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPoolGen.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ConstantPushInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ConversionInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/D2F.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/D2I.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/D2L.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DADD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPG.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DCMPL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DCONST.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DDIV.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DLOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DMUL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DNEG.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DREM.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DRETURN.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DSTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DSUB.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X1.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP2_X2.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X1.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/DUP_X2.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/EmptyVisitor.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ExceptionThrower.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/F2D.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/F2I.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/F2L.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FADD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPG.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FCMPL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FCONST.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FDIV.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FLOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FMUL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FNEG.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FREM.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FRETURN.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FSTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FSUB.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGen.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldGenOrMethodGen.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldObserver.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/FieldOrMethod.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GETFIELD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GETSTATIC.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GOTO_W.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/GotoInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2B.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2C.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2D.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2F.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2L.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/I2S.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IADD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IAND.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ICONST.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IDIV.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFEQ.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFGE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFGT.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFLE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFLT.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFNE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFNONNULL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IFNULL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPEQ.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ACMPNE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPEQ.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPGT.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPLT.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IF_ICMPNE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IINC.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ILOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP1.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IMPDEP2.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IMUL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INEG.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INSTANCEOF.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEINTERFACE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESPECIAL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKESTATIC.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/INVOKEVIRTUAL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IOR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IREM.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IRETURN.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ISHL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ISHR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ISTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ISUB.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IUSHR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IXOR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IfInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/IndexedInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/Instruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionComparator.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionConstants.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionFactory.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionHandle.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionList.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionListObserver.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InstructionTargeter.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/InvokeInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/JSR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/JSR_W.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/JsrInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/L2D.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/L2F.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/L2I.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LADD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LAND.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LCMP.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LCONST.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LDC.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LDC2_W.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LDC_W.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LDIV.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LLOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LMUL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LNEG.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LOOKUPSWITCH.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LOR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LREM.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LRETURN.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LSHL.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LSHR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LSTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LSUB.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LUSHR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LXOR.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LineNumberGen.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LoadClass.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LoadInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableGen.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/LocalVariableInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MONITORENTER.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MONITOREXIT.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MULTIANEWARRAY.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MethodGen.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/MethodObserver.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/NEW.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/NEWARRAY.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/NOP.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/NamedAndTyped.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ObjectType.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/POP.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/POP2.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PUSH.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PUTFIELD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PUTSTATIC.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PopInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/PushInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/RET.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/RETURN.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ReferenceType.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/ReturnaddressType.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SALOAD.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SASTORE.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SIPUSH.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SWAP.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/SWITCH.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/Select.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/StackConsumer.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/StackInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/StackProducer.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/StoreInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/TABLESWITCH.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/TargetLostException.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/Type.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/TypedInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/UnconditionalBranch.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/VariableLengthInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/generic/Visitor.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/AttributeHTML.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/BCELFactory.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/BCELifier.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ByteSequence.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/Class2HTML.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoader.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassLoaderRepository.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassQueue.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassSet.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassStack.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ClassVector.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/CodeHTML.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/ConstantHTML.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/MethodHTML.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/Repository.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/SecuritySupport.java
! src/java.xml/share/classes/com/sun/org/apache/bcel/internal/util/SyntheticRepository.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/extensions/ExpressionContext.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltBase.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltCommon.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDatetime.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltDynamic.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltMath.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/ExsltStrings.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/Extensions.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/lib/NodeInfo.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLMessages.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_de.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_en.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_es.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_fr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_it.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ja.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_ko.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_pt_BR.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_sv.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_CN.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/res/XSLTErrorResources_zh_TW.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/templates/Constants.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/utils/ConfigurationError.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/utils/ObjectFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/utils/SecuritySupport.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/CollatorFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMCache.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/DOMEnhancedForDTM.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/NodeIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/ProcessorVersion.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/StripFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/Translet.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/TransletException.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsoluteLocationPath.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AbsolutePathPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AlternativePattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AncestorPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ApplyImports.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ArgumentList.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Attribute.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/AttributeValue.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BinOpExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/BooleanExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CallTemplate.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CastCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CeilingCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Closure.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Comment.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CompilerException.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ConcatCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ContainsCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Copy.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CopyOf.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/CurrentCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DecimalFormatting.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/DocumentCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ElementAvailableCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/EqualityExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Expression.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Fallback.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilterParentPath.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FilteredAbsoluteLocationPath.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FloorCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FlowList.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FormatNumberCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/GenerateIdCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdKeyPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IdPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/If.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IllegalCharException.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Instruction.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/IntExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/KeyPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LangCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LastCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralAttribute.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LiteralExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocalNameCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LocationPathPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/LogicalExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Message.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameBase.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NameCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceAlias.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NamespaceUriCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NodeTest.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NotCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Number.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/NumberCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Otherwise.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Output.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Param.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParameterRef.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentLocationPath.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ParentPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Pattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/PositionCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Predicate.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ProcessingInstructionPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/QName.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RealExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelationalExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativeLocationPath.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RelativePathPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/RoundCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SimpleAttributeValue.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/SourceLoader.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StartsWithCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Step.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StepPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/StringLengthCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Text.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/TopLevelElement.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnaryOpExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnionPathExpr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnparsedEntityUriCall.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UnresolvedRef.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/UseAttributeSets.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/ValueOf.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Variable.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRef.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/When.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/Whitespace.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/WithParam.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathLexer.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/AttributeSetMethodGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/BooleanType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/CompareGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_ca.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_cs.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ErrorMessages_sk.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/FilterGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/IntType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/InternalError.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MarkerInstruction.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MatchGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NamedMethodGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeCounterGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSetType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordFactGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeSortRecordGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NodeType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/NumberType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ObjectType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/OutlineableChunkEnd.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/OutlineableChunkStart.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RealType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ReferenceType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/ResultTreeType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/RtMethodGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/SlotAllocator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringStack.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/StringType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TestGenerator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Type.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/TypeCheckError.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/Util.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/util/VoidType.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AbsoluteIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/AnyNodeCounter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ArrayNodeListIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/BitArray.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CachedNodeListIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ClonedNodeListIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CollatorFactoryBase.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/CurrentNodeListIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DOMBuilder.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/DupFilterIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/EmptyFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ExtendedSAX.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/Filter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilterIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/FilteredStepIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/ForwardPositionIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/LoadDocument.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MatchingIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultiValuedNodeHeapIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/MultipleNodeCounter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeCounter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeIteratorBase.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecord.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NodeSortRecordFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/NthIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SimpleResultTreeImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingleNodeCounter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SingletonIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortSettings.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/SortingIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StepIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/StripWhitespaceFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/UnionIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/dom/XSLTCDTMManager.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Attributes.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Constants.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ca.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_cs.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_de.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_es.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_fr.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_it.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ja.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_ko.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_pt_BR.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sk.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_sv.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_CN.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/ErrorMessages_zh_TW.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/InternalRuntimeError.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/MessageHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Node.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Operators.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/Parameter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/StringValueHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/OutputBuffer.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/StringOutputBuffer.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/TransletOutputHandlerFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/runtime/output/WriterOutputBuffer.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/DOM2TO.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/OutputSettings.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/SAX2DOM.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TrAXFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/TransformerHandlerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/trax/XSLTCSource.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/util/IntegerArray.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/AttrImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/AttrNSImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/AttributeMap.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/CDATASectionImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/CharacterDataImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/ChildNode.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/CommentImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMErrorImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationListImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMImplementationSourceImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMInputImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMLocatorImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMMessageFormatter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMNormalizer.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMOutputImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DOMXSImplementationSourceImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeepNodeListImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredAttrNSImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCDATASectionImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredCommentImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDOMImplementationImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredDocumentTypeImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementDefinitionImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredElementNSImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredEntityReferenceImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNode.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredNotationImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredProcessingInstructionImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DeferredTextImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/DocumentFragmentImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/ElementDefinitionImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/ElementNSImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/EntityImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/EntityReferenceImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NamedNodeMapImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NodeIteratorImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NodeListCache.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/NotationImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDOMImplementationImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/PSVIDocumentImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/ProcessingInstructionImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/RangeExceptionImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/RangeImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/TextImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/TreeWalkerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/events/EventImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/dom/events/MutationEventImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/ExternalSubsetResolver.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/RevalidationHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NamespaceBinder.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityDescription.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLEntityHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNamespaceBinder.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDProcessor.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11DTDValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XML11NSDTDValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLAttributeDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLContentSpec.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDDescription.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDLoader.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDProcessor.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLDTDValidatorFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLElementDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLEntityDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNSDTDValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLNotationDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/XMLSimpleType.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMAny.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMBinOp.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMLeaf.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMStateSet.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/CMUniOp.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/ContentModelValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/DFAContentModel.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/MixedContentModel.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dtd/models/SimpleContentModel.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DVFactoryException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/DatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeFacetException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/InvalidDatatypeValueException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/SchemaDVFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/ValidationContext.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSFacets.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/XSSimpleType.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ENTITYDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/IDREFDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/ListDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NMTOKENDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/NOTATIONDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/StringDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11IDREFDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/dtd/XML11NMTOKENDatatypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/Base64.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/util/HexBin.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AbstractDateTimeDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyAtomicDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnySimpleDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/AnyURIDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/Base64BinaryDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BaseDVFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/BooleanDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DateTimeDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DayTimeDurationDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DecimalDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DoubleDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/DurationDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/EntityDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FloatDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/FullDVFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/HexBinaryDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IDREFDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/IntegerDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/ListDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/MonthDayDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/PrecisionDecimalDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/QNameDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDVFactoryImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/SchemaDateTimeException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/StringDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TimeDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/TypeValidator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/UnionDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/dv/xs/YearMonthDurationDV.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/io/ASCIIReader.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/io/MalformedByteSequenceException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/io/UCSReader.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/io/UTF8Reader.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_de.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_es.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_fr.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_it.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ja.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_ko.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_pt_BR.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_sv.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_CN.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/msg/XMLMessageFormatter_zh_TW.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/validation/EntityState.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/validation/ValidationManager.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaNamespaceSupport.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/SchemaSymbols.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XMLSchemaException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAnnotationImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSAttributeGroupDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDDescription.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSDeclarationPool.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSGroupDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSImplementationImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSLoaderImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSMessageFormatter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSModelGroupImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSNotationDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSParticleDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/XSWildcardDecl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/IdentityConstraint.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/KeyRef.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/Selector.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/UniqueOrKey.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/identity/XPathMatcher.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/CMNodeFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMBinOp.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMLeaf.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/models/XSCMUniOp.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/AttrImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultDocument.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultElement.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultNode.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultText.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/DefaultXMLDocumentHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/ElementImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NamedNodeMapImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/NodeImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOM.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/SchemaDOMParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/opti/TextImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/SchemaContentHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAnnotationInfo.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractIDConstraintTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractParticleTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAbstractTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeGroupTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDAttributeTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDComplexTypeTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDElementTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDGroupTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDKeyrefTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDNotationTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDUniqueOrKeyTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDWildcardTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSDocumentInfo.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/ShortListImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/SimpleLocator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/StringListImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XInt.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XIntPool.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSGrammarPool.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMap4Types.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSNamedMapImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/util/XSObjectListImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/DefaultValidationErrorHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPConstants.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/JAXPValidatorComponent.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/SchemaValidatorConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/TeeXMLDocumentFilterImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/UnparsedEntityHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/datatype/DatatypeFactoryImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/AbstractXMLSchema.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMDocumentHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultAugmentor.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMResultBuilder.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DOMValidatorHelper.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/DraconianErrorHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/EmptyXMLSchema.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ErrorHandlerAdaptor.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/JAXPValidationMessageFormatter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ReadOnlyGrammarPool.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SimpleXMLSchema.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/SoftReferenceGrammarPool.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/Util.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/ValidatorHelper.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WeakReferenceXMLSchema.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/WrappedSAXException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/jaxp/validation/XSGrammarPoolContainer.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractDOMParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractSAXParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/AbstractXMLDocumentParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/BasicParserConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/CachingParserPool.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DOMParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/DTDParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/IntegratedParserConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/SAXParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/SecurityConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeAwareParserConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XIncludeParserConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configurable.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11DTDConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11NonValidatingConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLDocumentParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarCachingConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLGrammarParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XMLParser.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XPointerParserConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/AttributesProxy.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMEntityResolverWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DOMInputSource.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DatatypeMessageFormatter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DefaultErrorHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/DraconianErrorHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/EntityResolver2Wrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerProxy.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/ErrorHandlerWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/IntStack.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/LocatorProxy.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/LocatorWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/MessageFormatter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/NamespaceSupport.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAX2XNI.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXInputSource.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXLocatorWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SAXMessageFormatter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SecurityManager.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/ShadowedSymbolTable.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/SynchronizedSymbolTable.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/TeeXMLDocumentFilterImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/URI.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XML11Char.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLCatalogResolver.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLChar.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLDocumentFilterImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLEntityDescriptionImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLErrorCode.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLGrammarPoolImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLInputSourceAdaptor.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLResourceIdentifierImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLStringBuffer.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/XMLSymbols.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/utils/ConfigurationError.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/utils/ObjectFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/MultipleScopeNamespaceSupport.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/SecuritySupport.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XInclude11TextReader.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeMessageFormatter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeNamespaceSupport.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XIncludeTextReader.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerElementHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerFramework.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/Augmentations.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/NamespaceContext.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/QName.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLAttributes.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDContentModelHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDTDHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentFragmentHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLDocumentHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLLocator.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLResourceIdentifier.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XMLString.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/XNIException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/Grammar.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLDTDDescription.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarDescription.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarLoader.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLGrammarPool.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XMLSchemaDescription.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/grammars/XSGrammar.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponent.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLComponentManager.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLConfigurationException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDContentModelSource.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDScanner.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDTDSource.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentScanner.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLDocumentSource.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLEntityResolver.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLErrorHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLInputSource.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParseException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLParserConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xni/parser/XMLPullParserConfiguration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/AttributePSVI.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/ElementPSVI.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/LSInputList.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/PSVIProvider.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/ShortList.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/StringList.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSAnnotation.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSAttributeGroupDefinition.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSComplexTypeDefinition.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSConstants.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSException.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSIDCDefinition.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSImplementation.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSLoader.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroup.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSModelGroupDefinition.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamedMap.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSNamespaceItemList.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSNotationDeclaration.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSObject.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSObjectList.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSParticle.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSTerm.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSTypeDefinition.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/XSWildcard.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/ObjectList.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDateTime.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDecimal.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSDouble.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSFloat.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xs/datatypes/XSQName.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/Axis.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTM.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMAxisTraverser.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMConfigurationException.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMDOMException.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMException.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMManager.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/DTMWSFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ChunkedIntArray.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineManager.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/CoroutineParser.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIterNodeList.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMAxisIteratorBase.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMChildIterNodeList.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseIterators.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBaseTraversers.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMDocumentImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMManagerDefault.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNamedNodeMap.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeList.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeListBase.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMNodeProxy.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMSafeStringPool.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMStringPool.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/DTMTreeWalker.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/EmptyIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExpandedNameTable.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/ExtendedType.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Filter.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/IncrementalSAXSource_Xerces.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/NodeLocator.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTM.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/dom2dtm/DOM2DTMdefaultNamespaceDeclarationNode.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/dtm/ref/sax2dtm/SAX2RTFDTM.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ca.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_cs.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_de.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_en.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_es.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_fr.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_it.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ja.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_ko.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_pt_BR.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sk.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_sv.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_tr.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_CN.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_HK.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLErrorResources_zh_TW.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/res/XMLMessages.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/SecuritySupport.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serialize/XHTMLSerializer.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/CharInfo.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/DOMSerializer.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ElemContext.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ElemDesc.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/EncodingInfo.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/Encodings.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedContentHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ExtendedLexicalHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/Method.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/NamespaceMappings.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertiesFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/OutputPropertyUtils.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerConstants.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTrace.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/SerializerTraceWriter.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLSAXHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextSAXHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToTextStream.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLSAXHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/TransformStateSetter.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/Version.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/WriterChain.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/WriterToASCI.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOM3SerializerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMConstants.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMErrorHandlerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMErrorImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMLocatorImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMOutputImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOMStringListImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/LSSerializerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/NamespaceSupport.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/AttList.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/BoolStack.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/DOM2Helper.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/Messages.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SerializerMessages_en.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/StringToIntTable.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/SystemIDResolver.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/URI.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/utils/WrappedRuntimeException.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/AttList.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/BoolStack.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/CharKey.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/Constants.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOM2Helper.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMBuilder.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DOMOrder.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/DefaultErrorHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/FastStringBuffer.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/IntStack.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/IntVector.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/ListingErrorHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/LocaleUtility.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/MutableAttrListImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/NSInfo.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/NameSpace.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/NodeConsumer.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/NodeVector.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/ObjectPool.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/ObjectStack.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/ObjectVector.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolver.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/PrefixResolverDefault.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/QName.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/RawCharacterHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SAXSourceLocator.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SerializableLocatorImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StopParseException.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringBufferPool.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringComparable.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringToIntTable.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTable.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringToStringTableVector.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StringVector.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/StylesheetPIHandler.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedByteVector.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SuballocatedIntVector.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/SystemIDResolver.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/Trie.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/URI.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/UnImplNode.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/WrappedRuntimeException.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/WrongParserException.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XML11Char.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLChar.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLCharacterRecognizer.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLString.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringDefault.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/XMLStringFactoryDefault.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/CharArrayWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/IntArrayWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/LongArrayWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/StringArrayWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundle.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResourceBundleBase.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_de.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_en.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_es.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_fr.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_it.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_A.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HA.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_HI.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ja_JP_I.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_ko.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_sv.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_CN.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/utils/res/XResources_zh_TW.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/Arg.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/CachedXPathAPI.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/Expression.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/ExpressionNode.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/ExpressionOwner.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/ExtensionsProvider.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/FoundIndex.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/NodeSet.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/NodeSetDTM.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/SourceTree.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/SourceTreeManager.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/VariableStack.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/WhitespaceStrippingElementMatcher.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPath.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathAPI.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathContext.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathException.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathProcessorException.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathVisitable.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/XPathVisitor.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/AttributeIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/AxesWalker.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/BasicTestIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/ChildIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/ChildTestIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/ContextNodeList.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/DescendantIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprIteratorSimple.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/FilterExprWalker.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/HasPositionalPredChecker.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/IteratorPool.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/LocPathIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/MatchPatternIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/NodeSequence.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/OneStepIteratorForward.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/PathComponent.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/PredicatedNodeTest.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/RTFIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/ReverseAxesWalker.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/SelfIteratorNoPredicate.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/SubContextList.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/UnionChildIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/UnionPathIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/WalkerFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIterator.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/axes/WalkingIteratorSorted.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/Compiler.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/FuncLoader.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/Lexer.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/OpCodes.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMap.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/OpMapVector.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/PsuedoNames.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathDumper.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/compiler/XPathParser.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncBoolean.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCeiling.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncConcat.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncContains.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCount.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncCurrent.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncDoclocation.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtElementAvailable.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunction.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncExtFunctionAvailable.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFalse.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncFloor.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncGenerateId.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncId.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLang.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLast.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncLocalPart.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNamespace.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNormalizeSpace.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNot.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncNumber.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncPosition.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncQname.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncRound.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStartsWith.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncString.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncStringLength.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstring.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringAfter.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSubstringBefore.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSum.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncSystemProperty.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTranslate.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncTrue.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FuncUnparsedEntityURI.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/Function.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/Function2Args.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/Function3Args.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionDef1Arg.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionMultiArgs.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/FunctionOneArg.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/functions/WrongNumberArgsException.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPPrefixResolver.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/JAXPVariableStack.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathFactoryImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/jaxp/XPathImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/DTMXRTreeFrag.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XBoolean.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XBooleanStatic.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XMLStringFactoryImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSet.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XNodeSetForDOM.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XNull.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XNumber.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XObject.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XObjectFactory.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFrag.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XRTreeFragSelectWrapper.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XString.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForChars.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/objects/XStringForFSB.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/And.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Bool.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Div.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Equals.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Gt.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Gte.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Lt.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Lte.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Minus.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Mod.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Mult.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Neg.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/NotEquals.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Number.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Operation.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Or.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Plus.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Quo.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/String.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/UnaryOperation.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/Variable.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/operations/VariableSafeAbsRef.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/ContextMatchStepPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/FunctionPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTest.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/NodeTestFilter.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/StepPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/patterns/UnionPattern.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_de.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_en.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_es.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_fr.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_it.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ja.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_ko.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_pt_BR.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_sv.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_CN.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHErrorResources_zh_TW.java
! src/java.xml/share/classes/com/sun/org/apache/xpath/internal/res/XPATHMessages.java
! src/java.xml/share/classes/com/sun/xml/internal/stream/Entity.java
! src/java.xml/share/classes/com/sun/xml/internal/stream/XMLEntityReader.java
Changeset: b734fb659989
Author: jlahoda
Date: 2017-04-19 13:38 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/b734fb659989
8178012: Finish removal of -Xmodule:
Summary: Setting jtreg to use --patch-module instead of -Xmodule:.
Reviewed-by: alanb
! test/TEST.ROOT
Changeset: fc2d987bdeec
Author: joehw
Date: 2016-11-22 14:49 -0800
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/fc2d987bdeec
8169011: Resizing XML parse trees
Reviewed-by: dfuchs, lancea, skoivu
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XML11NSDocumentScannerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLDTDScannerImpl.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLNSDocumentScannerImpl.java
Changeset: 6573c99129a3
Author: joehw
Date: 2017-01-18 11:47 -0800
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/6573c99129a3
8172875: Resizing XML parse trees test update
Reviewed-by: dfuchs, lancea
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/XMLStreamReaderImpl.java
Changeset: 836b1aeb7d06
Author: lana
Date: 2017-04-21 03:34 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/836b1aeb7d06
Merge
Changeset: 646567dcfa64
Author: aefimov
Date: 2017-04-24 00:22 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/646567dcfa64
8176168: Performance drop due to SAXParser SymbolTable reset
Reviewed-by: joehw, lancea
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/parsers/XML11Configuration.java
! src/java.xml/share/classes/jdk/xml/internal/JdkXmlFeatures.java
! src/java.xml/share/classes/jdk/xml/internal/JdkXmlUtils.java
! test/javax/xml/jaxp/unittest/sax/SymbolTableResetTest.java
Changeset: 23a87f409371
Author: lana
Date: 2017-04-27 16:07 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/23a87f409371
Added tag jdk-9+167 for changeset 646567dcfa64
! .hgtags
Changeset: df63b2d22ac6
Author: lana
Date: 2017-05-04 16:38 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/df63b2d22ac6
Added tag jdk-9+168 for changeset 23a87f409371
! .hgtags
Changeset: 60abb1d1cd1d
Author: ihse
Date: 2017-05-09 12:54 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/60abb1d1cd1d
8179889: Fix typographic errors in copyright headers
Reviewed-by: erikj, dholmes
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/impl/xs/traversers/XSAttributeChecker.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToHTMLStream.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/ToXMLStream.java
! src/java.xml/share/classes/com/sun/org/apache/xml/internal/serializer/dom3/DOM3TreeWalker.java
Changeset: f9abe02cceda
Author: joehw
Date: 2017-05-09 10:34 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/f9abe02cceda
8150256: removing xerces-related dead code
Reviewed-by: lancea
- src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerElementHandler.java
- src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerFramework.java
- src/java.xml/share/classes/com/sun/org/apache/xerces/internal/xinclude/XPointerSchema.java
Changeset: 5d9d2a65fb26
Author: joehw
Date: 2017-05-09 11:46 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/5d9d2a65fb26
8179863: Missing copyrights in some jaxp files
Reviewed-by: lancea
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/XPathParser.java
! src/java.xml/share/classes/com/sun/org/apache/xalan/internal/xsltc/compiler/sym.java
Changeset: f263aa7f60c3
Author: lana
Date: 2017-05-11 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/f263aa7f60c3
Added tag jdk-9+169 for changeset 5d9d2a65fb26
! .hgtags
Changeset: e79b44a9d2bd
Author: joehw
Date: 2017-05-09 18:26 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/e79b44a9d2bd
8179868: Java API Docs of javax.xml.transform.stax contains TODOs
Reviewed-by: lancea, bpb
! src/java.xml/share/classes/javax/xml/transform/stax/package.html
Changeset: 8861f89ae4c0
Author: lana
Date: 2017-05-11 18:11 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/8861f89ae4c0
Merge
Changeset: 6e78f902f477
Author: joehw
Date: 2017-05-15 20:27 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/6e78f902f477
8180060: Examine copyright header for some files
Reviewed-by: lancea
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/FeatureState.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/ParserConfigurationSettings.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/PropertyState.java
! src/java.xml/share/classes/com/sun/org/apache/xerces/internal/util/Status.java
! src/java.xml/share/classes/com/sun/xml/internal/stream/dtd/nonvalidating/XMLSimpleType.java
Changeset: a5a3ac31f306
Author: lana
Date: 2017-05-18 14:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jaxp/rev/a5a3ac31f306
Added tag jdk-9+170 for changeset 6e78f902f477
! .hgtags
From ashipile at redhat.com Fri May 19 08:33:16 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Fri, 19 May 2017 08:33:16 +0000
Subject: hg: shenandoah/jdk9/jdk: 177 new changesets
Message-ID: <201705190833.v4J8XMV4012659@aojmv0008.oracle.com>
Changeset: cd268728d178
Author: weijun
Date: 2017-04-11 10:12 +0800
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/cd268728d178
8177969: Faster FilePermission::implies by avoiding the use of Path::relativize
Reviewed-by: rriggs, mullan
! src/java.base/share/classes/java/io/FilePermission.java
! test/java/io/FilePermission/Correctness.java
Changeset: c35ff69c2852
Author: dfuchs
Date: 2017-04-11 16:32 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/c35ff69c2852
8178147: Race conditions in timeout handling code in http/2 incubator client
Summary: Timeout handling code (in particular cancel(IOException)) is modified to take into account cancellation arising before exchange implementation is established or response completable future is created. TimeoutEvent::compareTo method is modified to be consistent with TimeoutEvent::equals.
Reviewed-by: prappo, chegar, michaelm
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Exchange.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Http1Exchange.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpClientImpl.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/MultiExchange.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PlainHttpConnection.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/Stream.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/TimeoutEvent.java
! test/ProblemList.txt
+ test/java/net/httpclient/SmallTimeout.java
! test/java/net/httpclient/TimeoutOrdering.java
Changeset: 23255bc8606d
Author: rriggs
Date: 2017-04-11 14:18 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/23255bc8606d
8178347: Process and ProcessHandle getPid method name inconsistency
Reviewed-by: alanb, bpb
! src/java.base/share/classes/java/lang/Process.java
! src/java.base/share/classes/java/lang/ProcessHandle.java
! src/java.base/share/classes/java/lang/ProcessHandleImpl.java
! src/java.base/unix/classes/java/lang/ProcessImpl.java
! src/java.base/windows/classes/java/lang/ProcessImpl.java
! test/com/sun/jdi/ProcessAttachTest.java
! test/java/lang/ProcessBuilder/Basic.java
! test/java/lang/ProcessBuilder/PipelineTest.java
! test/java/lang/ProcessBuilder/Zombies.java
! test/java/lang/ProcessHandle/Basic.java
! test/java/lang/ProcessHandle/JavaChild.java
! test/java/lang/ProcessHandle/OnExitTest.java
! test/java/lang/ProcessHandle/ProcessUtil.java
! test/java/lang/ProcessHandle/TreeTest.java
! test/java/lang/Runtime/exec/SleepyCat.java
! test/java/util/logging/LoggingDeadlock2.java
! test/lib/testlibrary/jdk/testlibrary/ProcessThread.java
! test/lib/testlibrary/jdk/testlibrary/ProcessTools.java
! test/sun/management/jmxremote/bootstrap/CustomLauncherTest.java
! test/sun/management/jmxremote/bootstrap/LocalManagementTest.java
! test/sun/management/jmxremote/startstop/JMXStartStopTest.java
! test/sun/tools/jps/LingeredApp.java
! test/sun/tools/jstat/JStatInterval.java
Changeset: 0c8f43317c1f
Author: ascarpino
Date: 2017-04-12 12:57 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/0c8f43317c1f
8177784: Use CounterMode intrinsic for AES/GCM
Reviewed-by: mullan, psandoz, chegar
! src/java.base/share/classes/com/sun/crypto/provider/CounterMode.java
! src/java.base/share/classes/com/sun/crypto/provider/GCTR.java
Changeset: ede22275fbfa
Author: dlong
Date: 2017-04-12 16:37 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/ede22275fbfa
8158168: Missing bounds checks for some String intrinsics
Reviewed-by: vlivanov, thartmann, sherman
! src/java.base/share/classes/java/lang/AbstractStringBuilder.java
! src/java.base/share/classes/java/lang/Integer.java
! src/java.base/share/classes/java/lang/Long.java
! src/java.base/share/classes/java/lang/String.java
! src/java.base/share/classes/java/lang/StringConcatHelper.java
! src/java.base/share/classes/java/lang/StringLatin1.java
! src/java.base/share/classes/java/lang/StringUTF16.java
Changeset: 2a15003cb4b7
Author: jwilhelm
Date: 2017-04-13 15:57 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/2a15003cb4b7
8178447: Remove link from JavaDoc to Dev guide
Reviewed-by: tschatzl, dholmes
! src/jdk.management/share/classes/com/sun/management/VMOption.java
Changeset: 15cb1241abad
Author: lana
Date: 2017-04-13 16:27 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/15cb1241abad
Merge
Changeset: f36e07712a1b
Author: serb
Date: 2017-03-21 01:39 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/f36e07712a1b
8176544: Compilation error in plaf.metal.MetalBumps.Test6657026
Reviewed-by: prr
! test/javax/swing/plaf/metal/MetalBumps/Test6657026.java
Changeset: 1158c3e5bd9c
Author: prr
Date: 2017-03-21 11:05 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/1158c3e5bd9c
Merge
Changeset: 0f4994564ae6
Author: serb
Date: 2017-03-23 17:50 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/0f4994564ae6
6574989: TEST_BUG: javax/sound/sampled/Clip/bug5070081.java fails sometimes
Reviewed-by: prr
! test/javax/sound/sampled/Clip/bug5070081.java
Changeset: e352eacd7a94
Author: prr
Date: 2017-03-24 09:01 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e352eacd7a94
Merge
- src/java.base/share/classes/jdk/internal/loader/ResourceHelper.java
Changeset: 908bdcadfab5
Author: stuefe
Date: 2017-03-25 18:57 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/908bdcadfab5
8177137: 8175293 breaks Windows build on Vs2010
Reviewed-by: serb, alexsch
! src/java.desktop/windows/native/libawt/windows/awt_Window.cpp
Changeset: bbf040535813
Author: ddehaven
Date: 2017-03-27 12:06 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/bbf040535813
Merge
Changeset: b3a70b0fd710
Author: prr
Date: 2017-03-28 09:45 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/b3a70b0fd710
8043773: Deprecate JComponent.AccessibleJComponent.AccessibleFocusHandler
Reviewed-by: alexsch, azvegint
! src/java.desktop/share/classes/javax/swing/JComponent.java
Changeset: 5ca3a286b761
Author: serb
Date: 2017-03-29 17:30 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/5ca3a286b761
8177766: [TEST_BUG] JPopupMenu tests fails intermittently
Reviewed-by: alexsch, yan
! test/javax/swing/JPopupMenu/4458079/bug4458079.java
! test/javax/swing/JPopupMenu/6827786/bug6827786.java
Changeset: cdb6fd420176
Author: dmarkov
Date: 2017-03-29 19:00 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/cdb6fd420176
8176490: [macosx] Sometimes NSWindow.isZoomed hangs
Reviewed-by: serb, azvegint
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java
+ test/java/awt/Window/WindowDeadlockTest/WindowDeadlockTest.java
Changeset: 87801ca8520c
Author: alexsch
Date: 2017-03-29 21:08 +0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/87801ca8520c
8177625: apple.laf.JRSUIConstants.getConstantName(int) checks for THUMB_START twice
Reviewed-by: prr, serb, azvegint
! src/java.desktop/macosx/classes/apple/laf/JRSUIConstants.java
Changeset: 19042d75c724
Author: serb
Date: 2017-03-30 16:40 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/19042d75c724
8177461: Wrong references are used in the javadoc in the java.desktop module
Reviewed-by: alexsch
! src/java.desktop/macosx/classes/com/apple/eawt/Application.java
! src/java.desktop/macosx/classes/com/apple/eawt/ApplicationAdapter.java
! src/java.desktop/macosx/classes/com/apple/eawt/ApplicationEvent.java
! src/java.desktop/macosx/classes/com/apple/eawt/ApplicationListener.java
! src/java.desktop/macosx/classes/com/apple/eawt/FullScreenAdapter.java
! src/java.desktop/macosx/classes/com/apple/eawt/FullScreenListener.java
! src/java.desktop/macosx/classes/com/apple/eawt/FullScreenUtilities.java
! src/java.desktop/macosx/classes/com/apple/eawt/MacQuitResponse.java
! src/java.desktop/macosx/classes/com/apple/eawt/event/GestureAdapter.java
! src/java.desktop/macosx/classes/com/apple/eawt/event/GestureEvent.java
! src/java.desktop/macosx/classes/com/apple/eawt/event/GesturePhaseListener.java
! src/java.desktop/macosx/classes/com/apple/eawt/event/MagnificationListener.java
! src/java.desktop/macosx/classes/com/apple/eawt/event/RotationListener.java
! src/java.desktop/macosx/classes/com/apple/eawt/event/SwipeListener.java
! src/java.desktop/macosx/classes/com/apple/laf/AquaTabbedPaneCopyFromBasicUI.java
! src/java.desktop/macosx/classes/com/apple/laf/ScreenMenuPropertyListener.java
! src/java.desktop/share/classes/com/sun/awt/AWTUtilities.java
! src/java.desktop/share/classes/com/sun/awt/SecurityWarning.java
! src/java.desktop/share/classes/com/sun/imageio/plugins/common/PaletteBuilder.java
! src/java.desktop/share/classes/com/sun/imageio/plugins/common/SingleTileRenderedImage.java
! src/java.desktop/share/classes/com/sun/imageio/plugins/gif/GIFImageWriter.java
! src/java.desktop/share/classes/com/sun/imageio/plugins/jpeg/JPEGMetadata.java
! src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFBaseJPEGCompressor.java
! src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFDecompressor.java
! src/java.desktop/share/classes/com/sun/imageio/plugins/wbmp/WBMPImageWriter.java
! src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKColorType.java
! src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKGraphicsUtils.java
! src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java
! src/java.desktop/share/classes/com/sun/java/swing/plaf/motif/MotifGraphicsUtils.java
! src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/XPStyle.java
! src/java.desktop/share/classes/com/sun/media/sound/AbstractMixer.java
! src/java.desktop/share/classes/com/sun/media/sound/AudioSynthesizer.java
! src/java.desktop/share/classes/com/sun/media/sound/SunFileReader.java
! src/java.desktop/share/classes/com/sun/media/sound/SunFileWriter.java
! src/java.desktop/share/classes/com/sun/media/sound/Toolkit.java
! src/java.desktop/share/classes/java/awt/Component.java
! src/java.desktop/share/classes/java/awt/Desktop.java
! src/java.desktop/share/classes/java/awt/Font.java
! src/java.desktop/share/classes/java/awt/Menu.java
! src/java.desktop/share/classes/java/awt/MenuBar.java
! src/java.desktop/share/classes/java/awt/PaintContext.java
! src/java.desktop/share/classes/java/awt/SystemTray.java
! src/java.desktop/share/classes/java/awt/Toolkit.java
! src/java.desktop/share/classes/java/awt/color/ICC_Profile.java
! src/java.desktop/share/classes/java/awt/desktop/FilesEvent.java
! src/java.desktop/share/classes/java/awt/font/CharArrayIterator.java
! src/java.desktop/share/classes/java/awt/peer/DesktopPeer.java
! src/java.desktop/share/classes/java/awt/print/PrinterJob.java
! src/java.desktop/share/classes/java/beans/ChangeListenerMap.java
! src/java.desktop/share/classes/javax/accessibility/AccessibleContext.java
! src/java.desktop/share/classes/javax/print/attribute/standard/MediaPrintableArea.java
! src/java.desktop/share/classes/javax/swing/Action.java
! src/java.desktop/share/classes/javax/swing/ActionPropertyChangeListener.java
! src/java.desktop/share/classes/javax/swing/JSpinner.java
! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java
! src/java.desktop/share/classes/javax/swing/plaf/basic/LazyActionMap.java
! src/java.desktop/share/classes/javax/swing/plaf/metal/MetalFontDesktopProperty.java
! src/java.desktop/share/classes/javax/swing/plaf/metal/MetalRootPaneUI.java
! src/java.desktop/share/classes/javax/swing/plaf/nimbus/NimbusStyle.java
! src/java.desktop/share/classes/javax/swing/text/DefaultEditorKit.java
! src/java.desktop/share/classes/javax/swing/text/DefaultStyledDocument.java
! src/java.desktop/share/classes/javax/swing/text/GlyphPainter1.java
! src/java.desktop/share/classes/javax/swing/text/GlyphPainter2.java
! src/java.desktop/share/classes/javax/swing/text/ParagraphView.java
! src/java.desktop/share/classes/javax/swing/text/PlainView.java
! src/java.desktop/share/classes/javax/swing/text/TextLayoutStrategy.java
! src/java.desktop/share/classes/javax/swing/text/Utilities.java
! src/java.desktop/share/classes/javax/swing/text/html/CSS.java
! src/java.desktop/share/classes/javax/swing/text/html/FormView.java
! src/java.desktop/share/classes/javax/swing/text/html/FrameView.java
! src/java.desktop/share/classes/javax/swing/text/html/NoFramesView.java
! src/java.desktop/share/classes/javax/swing/text/rtf/RTFGenerator.java
! src/java.desktop/share/classes/javax/swing/text/rtf/RTFParser.java
! src/java.desktop/share/classes/sun/awt/image/BytePackedRaster.java
! src/java.desktop/share/classes/sun/java2d/marlin/MarlinRenderingEngine.java
Changeset: 41703cb17ee1
Author: serb
Date: 2017-03-31 18:23 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/41703cb17ee1
8177560: @headful key can be removed from the tests for JavaSound
Reviewed-by: prr
! test/javax/sound/midi/Devices/InitializationHang.java
! test/javax/sound/midi/Sequencer/SeqRecordDoesNotCopy.java
! test/javax/sound/midi/Sequencer/SeqRecordsRealTimeEvents.java
! test/javax/sound/midi/Sequencer/SeqStartRecording.java
! test/javax/sound/midi/Synthesizer/bug4685396.java
! test/javax/sound/sampled/Clip/ClipCloseLoss.java
! test/javax/sound/sampled/Clip/bug5070081.java
! test/javax/sound/sampled/DataLine/LongFramePosition.java
! test/javax/sound/sampled/DirectAudio/bug6372428.java
Changeset: e0f119ab7b1c
Author: alitvinov
Date: 2017-03-31 19:42 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e0f119ab7b1c
8167102: [macosx] PrintRequestAttributeSet breaks page size set using PageFormat
Reviewed-by: psadhukhan, prr
! src/java.desktop/macosx/native/libawt_lwawt/awt/CPrinterJob.m
! src/java.desktop/share/classes/sun/print/RasterPrinterJob.java
+ test/java/awt/print/PageFormat/WrongPaperPrintingTest.java
Changeset: 9ccf8c6e7d7e
Author: serb
Date: 2017-04-05 20:33 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/9ccf8c6e7d7e
8177672: DataFlavor.imageFlavor is null when the java.desktop module is not resolved
Reviewed-by: prr, mchung, alanb
! src/java.datatransfer/share/classes/java/awt/datatransfer/DataFlavor.java
Changeset: 204b01546b68
Author: rsingh
Date: 2017-04-10 16:20 +0530
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/204b01546b68
8177386: [TESTBUG] The "Undo" menu item in the context menu is disable
Reviewed-by: serb, aghaisas
Contributed-by: rahul.d.singh at oracle.com
! test/java/awt/TextField/DisabledUndoTest/DisabledUndoTest.java
Changeset: f19cf7eaf0e3
Author: ssadetsky
Date: 2017-04-10 08:30 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/f19cf7eaf0e3
8164469: [TEST_BUG] Unity, java/awt/MouseInfo/JContainerMousePositionTest.java
Reviewed-by: yan, serb
! test/java/awt/MouseInfo/JContainerMousePositionTest.java
Changeset: da335cb02480
Author: prr
Date: 2017-04-10 08:31 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/da335cb02480
Merge
- src/java.base/share/classes/java/lang/reflect/Layer.java
- src/java.base/share/classes/java/lang/reflect/LayerInstantiationException.java
- src/java.base/share/classes/java/lang/reflect/Module.java
- src/java.base/share/classes/java/lang/reflect/WeakPairMap.java
- src/java.base/share/classes/jdk/internal/misc/JavaLangReflectModuleAccess.java
! src/java.desktop/share/classes/com/sun/imageio/plugins/tiff/TIFFBaseJPEGCompressor.java
! src/java.desktop/share/classes/java/awt/color/ICC_Profile.java
! src/java.desktop/share/classes/javax/swing/text/PlainView.java
- test/java/lang/reflect/Layer/BasicLayerTest.java
- test/java/lang/reflect/Layer/LayerAndLoadersTest.java
- test/java/lang/reflect/Layer/LayerControllerTest.java
- test/java/lang/reflect/Layer/layertest/Test.java
- test/java/lang/reflect/Layer/src/m1/module-info.java
- test/java/lang/reflect/Layer/src/m1/p/Main.java
- test/java/lang/reflect/Layer/src/m1/p/Service.java
- test/java/lang/reflect/Layer/src/m2/module-info.java
- test/java/lang/reflect/Layer/src/m2/q/Hello.java
- test/java/lang/reflect/Layer/src/m3/module-info.java
- test/java/lang/reflect/Layer/src/m3/w/Hello.java
- test/java/lang/reflect/Layer/src/m4/impl/ServiceImpl.java
- test/java/lang/reflect/Layer/src/m4/module-info.java
- test/java/lang/reflect/Module/AddExportsTest.java
- test/java/lang/reflect/Module/AnnotationsTest.java
- test/java/lang/reflect/Module/BasicModuleTest.java
- test/java/lang/reflect/Module/WithSecurityManager.java
- test/java/lang/reflect/Module/access/AccessTest.java
- test/java/lang/reflect/Module/access/src/target/module-info.java
- test/java/lang/reflect/Module/access/src/target/p1/Helper.java
- test/java/lang/reflect/Module/access/src/target/p1/Public.java
- test/java/lang/reflect/Module/access/src/target/p2/NonPublic.java
- test/java/lang/reflect/Module/access/src/target/q1/Public.java
- test/java/lang/reflect/Module/access/src/target/q2/NonPublic.java
- test/java/lang/reflect/Module/access/src/test/module-info.java
- test/java/lang/reflect/Module/access/src/test/test/Main.java
- test/java/lang/reflect/Module/addXXX/Driver.java
- test/java/lang/reflect/Module/addXXX/m1/module-info.java
- test/java/lang/reflect/Module/addXXX/m1/p1/C.java
- test/java/lang/reflect/Module/addXXX/m2/module-info.java
- test/java/lang/reflect/Module/addXXX/m2/p2/C.java
- test/java/lang/reflect/Module/addXXX/m2/p2/internal/C.java
- test/java/lang/reflect/Module/addXXX/m3/module-info.java
- test/java/lang/reflect/Module/addXXX/m3/p3/C.java
- test/java/lang/reflect/Module/addXXX/m4/module-info.java
- test/java/lang/reflect/Module/addXXX/m4/p4/C.java
- test/java/lang/reflect/Module/addXXX/test/module-info.java
- test/java/lang/reflect/Module/addXXX/test/test/C.java
- test/java/lang/reflect/Module/addXXX/test/test/Main.java
- test/java/lang/reflect/Module/addXXX/test/test/Service.java
- test/java/lang/reflect/Module/allow.policy
- test/java/lang/reflect/Module/annotation/Basic.java
- test/java/lang/reflect/Module/annotation/src/m/module-info.java
- test/java/lang/reflect/Module/annotation/src/m/p/annotation/Bar.java
- test/java/lang/reflect/Module/annotation/src/m/p/annotation/Baz.java
- test/java/lang/reflect/Module/annotation/src/m/p/annotation/Foo.java
- test/java/lang/reflect/WeakPairMap/Driver.java
- test/java/lang/reflect/WeakPairMap/java.base/java/lang/reflect/WeakPairMapTest.java
Changeset: c69e8ca0008e
Author: prr
Date: 2017-04-10 09:05 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/c69e8ca0008e
Merge
Changeset: 79e099ab284b
Author: mcherkas
Date: 2017-04-11 00:05 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/79e099ab284b
8177450: javax.swing.text.html.parser.Parser parseScript ignores a character after commend end
Reviewed-by: prr, alexsch
! src/java.desktop/share/classes/javax/swing/text/html/parser/Parser.java
+ test/javax/swing/text/html/parser/Parser/HtmlCommentTagParseTest/HtmlCommentTagParseTest.java
+ test/javax/swing/text/html/parser/Parser/HtmlCommentTagParseTest/test.html
Changeset: b289db56c862
Author: prr
Date: 2017-04-13 10:01 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/b289db56c862
Merge
Changeset: 413e8af4fc3c
Author: darcy
Date: 2017-04-13 10:59 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/413e8af4fc3c
8177683: Suppress lint removal warnings in jdk.security and jdk.policytool
Reviewed-by: weijun
! src/jdk.policytool/share/classes/sun/security/tools/policytool/PolicyTool.java
! src/jdk.security.auth/share/classes/com/sun/security/auth/module/SolarisLoginModule.java
Changeset: 5bfdd4e83008
Author: darcy
Date: 2017-04-13 11:05 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/5bfdd4e83008
8177684: Suppress lint removal warnings in AppletSecurity
Reviewed-by: mchung, mullan
! src/java.desktop/share/classes/sun/applet/AppletSecurity.java
Changeset: 2c28af3a1e5d
Author: darcy
Date: 2017-04-13 11:08 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/2c28af3a1e5d
8177682: Suppress removal warning for System.runFinalizersOnExit
Reviewed-by: mchung, smarks
! src/java.base/share/classes/java/lang/System.java
Changeset: 2b4bacfcbe17
Author: darcy
Date: 2017-04-13 11:16 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/2b4bacfcbe17
8177723: Suppress lint removal warning in java.se.ee and jdk.unsupported
Reviewed-by: lancea, chegar
! src/java.se.ee/share/classes/module-info.java
! src/jdk.unsupported/share/classes/sun/reflect/Reflection.java
Changeset: 5f24e5bf62bd
Author: amlu
Date: 2017-04-14 15:30 +0800
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/5f24e5bf62bd
8169971: JLinkMultiReleaseJarTest.java fails intermittently at the final clean up
Reviewed-by: chegar, psandoz
! test/ProblemList.txt
! test/tools/jlink/multireleasejar/JLinkMultiReleaseJarTest.java
Changeset: fc53a0468c1f
Author: tidu
Date: 2017-04-14 00:05 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/fc53a0468c1f
8178083: Remove intermittent key from java/security/SignedObject/Chain.java
Reviewed-by: xuelei
Contributed-by: Tim Du
! test/java/security/SignedObject/Chain.java
Changeset: 389b078873a0
Author: chegar
Date: 2017-04-14 10:47 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/389b078873a0
8177536: Avoid Apple Peer-to-Peer interfaces in networking tests
Reviewed-by: michaelm, rriggs
! test/java/net/Inet6Address/B6206527.java
! test/java/net/Inet6Address/B6558853.java
! test/java/net/InetAddress/CheckJNI.java
! test/java/net/MulticastSocket/B6427403.java
- test/java/net/MulticastSocket/JoinGroup.java
+ test/java/net/MulticastSocket/JoinLeave.java
- test/java/net/MulticastSocket/Leave.java
+ test/java/net/NetworkConfigurationProbe.java
! test/java/net/Socket/LinkLocal.java
! test/java/net/SocketPermission/SocketPermissionTest.java
! test/java/net/ipv6tests/B6521014.java
! test/java/net/ipv6tests/Tests.java
+ test/lib/testlibrary/jdk/testlibrary/NetworkConfiguration.java
! test/sun/net/www/protocol/https/HttpsURLConnection/B6216082.java
Changeset: 2a96f24cea2e
Author: mli
Date: 2017-04-14 04:07 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/2a96f24cea2e
8145163: Test Task for Platform Logging API and Service -- for moduralization
Reviewed-by: dfuchs
+ test/java/lang/System/LoggerFinder/modules/Base.java
+ test/java/lang/System/LoggerFinder/modules/JDKLoggerForImageTest.java
+ test/java/lang/System/LoggerFinder/modules/JDKLoggerForJDKTest.java
+ test/java/lang/System/LoggerFinder/modules/LoggerInImageTest.java
+ test/java/lang/System/LoggerFinder/modules/NamedLoggerForImageTest.java
+ test/java/lang/System/LoggerFinder/modules/NamedLoggerForJDKTest.java
+ test/java/lang/System/LoggerFinder/modules/UnnamedLoggerForImageTest.java
+ test/java/lang/System/LoggerFinder/modules/UnnamedLoggerForJDKTest.java
+ test/java/lang/System/LoggerFinder/modules/boot_client/BootClient.java
+ test/java/lang/System/LoggerFinder/modules/boot_usage/BootUsage.java
+ test/java/lang/System/LoggerFinder/modules/named_client/m.t.a/module-info.java
+ test/java/lang/System/LoggerFinder/modules/named_client/m.t.a/pkg/a/t/TestA.java
+ test/java/lang/System/LoggerFinder/modules/named_logger/m.l.a/module-info.java
+ test/java/lang/System/LoggerFinder/modules/named_logger/m.l.a/pkg/a/l/LoggerA.java
+ test/java/lang/System/LoggerFinder/modules/named_logger/m.l.a/pkg/a/p/LoggerFinderA.java
+ test/java/lang/System/LoggerFinder/modules/patched_client/PatchedClient.java
+ test/java/lang/System/LoggerFinder/modules/patched_usage/java.base/java/lang/PatchedUsage.java
+ test/java/lang/System/LoggerFinder/modules/unnamed_client/pkg/b/t/TestB.java
+ test/java/lang/System/LoggerFinder/modules/unnamed_logger/META-INF/services/java.lang.System$LoggerFinder
+ test/java/lang/System/LoggerFinder/modules/unnamed_logger/pkg/b/l/LoggerB.java
+ test/java/lang/System/LoggerFinder/modules/unnamed_logger/pkg/b/p/LoggerFinderB.java
Changeset: d7add8d9ab22
Author: weijun
Date: 2017-04-15 00:58 +0800
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/d7add8d9ab22
8178795: krb5 Basic.java test should be basic
Reviewed-by: xuelei
! test/sun/security/krb5/auto/Basic.java
+ test/sun/security/krb5/auto/ModuleName.java
Changeset: d1c491ec39d2
Author: bpb
Date: 2017-04-14 14:02 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/d1c491ec39d2
8178783: Java_sun_nio_ch_EPoll_close0 definition, but no sun.nio.ch.EPoll.close0 declaration.
Summary: Delete unused method.
Reviewed-by: rriggs, chegar
! src/java.base/linux/native/libnio/ch/EPoll.c
Changeset: 9ba6760481a8
Author: lancea
Date: 2017-04-15 16:54 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/9ba6760481a8
8164390: Add module javadoc to jdk.internal.jvmstat
Reviewed-by: alanb, mchung
! src/jdk.internal.jvmstat/share/classes/module-info.java
Changeset: d57893482534
Author: mli
Date: 2017-04-17 01:02 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/d57893482534
8178840: Adds FieldSetAccessibleTest.java and VerifyJimage.java to ProblemList
Summary: Adds FieldSetAccessibleTest.java and VerifyJimage.java to ProblemList due to JDK-8178776
Reviewed-by: alanb
Contributed-by: John Jiang
! test/ProblemList.txt
Changeset: 5d2b48f1f0a3
Author: naoto
Date: 2017-04-17 14:46 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/5d2b48f1f0a3
8177314: java VM fails to start with a Japanese ShiftJIS locale
Reviewed-by: sherman, mchung
! make/data/charsetmapping/stdcs-linux
Changeset: b4a7d4678a43
Author: lana
Date: 2017-04-20 18:14 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/b4a7d4678a43
Added tag jdk-9+166 for changeset 5d2b48f1f0a3
! .hgtags
Changeset: 91b0fe2e552a
Author: smarks
Date: 2017-04-17 15:51 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/91b0fe2e552a
8177789: fix collections framework links to point to java.util package doc
Reviewed-by: bchristi, martin
! src/java.base/share/classes/java/lang/Comparable.java
! src/java.base/share/classes/java/lang/UnsupportedOperationException.java
! src/java.base/share/classes/java/util/AbstractCollection.java
! src/java.base/share/classes/java/util/AbstractList.java
! src/java.base/share/classes/java/util/AbstractMap.java
! src/java.base/share/classes/java/util/AbstractQueue.java
! src/java.base/share/classes/java/util/AbstractSequentialList.java
! src/java.base/share/classes/java/util/AbstractSet.java
! src/java.base/share/classes/java/util/ArrayDeque.java
! src/java.base/share/classes/java/util/ArrayList.java
! src/java.base/share/classes/java/util/Arrays.java
! src/java.base/share/classes/java/util/Collection.java
! src/java.base/share/classes/java/util/Collections.java
! src/java.base/share/classes/java/util/Comparator.java
! src/java.base/share/classes/java/util/Deque.java
! src/java.base/share/classes/java/util/EnumMap.java
! src/java.base/share/classes/java/util/EnumSet.java
! src/java.base/share/classes/java/util/HashMap.java
! src/java.base/share/classes/java/util/HashSet.java
! src/java.base/share/classes/java/util/Hashtable.java
! src/java.base/share/classes/java/util/IdentityHashMap.java
! src/java.base/share/classes/java/util/Iterator.java
! src/java.base/share/classes/java/util/LinkedHashMap.java
! src/java.base/share/classes/java/util/LinkedHashSet.java
! src/java.base/share/classes/java/util/LinkedList.java
! src/java.base/share/classes/java/util/List.java
! src/java.base/share/classes/java/util/ListIterator.java
! src/java.base/share/classes/java/util/Map.java
! src/java.base/share/classes/java/util/NavigableMap.java
! src/java.base/share/classes/java/util/NavigableSet.java
! src/java.base/share/classes/java/util/PriorityQueue.java
! src/java.base/share/classes/java/util/Queue.java
! src/java.base/share/classes/java/util/RandomAccess.java
! src/java.base/share/classes/java/util/Set.java
! src/java.base/share/classes/java/util/SortedMap.java
! src/java.base/share/classes/java/util/SortedSet.java
! src/java.base/share/classes/java/util/TreeMap.java
! src/java.base/share/classes/java/util/TreeSet.java
! src/java.base/share/classes/java/util/Vector.java
! src/java.base/share/classes/java/util/WeakHashMap.java
! src/java.base/share/classes/java/util/concurrent/ArrayBlockingQueue.java
! src/java.base/share/classes/java/util/concurrent/BlockingDeque.java
! src/java.base/share/classes/java/util/concurrent/BlockingQueue.java
! src/java.base/share/classes/java/util/concurrent/ConcurrentHashMap.java
! src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedDeque.java
! src/java.base/share/classes/java/util/concurrent/ConcurrentLinkedQueue.java
! src/java.base/share/classes/java/util/concurrent/ConcurrentMap.java
! src/java.base/share/classes/java/util/concurrent/ConcurrentNavigableMap.java
! src/java.base/share/classes/java/util/concurrent/ConcurrentSkipListMap.java
! src/java.base/share/classes/java/util/concurrent/ConcurrentSkipListSet.java
! src/java.base/share/classes/java/util/concurrent/CopyOnWriteArrayList.java
! src/java.base/share/classes/java/util/concurrent/CopyOnWriteArraySet.java
! src/java.base/share/classes/java/util/concurrent/DelayQueue.java
! src/java.base/share/classes/java/util/concurrent/LinkedBlockingDeque.java
! src/java.base/share/classes/java/util/concurrent/LinkedBlockingQueue.java
! src/java.base/share/classes/java/util/concurrent/LinkedTransferQueue.java
! src/java.base/share/classes/java/util/concurrent/PriorityBlockingQueue.java
! src/java.base/share/classes/java/util/concurrent/SynchronousQueue.java
! src/java.base/share/classes/java/util/concurrent/TransferQueue.java
! src/java.base/share/classes/java/util/package-info.java
Changeset: 1716e3c4f76f
Author: shurailine
Date: 2017-04-17 19:23 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/1716e3c4f76f
8173801: Modify makefiles to not build demos and samples bundles.
Reviewed-by: ihse, prr, erikj
! make/CompileDemos.gmk
- make/CopySamples.gmk
! src/demo/share/README
- src/demo/share/jvmti/agent_util/README.txt
- src/demo/share/jvmti/agent_util/agent_util.c
- src/demo/share/jvmti/agent_util/agent_util.h
- src/demo/share/jvmti/compiledMethodLoad/README.txt
- src/demo/share/jvmti/compiledMethodLoad/compiledMethodLoad.c
- src/demo/share/jvmti/compiledMethodLoad/sample.makefile.txt
- src/demo/share/jvmti/gctest/README.txt
- src/demo/share/jvmti/gctest/gctest.c
- src/demo/share/jvmti/gctest/sample.makefile.txt
- src/demo/share/jvmti/heapTracker/HeapTracker.java
- src/demo/share/jvmti/heapTracker/README.txt
- src/demo/share/jvmti/heapTracker/heapTracker.c
- src/demo/share/jvmti/heapTracker/heapTracker.h
- src/demo/share/jvmti/heapTracker/sample.makefile.txt
- src/demo/share/jvmti/heapViewer/README.txt
- src/demo/share/jvmti/heapViewer/heapViewer.c
- src/demo/share/jvmti/heapViewer/sample.makefile.txt
- src/demo/share/jvmti/index.html
- src/demo/share/jvmti/java_crw_demo/README.txt
- src/demo/share/jvmti/java_crw_demo/java_crw_demo.c
- src/demo/share/jvmti/java_crw_demo/java_crw_demo.h
- src/demo/share/jvmti/java_crw_demo/sample.makefile.txt
- src/demo/share/jvmti/minst/Minst.java
- src/demo/share/jvmti/minst/README.txt
- src/demo/share/jvmti/minst/minst.c
- src/demo/share/jvmti/minst/minst.h
- src/demo/share/jvmti/minst/sample.makefile.txt
- src/demo/share/jvmti/mtrace/Mtrace.java
- src/demo/share/jvmti/mtrace/README.txt
- src/demo/share/jvmti/mtrace/mtrace.c
- src/demo/share/jvmti/mtrace/mtrace.h
- src/demo/share/jvmti/mtrace/sample.makefile.txt
- src/demo/share/jvmti/versionCheck/README.txt
- src/demo/share/jvmti/versionCheck/sample.makefile.txt
- src/demo/share/jvmti/versionCheck/versionCheck.c
- src/demo/share/jvmti/waiters/Agent.cpp
- src/demo/share/jvmti/waiters/Agent.hpp
- src/demo/share/jvmti/waiters/Monitor.cpp
- src/demo/share/jvmti/waiters/Monitor.hpp
- src/demo/share/jvmti/waiters/README.txt
- src/demo/share/jvmti/waiters/Thread.cpp
- src/demo/share/jvmti/waiters/Thread.hpp
- src/demo/share/jvmti/waiters/sample.makefile.txt
- src/demo/share/jvmti/waiters/waiters.cpp
- src/demo/share/management/FullThreadDump/Deadlock.java
- src/demo/share/management/FullThreadDump/FullThreadDump.java
- src/demo/share/management/FullThreadDump/README.txt
- src/demo/share/management/FullThreadDump/ThreadMonitor.java
- src/demo/share/management/JTop/JTop.java
- src/demo/share/management/JTop/JTopPlugin.java
- src/demo/share/management/JTop/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
- src/demo/share/management/JTop/README.txt
- src/demo/share/management/MemoryMonitor/MemoryMonitor.java
- src/demo/share/management/MemoryMonitor/README.txt
- src/demo/share/management/VerboseGC/PrintGCStat.java
- src/demo/share/management/VerboseGC/README.txt
- src/demo/share/management/VerboseGC/VerboseGC.java
- src/demo/share/management/index.html
- src/demo/share/scripting/jconsole-plugin/README.txt
- src/demo/share/scripting/jconsole-plugin/build.xml
- src/demo/share/scripting/jconsole-plugin/src/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java
- src/demo/share/scripting/jconsole-plugin/src/resources/jconsole.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/heapdump.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/hello.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/invoke.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/jstack.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/jtop.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/sysprops.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/verbose.js
- src/demo/solaris/jni/Poller/Client.java
- src/demo/solaris/jni/Poller/LinkedQueue.java
- src/demo/solaris/jni/Poller/Poller.c
- src/demo/solaris/jni/Poller/Poller.java
- src/demo/solaris/jni/Poller/PollingServer.java
- src/demo/solaris/jni/Poller/README.txt
- src/demo/solaris/jni/Poller/SimpleServer.java
- src/sample/share/README
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Device.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Kettle.xml
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Module.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/PluginChecker.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Require.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/RequireContainer.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/BoilerPlugin.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/ExtendedBoilerPlugin.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/TimerPlugin.java
- src/sample/share/annotations/Validator/src/PositiveIntegerSupplier.java
- src/sample/share/annotations/Validator/src/SupplierValidator.java
- src/sample/share/annotations/Validator/src/Validate.java
- src/sample/share/annotations/Validator/src/Validator.java
- src/sample/share/annotations/index.html
- src/sample/share/forkjoin/mergesort/MergeDemo.java
- src/sample/share/forkjoin/mergesort/MergeSort.java
- src/sample/share/jmx/jmx-scandir/build.properties
- src/sample/share/jmx/jmx-scandir/build.xml
- src/sample/share/jmx/jmx-scandir/index.html
- src/sample/share/jmx/jmx-scandir/logging.properties
- src/sample/share/jmx/jmx-scandir/manifest.mf
- src/sample/share/jmx/jmx-scandir/nbproject/file-targets.xml
- src/sample/share/jmx/jmx-scandir/nbproject/jdk.xml
- src/sample/share/jmx/jmx-scandir/nbproject/netbeans-targets.xml
- src/sample/share/jmx/jmx-scandir/nbproject/project.xml
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScanner.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScannerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManager.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManagerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirAgent.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirClient.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfigMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManager.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManagerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/DirectoryScannerConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/FileMatch.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultLogConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultRecord.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ScanManagerConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/XmlConfigUtils.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/package.html
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/package.html
- src/sample/share/jmx/jmx-scandir/src/etc/access.properties
- src/sample/share/jmx/jmx-scandir/src/etc/management.properties
- src/sample/share/jmx/jmx-scandir/src/etc/password.properties
- src/sample/share/jmx/jmx-scandir/src/etc/testconfig.xml
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/DirectoryScannerTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanDirConfigTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanManagerTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/TestUtils.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config/XmlConfigUtilsTest.java
- src/sample/share/lambda/BulkDataOperations/index.html
- src/sample/share/lambda/BulkDataOperations/src/CSVProcessor.java
- src/sample/share/lambda/BulkDataOperations/src/Grep.java
- src/sample/share/lambda/BulkDataOperations/src/PasswordGenerator.java
- src/sample/share/lambda/BulkDataOperations/src/WC.java
- src/sample/share/lambda/DefaultMethods/ArrayIterator.java
- src/sample/share/lambda/DefaultMethods/DiamondInheritance.java
- src/sample/share/lambda/DefaultMethods/Inheritance.java
- src/sample/share/lambda/DefaultMethods/MixIn.java
- src/sample/share/lambda/DefaultMethods/Reflection.java
- src/sample/share/lambda/DefaultMethods/SimplestUsage.java
- src/sample/share/nbproject/project.xml
- src/sample/share/nio/chatserver/ChatServer.java
- src/sample/share/nio/chatserver/Client.java
- src/sample/share/nio/chatserver/ClientReader.java
- src/sample/share/nio/chatserver/DataReader.java
- src/sample/share/nio/chatserver/MessageReader.java
- src/sample/share/nio/chatserver/NameReader.java
- src/sample/share/nio/chatserver/README.txt
- src/sample/share/nio/file/AclEdit.java
- src/sample/share/nio/file/Chmod.java
- src/sample/share/nio/file/Copy.java
- src/sample/share/nio/file/DiskUsage.java
- src/sample/share/nio/file/FileType.java
- src/sample/share/nio/file/WatchDir.java
- src/sample/share/nio/file/Xdd.java
- src/sample/share/nio/multicast/MulticastAddress.java
- src/sample/share/nio/multicast/Reader.java
- src/sample/share/nio/multicast/Sender.java
- src/sample/share/nio/server/AcceptHandler.java
- src/sample/share/nio/server/Acceptor.java
- src/sample/share/nio/server/B1.java
- src/sample/share/nio/server/BN.java
- src/sample/share/nio/server/BP.java
- src/sample/share/nio/server/ChannelIO.java
- src/sample/share/nio/server/ChannelIOSecure.java
- src/sample/share/nio/server/Content.java
- src/sample/share/nio/server/Dispatcher.java
- src/sample/share/nio/server/Dispatcher1.java
- src/sample/share/nio/server/DispatcherN.java
- src/sample/share/nio/server/FileContent.java
- src/sample/share/nio/server/Handler.java
- src/sample/share/nio/server/MalformedRequestException.java
- src/sample/share/nio/server/N1.java
- src/sample/share/nio/server/N2.java
- src/sample/share/nio/server/README.txt
- src/sample/share/nio/server/Reply.java
- src/sample/share/nio/server/Request.java
- src/sample/share/nio/server/RequestHandler.java
- src/sample/share/nio/server/RequestServicer.java
- src/sample/share/nio/server/Sendable.java
- src/sample/share/nio/server/Server.java
- src/sample/share/nio/server/StringContent.java
- src/sample/share/nio/server/URLDumper.java
- src/sample/share/scripting/scriptpad/README.txt
- src/sample/share/scripting/scriptpad/build.properties
- src/sample/share/scripting/scriptpad/build.xml
- src/sample/share/scripting/scriptpad/nbproject/file-targets.xml
- src/sample/share/scripting/scriptpad/nbproject/jdk.xml
- src/sample/share/scripting/scriptpad/nbproject/netbeans-targets.xml
- src/sample/share/scripting/scriptpad/nbproject/project.xml
- src/sample/share/scripting/scriptpad/src/META-INF/manifest.mf
- src/sample/share/scripting/scriptpad/src/com/sun/sample/scriptpad/Main.java
- src/sample/share/scripting/scriptpad/src/resources/Main.js
- src/sample/share/scripting/scriptpad/src/resources/conc.js
- src/sample/share/scripting/scriptpad/src/resources/gui.js
- src/sample/share/scripting/scriptpad/src/resources/mm.js
- src/sample/share/scripting/scriptpad/src/resources/scriptpad.js
- src/sample/share/scripting/scriptpad/src/scripts/README.txt
- src/sample/share/scripting/scriptpad/src/scripts/browse.js
- src/sample/share/scripting/scriptpad/src/scripts/insertfile.js
- src/sample/share/scripting/scriptpad/src/scripts/linewrap.js
- src/sample/share/scripting/scriptpad/src/scripts/mail.js
- src/sample/share/scripting/scriptpad/src/scripts/memmonitor.js
- src/sample/share/scripting/scriptpad/src/scripts/memory.bat
- src/sample/share/scripting/scriptpad/src/scripts/memory.js
- src/sample/share/scripting/scriptpad/src/scripts/memory.sh
- src/sample/share/scripting/scriptpad/src/scripts/textcolor.js
- src/sample/share/try-with-resources/index.html
- src/sample/share/try-with-resources/src/CustomAutoCloseableSample.java
- src/sample/share/try-with-resources/src/Unzip.java
- src/sample/share/try-with-resources/src/ZipCat.java
- src/sample/share/vm/clr-jvm/Makefile
- src/sample/share/vm/clr-jvm/README.txt
- src/sample/share/vm/clr-jvm/invoked.java
- src/sample/share/vm/clr-jvm/invoker.cs
- src/sample/share/vm/clr-jvm/jinvoker.cpp
- src/sample/share/vm/clr-jvm/jinvokerExp.h
- src/sample/share/vm/jvm-clr/Makefile
- src/sample/share/vm/jvm-clr/README.txt
- src/sample/share/vm/jvm-clr/invoked.cs
- src/sample/share/vm/jvm-clr/invoker.cpp
- src/sample/share/vm/jvm-clr/invoker.h
- src/sample/share/vm/jvm-clr/invoker.java
- src/sample/share/vm/jvm-clr/invokerExp.h
- src/sample/solaris/dtrace/README.txt
- src/sample/solaris/dtrace/helpers/dtrace_helper.d
- src/sample/solaris/dtrace/hotspot/README.txt
- src/sample/solaris/dtrace/hotspot/class_loading_stat.d
- src/sample/solaris/dtrace/hotspot/gc_time_stat.d
- src/sample/solaris/dtrace/hotspot/hotspot_calls_tree.d
- src/sample/solaris/dtrace/hotspot/method_compile_stat.d
- src/sample/solaris/dtrace/hotspot/method_invocation_stat.d
- src/sample/solaris/dtrace/hotspot/method_invocation_stat_filter.d
- src/sample/solaris/dtrace/hotspot/method_invocation_tree.d
- src/sample/solaris/dtrace/hotspot/monitors.d
- src/sample/solaris/dtrace/hotspot/object_allocation_stat.d
- src/sample/solaris/dtrace/hotspot_jni/CriticalSection.d
- src/sample/solaris/dtrace/hotspot_jni/CriticalSection_slow.d
- src/sample/solaris/dtrace/hotspot_jni/README.txt
- src/sample/solaris/dtrace/hotspot_jni/hotspot_jni_calls_stat.d
- src/sample/solaris/dtrace/hotspot_jni/hotspot_jni_calls_tree.d
Changeset: 1686a2d061b7
Author: shurailine
Date: 2017-04-18 07:49 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/1686a2d061b7
Merge
Changeset: 884954a6b5fb
Author: shurailine
Date: 2017-04-18 11:25 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/884954a6b5fb
8178910: Problemlist sample tests
Reviewed-by: darcy
! test/ProblemList.txt
Changeset: b2b769e0a708
Author: mchung
Date: 2017-04-18 11:35 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/b2b769e0a708
8178404: jlink --suggest-providers should list providers from observable modules
Reviewed-by: alanb
! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/Jlink.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/JlinkTask.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/resources/jlink.properties
! test/tools/jlink/bindservices/BindServices.java
! test/tools/jlink/bindservices/SuggestProviders.java
! test/tools/jlink/bindservices/src/m3/module-info.java
+ test/tools/jlink/bindservices/src/m3/p3/MyProvider.java
+ test/tools/jlink/bindservices/src/m3/p3/S.java
Changeset: 63a174bf063a
Author: kbarrett
Date: 2017-04-19 00:29 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/63a174bf063a
8178832: (ref) jdk.lang.ref.disableClearBeforeEnqueue property is ignored
Summary: Delay property access to first use, and fix test.
Reviewed-by: mchung
! src/java.base/share/classes/java/lang/ref/Reference.java
! test/java/lang/ref/ReferenceEnqueue.java
Changeset: c2556da831ef
Author: jlahoda
Date: 2017-04-19 13:38 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/c2556da831ef
8178012: Finish removal of -Xmodule:
Summary: Setting jtreg to use --patch-module instead of -Xmodule:.
Reviewed-by: alanb
! test/TEST.ROOT
Changeset: 8cba9cc074b8
Author: simonis
Date: 2017-04-19 14:17 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/8cba9cc074b8
8178726: Can't load classes from classpath if it is a UNC share
Reviewed-by: alanb, weijun, chegar
! src/java.base/share/classes/jdk/internal/loader/ClassLoaders.java
Changeset: d046e0ed0287
Author: ihse
Date: 2017-04-19 14:28 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/d046e0ed0287
8178438: Info-privileged.plist claims launchers to be "OpenJDK 7 Command"
Reviewed-by: erikj
! src/java.base/macosx/native/launcher/Info-privileged.plist
Changeset: 73e2d15f0145
Author: serb
Date: 2016-10-03 19:55 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/73e2d15f0145
8165626: Improved window framing
Reviewed-by: ddehaven, prr, mschoene, ssadetsky
! src/java.desktop/macosx/classes/com/apple/eawt/_AppDockIconHandler.java
! src/java.desktop/macosx/classes/sun/java2d/opengl/CGLLayer.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CFRetainedResource.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CImage.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CMenuItem.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformComponent.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformLWWindow.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformView.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CTrayIcon.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CViewPlatformEmbeddedFrame.java
! src/java.desktop/macosx/classes/sun/lwawt/macosx/CWarningWindow.java
! src/java.desktop/macosx/native/libawt_lwawt/awt/AWTSurfaceLayers.h
! src/java.desktop/macosx/native/libawt_lwawt/awt/AWTSurfaceLayers.m
! test/java/awt/TrayIcon/SystemTrayIconHelper.java
Changeset: 4127ccedcced
Author: dfuchs
Date: 2016-10-20 15:10 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/4127ccedcced
8163520: Reuse cache entries
Reviewed-by: chegar, michaelm, weijun, aefimov, ahgross
! src/java.base/share/classes/sun/net/www/http/HttpClient.java
! src/java.base/share/classes/sun/net/www/protocol/http/AuthenticationInfo.java
! src/java.base/unix/classes/sun/net/www/protocol/http/ntlm/NTLMAuthentication.java
! src/java.base/windows/classes/sun/net/www/protocol/http/ntlm/NTLMAuthentication.java
Changeset: d900d6aa3828
Author: serb
Date: 2016-11-19 13:10 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/d900d6aa3828
8167110: Windows peering issue
Reviewed-by: ssadetsky, mschoene, prr
! src/java.desktop/windows/classes/sun/awt/windows/WMenuItemPeer.java
! src/java.desktop/windows/classes/sun/awt/windows/WObjectPeer.java
! src/java.desktop/windows/native/libawt/windows/awt_Component.cpp
! src/java.desktop/windows/native/libawt/windows/awt_Menu.cpp
! src/java.desktop/windows/native/libawt/windows/awt_Menu.h
! src/java.desktop/windows/native/libawt/windows/awt_MenuBar.cpp
! src/java.desktop/windows/native/libawt/windows/awt_MenuBar.h
! src/java.desktop/windows/native/libawt/windows/awt_MenuItem.cpp
! src/java.desktop/windows/native/libawt/windows/awt_MenuItem.h
! src/java.desktop/windows/native/libawt/windows/awt_PopupMenu.cpp
! src/java.desktop/windows/native/libawt/windows/awt_PopupMenu.h
Changeset: 96bf29b26e56
Author: dfuchs
Date: 2016-12-20 18:02 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/96bf29b26e56
8170814: Reuse cache entries (part II)
Reviewed-by: chegar, ahgross, weijun, aefimov, michaelm
! src/java.base/share/classes/sun/net/www/http/HttpClient.java
! src/java.base/share/classes/sun/net/www/protocol/http/NegotiateAuthentication.java
Changeset: 5d29e086bffc
Author: rriggs
Date: 2017-02-03 14:10 -0500
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/5d29e086bffc
8172299: Improve class processing
Reviewed-by: coffeys, chegar, ahgross, skoivu, rhalade
! src/java.base/share/classes/java/io/ObjectInputStream.java
! test/java/io/Serializable/serialFilter/SerialFilterTest.java
Changeset: ada6fcb7cfd1
Author: vtewari
Date: 2017-02-10 10:11 +0530
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/ada6fcb7cfd1
8170222: Better transfers of files
Reviewed-by: dfuchs, chegar
! src/java.base/share/classes/sun/net/ftp/impl/FtpClient.java
Changeset: 117d27ac1ede
Author: vtewari
Date: 2017-02-22 15:23 +0530
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/117d27ac1ede
8171533: Better email transfer
Reviewed-by: chegar, dfuchs
! src/java.base/share/classes/sun/net/smtp/SmtpClient.java
Changeset: 43e19ddcf993
Author: dfuchs
Date: 2017-02-23 12:08 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/43e19ddcf993
8174985: NTLM authentication doesn't work with IIS if NTLM cache is disabled
Reviewed-by: aefimov, chegar, rhalade
! src/java.base/share/classes/sun/net/www/http/HttpClient.java
Changeset: e288a5815bdb
Author: mullan
Date: 2017-03-20 07:38 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e288a5815bdb
8038893: Recertify certificate matching
Reviewed-by: xuelei, jdn, erikj, asmotrak
! make/CompileTools.gmk
! make/Tools.gmk
! src/java.base/share/classes/java/net/SocketPermission.java
! src/java.base/share/classes/sun/net/RegisteredDomain.java
! src/java.base/share/classes/sun/security/ssl/X509TrustManagerImpl.java
! src/java.base/share/classes/sun/security/util/HostnameChecker.java
+ src/java.base/share/classes/sun/security/util/RegisteredDomain.java
Changeset: ce6910a0f800
Author: mchung
Date: 2017-04-20 08:00 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/ce6910a0f800
8175819: OS name and arch in JMOD files should match the values as in the bundle names
Reviewed-by: erikj, ihse
! src/jdk.jlink/share/classes/jdk/tools/jlink/builder/DefaultImageBuilder.java
+ src/jdk.jlink/share/classes/jdk/tools/jlink/internal/Platform.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ExcludeVMPlugin.java
! test/tools/jlink/plugins/SystemModuleDescriptors/SystemModulesTest.java
Changeset: 457e37c68608
Author: ssadetsky
Date: 2017-04-12 09:00 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/457e37c68608
8142534: [TEST_BUG] Test javax/swing/JMenu/8072900/WrongSelectionOnMouseOver.java fails for Ubuntu 15.10
Reviewed-by: yan, serb
! test/javax/swing/JMenu/8072900/WrongSelectionOnMouseOver.java
Changeset: c01538294ddf
Author: ssadetsky
Date: 2017-04-13 08:04 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/c01538294ddf
8142540: [TEST_BUG] Test sun/awt/dnd/8024061/bug8024061.java fails on ubuntu
Reviewed-by: yan, serb
! test/sun/awt/dnd/8024061/bug8024061.java
Changeset: 91bb280a9dac
Author: prr
Date: 2017-04-13 10:57 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/91bb280a9dac
Merge
Changeset: 007f01cc0f81
Author: prr
Date: 2017-04-13 14:53 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/007f01cc0f81
8178457: Remove link to 2D guide from Line2D javadoc
Reviewed-by: flar
! src/java.desktop/share/classes/java/awt/geom/Line2D.java
Changeset: 61ea362c37f3
Author: mcherkas
Date: 2017-04-14 16:51 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/61ea362c37f3
8076249: NPE in AccessBridge while editing JList model
Reviewed-by: serb, prr, alexsch
! src/java.desktop/share/classes/javax/swing/JList.java
+ test/javax/accessibility/JList/AccessibleJListChildNPETest.java
Changeset: 2f72d8d137d8
Author: prr
Date: 2017-04-17 08:37 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/2f72d8d137d8
Merge
- test/java/net/MulticastSocket/JoinGroup.java
- test/java/net/MulticastSocket/Leave.java
Changeset: a1a3ef8fd66f
Author: azvegint
Date: 2017-04-17 18:44 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/a1a3ef8fd66f
8177919: java.awt.Desktop.setDefaultMenuBar???() should be specified to throw IllegalStateException
Reviewed-by: serb, prr
! src/java.desktop/macosx/classes/com/apple/eawt/_AppMenuBarHandler.java
! src/java.desktop/macosx/classes/com/apple/laf/AquaMenuBarUI.java
! src/java.desktop/share/classes/java/awt/Desktop.java
! src/java.desktop/share/classes/javax/swing/JRootPane.java
Changeset: eb4e9fb470a7
Author: prr
Date: 2017-04-17 08:52 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/eb4e9fb470a7
6479801: java.awt.font.LineBreakMeasurer code incorrect
Reviewed-by: serb
! src/java.desktop/share/classes/java/awt/font/LineBreakMeasurer.java
Changeset: 8320693956ea
Author: prr
Date: 2017-04-17 09:05 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/8320693956ea
8178685: Update links to guide in javax sound package javadoc
Reviewed-by: serb
! src/java.desktop/share/classes/javax/sound/midi/package-info.java
! src/java.desktop/share/classes/javax/sound/midi/spi/package-info.java
! src/java.desktop/share/classes/javax/sound/sampled/package-info.java
! src/java.desktop/share/classes/javax/sound/sampled/spi/package-info.java
Changeset: f11efef2d1f3
Author: prr
Date: 2017-04-17 09:08 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/f11efef2d1f3
8178708: Regtest failure: java/awt/Color/LoadProfileWithSM.java
Reviewed-by: serb, alanb, mchung
! src/java.desktop/share/classes/java/awt/color/ICC_Profile.java
! test/java/awt/Color/LoadProfileWithSM.java
Changeset: 09aa37cacba9
Author: prr
Date: 2017-04-20 08:27 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/09aa37cacba9
Merge
- make/CopySamples.gmk
- src/demo/share/jvmti/agent_util/README.txt
- src/demo/share/jvmti/agent_util/agent_util.c
- src/demo/share/jvmti/agent_util/agent_util.h
- src/demo/share/jvmti/compiledMethodLoad/README.txt
- src/demo/share/jvmti/compiledMethodLoad/compiledMethodLoad.c
- src/demo/share/jvmti/compiledMethodLoad/sample.makefile.txt
- src/demo/share/jvmti/gctest/README.txt
- src/demo/share/jvmti/gctest/gctest.c
- src/demo/share/jvmti/gctest/sample.makefile.txt
- src/demo/share/jvmti/heapTracker/HeapTracker.java
- src/demo/share/jvmti/heapTracker/README.txt
- src/demo/share/jvmti/heapTracker/heapTracker.c
- src/demo/share/jvmti/heapTracker/heapTracker.h
- src/demo/share/jvmti/heapTracker/sample.makefile.txt
- src/demo/share/jvmti/heapViewer/README.txt
- src/demo/share/jvmti/heapViewer/heapViewer.c
- src/demo/share/jvmti/heapViewer/sample.makefile.txt
- src/demo/share/jvmti/index.html
- src/demo/share/jvmti/java_crw_demo/README.txt
- src/demo/share/jvmti/java_crw_demo/java_crw_demo.c
- src/demo/share/jvmti/java_crw_demo/java_crw_demo.h
- src/demo/share/jvmti/java_crw_demo/sample.makefile.txt
- src/demo/share/jvmti/minst/Minst.java
- src/demo/share/jvmti/minst/README.txt
- src/demo/share/jvmti/minst/minst.c
- src/demo/share/jvmti/minst/minst.h
- src/demo/share/jvmti/minst/sample.makefile.txt
- src/demo/share/jvmti/mtrace/Mtrace.java
- src/demo/share/jvmti/mtrace/README.txt
- src/demo/share/jvmti/mtrace/mtrace.c
- src/demo/share/jvmti/mtrace/mtrace.h
- src/demo/share/jvmti/mtrace/sample.makefile.txt
- src/demo/share/jvmti/versionCheck/README.txt
- src/demo/share/jvmti/versionCheck/sample.makefile.txt
- src/demo/share/jvmti/versionCheck/versionCheck.c
- src/demo/share/jvmti/waiters/Agent.cpp
- src/demo/share/jvmti/waiters/Agent.hpp
- src/demo/share/jvmti/waiters/Monitor.cpp
- src/demo/share/jvmti/waiters/Monitor.hpp
- src/demo/share/jvmti/waiters/README.txt
- src/demo/share/jvmti/waiters/Thread.cpp
- src/demo/share/jvmti/waiters/Thread.hpp
- src/demo/share/jvmti/waiters/sample.makefile.txt
- src/demo/share/jvmti/waiters/waiters.cpp
- src/demo/share/management/FullThreadDump/Deadlock.java
- src/demo/share/management/FullThreadDump/FullThreadDump.java
- src/demo/share/management/FullThreadDump/README.txt
- src/demo/share/management/FullThreadDump/ThreadMonitor.java
- src/demo/share/management/JTop/JTop.java
- src/demo/share/management/JTop/JTopPlugin.java
- src/demo/share/management/JTop/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
- src/demo/share/management/JTop/README.txt
- src/demo/share/management/MemoryMonitor/MemoryMonitor.java
- src/demo/share/management/MemoryMonitor/README.txt
- src/demo/share/management/VerboseGC/PrintGCStat.java
- src/demo/share/management/VerboseGC/README.txt
- src/demo/share/management/VerboseGC/VerboseGC.java
- src/demo/share/management/index.html
- src/demo/share/scripting/jconsole-plugin/README.txt
- src/demo/share/scripting/jconsole-plugin/build.xml
- src/demo/share/scripting/jconsole-plugin/src/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java
- src/demo/share/scripting/jconsole-plugin/src/resources/jconsole.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/heapdump.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/hello.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/invoke.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/jstack.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/jtop.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/sysprops.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/verbose.js
- src/demo/solaris/jni/Poller/Client.java
- src/demo/solaris/jni/Poller/LinkedQueue.java
- src/demo/solaris/jni/Poller/Poller.c
- src/demo/solaris/jni/Poller/Poller.java
- src/demo/solaris/jni/Poller/PollingServer.java
- src/demo/solaris/jni/Poller/README.txt
- src/demo/solaris/jni/Poller/SimpleServer.java
- src/sample/share/README
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Device.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Kettle.xml
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Module.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/PluginChecker.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Require.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/RequireContainer.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/BoilerPlugin.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/ExtendedBoilerPlugin.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/TimerPlugin.java
- src/sample/share/annotations/Validator/src/PositiveIntegerSupplier.java
- src/sample/share/annotations/Validator/src/SupplierValidator.java
- src/sample/share/annotations/Validator/src/Validate.java
- src/sample/share/annotations/Validator/src/Validator.java
- src/sample/share/annotations/index.html
- src/sample/share/forkjoin/mergesort/MergeDemo.java
- src/sample/share/forkjoin/mergesort/MergeSort.java
- src/sample/share/jmx/jmx-scandir/build.properties
- src/sample/share/jmx/jmx-scandir/build.xml
- src/sample/share/jmx/jmx-scandir/index.html
- src/sample/share/jmx/jmx-scandir/logging.properties
- src/sample/share/jmx/jmx-scandir/manifest.mf
- src/sample/share/jmx/jmx-scandir/nbproject/file-targets.xml
- src/sample/share/jmx/jmx-scandir/nbproject/jdk.xml
- src/sample/share/jmx/jmx-scandir/nbproject/netbeans-targets.xml
- src/sample/share/jmx/jmx-scandir/nbproject/project.xml
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScanner.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScannerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManager.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManagerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirAgent.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirClient.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfigMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManager.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManagerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/DirectoryScannerConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/FileMatch.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultLogConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultRecord.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ScanManagerConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/XmlConfigUtils.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/package.html
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/package.html
- src/sample/share/jmx/jmx-scandir/src/etc/access.properties
- src/sample/share/jmx/jmx-scandir/src/etc/management.properties
- src/sample/share/jmx/jmx-scandir/src/etc/password.properties
- src/sample/share/jmx/jmx-scandir/src/etc/testconfig.xml
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/DirectoryScannerTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanDirConfigTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanManagerTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/TestUtils.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config/XmlConfigUtilsTest.java
- src/sample/share/lambda/BulkDataOperations/index.html
- src/sample/share/lambda/BulkDataOperations/src/CSVProcessor.java
- src/sample/share/lambda/BulkDataOperations/src/Grep.java
- src/sample/share/lambda/BulkDataOperations/src/PasswordGenerator.java
- src/sample/share/lambda/BulkDataOperations/src/WC.java
- src/sample/share/lambda/DefaultMethods/ArrayIterator.java
- src/sample/share/lambda/DefaultMethods/DiamondInheritance.java
- src/sample/share/lambda/DefaultMethods/Inheritance.java
- src/sample/share/lambda/DefaultMethods/MixIn.java
- src/sample/share/lambda/DefaultMethods/Reflection.java
- src/sample/share/lambda/DefaultMethods/SimplestUsage.java
- src/sample/share/nbproject/project.xml
- src/sample/share/nio/chatserver/ChatServer.java
- src/sample/share/nio/chatserver/Client.java
- src/sample/share/nio/chatserver/ClientReader.java
- src/sample/share/nio/chatserver/DataReader.java
- src/sample/share/nio/chatserver/MessageReader.java
- src/sample/share/nio/chatserver/NameReader.java
- src/sample/share/nio/chatserver/README.txt
- src/sample/share/nio/file/AclEdit.java
- src/sample/share/nio/file/Chmod.java
- src/sample/share/nio/file/Copy.java
- src/sample/share/nio/file/DiskUsage.java
- src/sample/share/nio/file/FileType.java
- src/sample/share/nio/file/WatchDir.java
- src/sample/share/nio/file/Xdd.java
- src/sample/share/nio/multicast/MulticastAddress.java
- src/sample/share/nio/multicast/Reader.java
- src/sample/share/nio/multicast/Sender.java
- src/sample/share/nio/server/AcceptHandler.java
- src/sample/share/nio/server/Acceptor.java
- src/sample/share/nio/server/B1.java
- src/sample/share/nio/server/BN.java
- src/sample/share/nio/server/BP.java
- src/sample/share/nio/server/ChannelIO.java
- src/sample/share/nio/server/ChannelIOSecure.java
- src/sample/share/nio/server/Content.java
- src/sample/share/nio/server/Dispatcher.java
- src/sample/share/nio/server/Dispatcher1.java
- src/sample/share/nio/server/DispatcherN.java
- src/sample/share/nio/server/FileContent.java
- src/sample/share/nio/server/Handler.java
- src/sample/share/nio/server/MalformedRequestException.java
- src/sample/share/nio/server/N1.java
- src/sample/share/nio/server/N2.java
- src/sample/share/nio/server/README.txt
- src/sample/share/nio/server/Reply.java
- src/sample/share/nio/server/Request.java
- src/sample/share/nio/server/RequestHandler.java
- src/sample/share/nio/server/RequestServicer.java
- src/sample/share/nio/server/Sendable.java
- src/sample/share/nio/server/Server.java
- src/sample/share/nio/server/StringContent.java
- src/sample/share/nio/server/URLDumper.java
- src/sample/share/scripting/scriptpad/README.txt
- src/sample/share/scripting/scriptpad/build.properties
- src/sample/share/scripting/scriptpad/build.xml
- src/sample/share/scripting/scriptpad/nbproject/file-targets.xml
- src/sample/share/scripting/scriptpad/nbproject/jdk.xml
- src/sample/share/scripting/scriptpad/nbproject/netbeans-targets.xml
- src/sample/share/scripting/scriptpad/nbproject/project.xml
- src/sample/share/scripting/scriptpad/src/META-INF/manifest.mf
- src/sample/share/scripting/scriptpad/src/com/sun/sample/scriptpad/Main.java
- src/sample/share/scripting/scriptpad/src/resources/Main.js
- src/sample/share/scripting/scriptpad/src/resources/conc.js
- src/sample/share/scripting/scriptpad/src/resources/gui.js
- src/sample/share/scripting/scriptpad/src/resources/mm.js
- src/sample/share/scripting/scriptpad/src/resources/scriptpad.js
- src/sample/share/scripting/scriptpad/src/scripts/README.txt
- src/sample/share/scripting/scriptpad/src/scripts/browse.js
- src/sample/share/scripting/scriptpad/src/scripts/insertfile.js
- src/sample/share/scripting/scriptpad/src/scripts/linewrap.js
- src/sample/share/scripting/scriptpad/src/scripts/mail.js
- src/sample/share/scripting/scriptpad/src/scripts/memmonitor.js
- src/sample/share/scripting/scriptpad/src/scripts/memory.bat
- src/sample/share/scripting/scriptpad/src/scripts/memory.js
- src/sample/share/scripting/scriptpad/src/scripts/memory.sh
- src/sample/share/scripting/scriptpad/src/scripts/textcolor.js
- src/sample/share/try-with-resources/index.html
- src/sample/share/try-with-resources/src/CustomAutoCloseableSample.java
- src/sample/share/try-with-resources/src/Unzip.java
- src/sample/share/try-with-resources/src/ZipCat.java
- src/sample/share/vm/clr-jvm/Makefile
- src/sample/share/vm/clr-jvm/README.txt
- src/sample/share/vm/clr-jvm/invoked.java
- src/sample/share/vm/clr-jvm/invoker.cs
- src/sample/share/vm/clr-jvm/jinvoker.cpp
- src/sample/share/vm/clr-jvm/jinvokerExp.h
- src/sample/share/vm/jvm-clr/Makefile
- src/sample/share/vm/jvm-clr/README.txt
- src/sample/share/vm/jvm-clr/invoked.cs
- src/sample/share/vm/jvm-clr/invoker.cpp
- src/sample/share/vm/jvm-clr/invoker.h
- src/sample/share/vm/jvm-clr/invoker.java
- src/sample/share/vm/jvm-clr/invokerExp.h
- src/sample/solaris/dtrace/README.txt
- src/sample/solaris/dtrace/helpers/dtrace_helper.d
- src/sample/solaris/dtrace/hotspot/README.txt
- src/sample/solaris/dtrace/hotspot/class_loading_stat.d
- src/sample/solaris/dtrace/hotspot/gc_time_stat.d
- src/sample/solaris/dtrace/hotspot/hotspot_calls_tree.d
- src/sample/solaris/dtrace/hotspot/method_compile_stat.d
- src/sample/solaris/dtrace/hotspot/method_invocation_stat.d
- src/sample/solaris/dtrace/hotspot/method_invocation_stat_filter.d
- src/sample/solaris/dtrace/hotspot/method_invocation_tree.d
- src/sample/solaris/dtrace/hotspot/monitors.d
- src/sample/solaris/dtrace/hotspot/object_allocation_stat.d
- src/sample/solaris/dtrace/hotspot_jni/CriticalSection.d
- src/sample/solaris/dtrace/hotspot_jni/CriticalSection_slow.d
- src/sample/solaris/dtrace/hotspot_jni/README.txt
- src/sample/solaris/dtrace/hotspot_jni/hotspot_jni_calls_stat.d
- src/sample/solaris/dtrace/hotspot_jni/hotspot_jni_calls_tree.d
Changeset: cd75b15fb105
Author: ksrini
Date: 2017-04-20 09:52 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/cd75b15fb105
8076417: Update test/jdk/asm/AsmSanity.java with modules
Reviewed-by: amlu, mchung, sundar
! test/TEST.groups
- test/jdk/asm/AsmSanity.java
Changeset: 5f8fb7cb8a45
Author: lancea
Date: 2017-04-20 13:57 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/5f8fb7cb8a45
8178915: Minor update to the PooledConnection javadoc
Reviewed-by: joehw
! src/java.sql/share/classes/javax/sql/PooledConnection.java
Changeset: 8ec1d93d7ff5
Author: ssadetsky
Date: 2017-04-20 08:23 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/8ec1d93d7ff5
8081478: [TESTBUG] Test javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java fails for OEL 7 only
Reviewed-by: yan, serb, alexsch
! test/javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java
Changeset: 76ca2c1a2abd
Author: ssadetsky
Date: 2017-04-20 08:38 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/76ca2c1a2abd
8081454: [TESTBUG]Some java/awt/Mixing tests fail in OEL 7 only
Reviewed-by: yan
! test/java/awt/Mixing/AWT_Mixing/GlassPaneOverlappingTestBase.java
! test/java/awt/Mixing/AWT_Mixing/HierarchyBoundsListenerMixingTest.java
! test/java/awt/Mixing/AWT_Mixing/JComboBoxOverlapping.java
! test/java/awt/Mixing/AWT_Mixing/SimpleOverlappingTestBase.java
Changeset: 6fd99a85c997
Author: prr
Date: 2017-04-20 10:00 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/6fd99a85c997
Merge
- make/CopySamples.gmk
- src/demo/share/jvmti/agent_util/README.txt
- src/demo/share/jvmti/agent_util/agent_util.c
- src/demo/share/jvmti/agent_util/agent_util.h
- src/demo/share/jvmti/compiledMethodLoad/README.txt
- src/demo/share/jvmti/compiledMethodLoad/compiledMethodLoad.c
- src/demo/share/jvmti/compiledMethodLoad/sample.makefile.txt
- src/demo/share/jvmti/gctest/README.txt
- src/demo/share/jvmti/gctest/gctest.c
- src/demo/share/jvmti/gctest/sample.makefile.txt
- src/demo/share/jvmti/heapTracker/HeapTracker.java
- src/demo/share/jvmti/heapTracker/README.txt
- src/demo/share/jvmti/heapTracker/heapTracker.c
- src/demo/share/jvmti/heapTracker/heapTracker.h
- src/demo/share/jvmti/heapTracker/sample.makefile.txt
- src/demo/share/jvmti/heapViewer/README.txt
- src/demo/share/jvmti/heapViewer/heapViewer.c
- src/demo/share/jvmti/heapViewer/sample.makefile.txt
- src/demo/share/jvmti/index.html
- src/demo/share/jvmti/java_crw_demo/README.txt
- src/demo/share/jvmti/java_crw_demo/java_crw_demo.c
- src/demo/share/jvmti/java_crw_demo/java_crw_demo.h
- src/demo/share/jvmti/java_crw_demo/sample.makefile.txt
- src/demo/share/jvmti/minst/Minst.java
- src/demo/share/jvmti/minst/README.txt
- src/demo/share/jvmti/minst/minst.c
- src/demo/share/jvmti/minst/minst.h
- src/demo/share/jvmti/minst/sample.makefile.txt
- src/demo/share/jvmti/mtrace/Mtrace.java
- src/demo/share/jvmti/mtrace/README.txt
- src/demo/share/jvmti/mtrace/mtrace.c
- src/demo/share/jvmti/mtrace/mtrace.h
- src/demo/share/jvmti/mtrace/sample.makefile.txt
- src/demo/share/jvmti/versionCheck/README.txt
- src/demo/share/jvmti/versionCheck/sample.makefile.txt
- src/demo/share/jvmti/versionCheck/versionCheck.c
- src/demo/share/jvmti/waiters/Agent.cpp
- src/demo/share/jvmti/waiters/Agent.hpp
- src/demo/share/jvmti/waiters/Monitor.cpp
- src/demo/share/jvmti/waiters/Monitor.hpp
- src/demo/share/jvmti/waiters/README.txt
- src/demo/share/jvmti/waiters/Thread.cpp
- src/demo/share/jvmti/waiters/Thread.hpp
- src/demo/share/jvmti/waiters/sample.makefile.txt
- src/demo/share/jvmti/waiters/waiters.cpp
- src/demo/share/management/FullThreadDump/Deadlock.java
- src/demo/share/management/FullThreadDump/FullThreadDump.java
- src/demo/share/management/FullThreadDump/README.txt
- src/demo/share/management/FullThreadDump/ThreadMonitor.java
- src/demo/share/management/JTop/JTop.java
- src/demo/share/management/JTop/JTopPlugin.java
- src/demo/share/management/JTop/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
- src/demo/share/management/JTop/README.txt
- src/demo/share/management/MemoryMonitor/MemoryMonitor.java
- src/demo/share/management/MemoryMonitor/README.txt
- src/demo/share/management/VerboseGC/PrintGCStat.java
- src/demo/share/management/VerboseGC/README.txt
- src/demo/share/management/VerboseGC/VerboseGC.java
- src/demo/share/management/index.html
- src/demo/share/scripting/jconsole-plugin/README.txt
- src/demo/share/scripting/jconsole-plugin/build.xml
- src/demo/share/scripting/jconsole-plugin/src/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java
- src/demo/share/scripting/jconsole-plugin/src/resources/jconsole.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/heapdump.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/hello.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/invoke.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/jstack.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/jtop.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/sysprops.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/verbose.js
- src/demo/solaris/jni/Poller/Client.java
- src/demo/solaris/jni/Poller/LinkedQueue.java
- src/demo/solaris/jni/Poller/Poller.c
- src/demo/solaris/jni/Poller/Poller.java
- src/demo/solaris/jni/Poller/PollingServer.java
- src/demo/solaris/jni/Poller/README.txt
- src/demo/solaris/jni/Poller/SimpleServer.java
- src/sample/share/README
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Device.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Kettle.xml
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Module.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/PluginChecker.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Require.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/RequireContainer.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/BoilerPlugin.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/ExtendedBoilerPlugin.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/TimerPlugin.java
- src/sample/share/annotations/Validator/src/PositiveIntegerSupplier.java
- src/sample/share/annotations/Validator/src/SupplierValidator.java
- src/sample/share/annotations/Validator/src/Validate.java
- src/sample/share/annotations/Validator/src/Validator.java
- src/sample/share/annotations/index.html
- src/sample/share/forkjoin/mergesort/MergeDemo.java
- src/sample/share/forkjoin/mergesort/MergeSort.java
- src/sample/share/jmx/jmx-scandir/build.properties
- src/sample/share/jmx/jmx-scandir/build.xml
- src/sample/share/jmx/jmx-scandir/index.html
- src/sample/share/jmx/jmx-scandir/logging.properties
- src/sample/share/jmx/jmx-scandir/manifest.mf
- src/sample/share/jmx/jmx-scandir/nbproject/file-targets.xml
- src/sample/share/jmx/jmx-scandir/nbproject/jdk.xml
- src/sample/share/jmx/jmx-scandir/nbproject/netbeans-targets.xml
- src/sample/share/jmx/jmx-scandir/nbproject/project.xml
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScanner.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScannerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManager.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManagerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirAgent.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirClient.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfigMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManager.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManagerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/DirectoryScannerConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/FileMatch.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultLogConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultRecord.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ScanManagerConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/XmlConfigUtils.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/package.html
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/package.html
- src/sample/share/jmx/jmx-scandir/src/etc/access.properties
- src/sample/share/jmx/jmx-scandir/src/etc/management.properties
- src/sample/share/jmx/jmx-scandir/src/etc/password.properties
- src/sample/share/jmx/jmx-scandir/src/etc/testconfig.xml
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/DirectoryScannerTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanDirConfigTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanManagerTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/TestUtils.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config/XmlConfigUtilsTest.java
- src/sample/share/lambda/BulkDataOperations/index.html
- src/sample/share/lambda/BulkDataOperations/src/CSVProcessor.java
- src/sample/share/lambda/BulkDataOperations/src/Grep.java
- src/sample/share/lambda/BulkDataOperations/src/PasswordGenerator.java
- src/sample/share/lambda/BulkDataOperations/src/WC.java
- src/sample/share/lambda/DefaultMethods/ArrayIterator.java
- src/sample/share/lambda/DefaultMethods/DiamondInheritance.java
- src/sample/share/lambda/DefaultMethods/Inheritance.java
- src/sample/share/lambda/DefaultMethods/MixIn.java
- src/sample/share/lambda/DefaultMethods/Reflection.java
- src/sample/share/lambda/DefaultMethods/SimplestUsage.java
- src/sample/share/nbproject/project.xml
- src/sample/share/nio/chatserver/ChatServer.java
- src/sample/share/nio/chatserver/Client.java
- src/sample/share/nio/chatserver/ClientReader.java
- src/sample/share/nio/chatserver/DataReader.java
- src/sample/share/nio/chatserver/MessageReader.java
- src/sample/share/nio/chatserver/NameReader.java
- src/sample/share/nio/chatserver/README.txt
- src/sample/share/nio/file/AclEdit.java
- src/sample/share/nio/file/Chmod.java
- src/sample/share/nio/file/Copy.java
- src/sample/share/nio/file/DiskUsage.java
- src/sample/share/nio/file/FileType.java
- src/sample/share/nio/file/WatchDir.java
- src/sample/share/nio/file/Xdd.java
- src/sample/share/nio/multicast/MulticastAddress.java
- src/sample/share/nio/multicast/Reader.java
- src/sample/share/nio/multicast/Sender.java
- src/sample/share/nio/server/AcceptHandler.java
- src/sample/share/nio/server/Acceptor.java
- src/sample/share/nio/server/B1.java
- src/sample/share/nio/server/BN.java
- src/sample/share/nio/server/BP.java
- src/sample/share/nio/server/ChannelIO.java
- src/sample/share/nio/server/ChannelIOSecure.java
- src/sample/share/nio/server/Content.java
- src/sample/share/nio/server/Dispatcher.java
- src/sample/share/nio/server/Dispatcher1.java
- src/sample/share/nio/server/DispatcherN.java
- src/sample/share/nio/server/FileContent.java
- src/sample/share/nio/server/Handler.java
- src/sample/share/nio/server/MalformedRequestException.java
- src/sample/share/nio/server/N1.java
- src/sample/share/nio/server/N2.java
- src/sample/share/nio/server/README.txt
- src/sample/share/nio/server/Reply.java
- src/sample/share/nio/server/Request.java
- src/sample/share/nio/server/RequestHandler.java
- src/sample/share/nio/server/RequestServicer.java
- src/sample/share/nio/server/Sendable.java
- src/sample/share/nio/server/Server.java
- src/sample/share/nio/server/StringContent.java
- src/sample/share/nio/server/URLDumper.java
- src/sample/share/scripting/scriptpad/README.txt
- src/sample/share/scripting/scriptpad/build.properties
- src/sample/share/scripting/scriptpad/build.xml
- src/sample/share/scripting/scriptpad/nbproject/file-targets.xml
- src/sample/share/scripting/scriptpad/nbproject/jdk.xml
- src/sample/share/scripting/scriptpad/nbproject/netbeans-targets.xml
- src/sample/share/scripting/scriptpad/nbproject/project.xml
- src/sample/share/scripting/scriptpad/src/META-INF/manifest.mf
- src/sample/share/scripting/scriptpad/src/com/sun/sample/scriptpad/Main.java
- src/sample/share/scripting/scriptpad/src/resources/Main.js
- src/sample/share/scripting/scriptpad/src/resources/conc.js
- src/sample/share/scripting/scriptpad/src/resources/gui.js
- src/sample/share/scripting/scriptpad/src/resources/mm.js
- src/sample/share/scripting/scriptpad/src/resources/scriptpad.js
- src/sample/share/scripting/scriptpad/src/scripts/README.txt
- src/sample/share/scripting/scriptpad/src/scripts/browse.js
- src/sample/share/scripting/scriptpad/src/scripts/insertfile.js
- src/sample/share/scripting/scriptpad/src/scripts/linewrap.js
- src/sample/share/scripting/scriptpad/src/scripts/mail.js
- src/sample/share/scripting/scriptpad/src/scripts/memmonitor.js
- src/sample/share/scripting/scriptpad/src/scripts/memory.bat
- src/sample/share/scripting/scriptpad/src/scripts/memory.js
- src/sample/share/scripting/scriptpad/src/scripts/memory.sh
- src/sample/share/scripting/scriptpad/src/scripts/textcolor.js
- src/sample/share/try-with-resources/index.html
- src/sample/share/try-with-resources/src/CustomAutoCloseableSample.java
- src/sample/share/try-with-resources/src/Unzip.java
- src/sample/share/try-with-resources/src/ZipCat.java
- src/sample/share/vm/clr-jvm/Makefile
- src/sample/share/vm/clr-jvm/README.txt
- src/sample/share/vm/clr-jvm/invoked.java
- src/sample/share/vm/clr-jvm/invoker.cs
- src/sample/share/vm/clr-jvm/jinvoker.cpp
- src/sample/share/vm/clr-jvm/jinvokerExp.h
- src/sample/share/vm/jvm-clr/Makefile
- src/sample/share/vm/jvm-clr/README.txt
- src/sample/share/vm/jvm-clr/invoked.cs
- src/sample/share/vm/jvm-clr/invoker.cpp
- src/sample/share/vm/jvm-clr/invoker.h
- src/sample/share/vm/jvm-clr/invoker.java
- src/sample/share/vm/jvm-clr/invokerExp.h
- src/sample/solaris/dtrace/README.txt
- src/sample/solaris/dtrace/helpers/dtrace_helper.d
- src/sample/solaris/dtrace/hotspot/README.txt
- src/sample/solaris/dtrace/hotspot/class_loading_stat.d
- src/sample/solaris/dtrace/hotspot/gc_time_stat.d
- src/sample/solaris/dtrace/hotspot/hotspot_calls_tree.d
- src/sample/solaris/dtrace/hotspot/method_compile_stat.d
- src/sample/solaris/dtrace/hotspot/method_invocation_stat.d
- src/sample/solaris/dtrace/hotspot/method_invocation_stat_filter.d
- src/sample/solaris/dtrace/hotspot/method_invocation_tree.d
- src/sample/solaris/dtrace/hotspot/monitors.d
- src/sample/solaris/dtrace/hotspot/object_allocation_stat.d
- src/sample/solaris/dtrace/hotspot_jni/CriticalSection.d
- src/sample/solaris/dtrace/hotspot_jni/CriticalSection_slow.d
- src/sample/solaris/dtrace/hotspot_jni/README.txt
- src/sample/solaris/dtrace/hotspot_jni/hotspot_jni_calls_stat.d
- src/sample/solaris/dtrace/hotspot_jni/hotspot_jni_calls_tree.d
Changeset: 0162f0f6d173
Author: prr
Date: 2017-04-20 11:06 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/0162f0f6d173
Merge
- test/jdk/asm/AsmSanity.java
Changeset: 533d7278264b
Author: smarks
Date: 2017-04-20 11:40 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/533d7278264b
8167981: Optional: add notes explaining intended use
Reviewed-by: martin, psandoz
! src/java.base/share/classes/java/util/Optional.java
! src/java.base/share/classes/java/util/OptionalDouble.java
! src/java.base/share/classes/java/util/OptionalInt.java
! src/java.base/share/classes/java/util/OptionalLong.java
Changeset: 0a701ba4c306
Author: naoto
Date: 2017-04-20 14:09 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/0a701ba4c306
8178823: Unable to initialize HijrahCalendar: Hijrah-umalqura when running with a security manager
Reviewed-by: lancea, rriggs
! src/java.base/share/classes/java/time/chrono/HijrahChronology.java
- test/java/time/TEST.properties
+ test/java/time/nontestng/java/time/chrono/Bug8178823.java
+ test/java/time/nontestng/java/time/chrono/bug8178823.policy
+ test/java/time/tck/TEST.properties
+ test/java/time/test/TEST.properties
Changeset: 83ec9920d373
Author: mchung
Date: 2017-04-20 15:06 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/83ec9920d373
8179035: Include tool modules in unified docs
Reviewed-by: lancea
! src/jdk.pack/share/classes/module-info.java
! src/jdk.rmic/share/classes/module-info.java
Changeset: bcb5143a2c6e
Author: lana
Date: 2017-04-21 03:34 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/bcb5143a2c6e
Merge
- make/CopySamples.gmk
- src/demo/share/jvmti/agent_util/README.txt
- src/demo/share/jvmti/agent_util/agent_util.c
- src/demo/share/jvmti/agent_util/agent_util.h
- src/demo/share/jvmti/compiledMethodLoad/README.txt
- src/demo/share/jvmti/compiledMethodLoad/compiledMethodLoad.c
- src/demo/share/jvmti/compiledMethodLoad/sample.makefile.txt
- src/demo/share/jvmti/gctest/README.txt
- src/demo/share/jvmti/gctest/gctest.c
- src/demo/share/jvmti/gctest/sample.makefile.txt
- src/demo/share/jvmti/heapTracker/HeapTracker.java
- src/demo/share/jvmti/heapTracker/README.txt
- src/demo/share/jvmti/heapTracker/heapTracker.c
- src/demo/share/jvmti/heapTracker/heapTracker.h
- src/demo/share/jvmti/heapTracker/sample.makefile.txt
- src/demo/share/jvmti/heapViewer/README.txt
- src/demo/share/jvmti/heapViewer/heapViewer.c
- src/demo/share/jvmti/heapViewer/sample.makefile.txt
- src/demo/share/jvmti/index.html
- src/demo/share/jvmti/java_crw_demo/README.txt
- src/demo/share/jvmti/java_crw_demo/java_crw_demo.c
- src/demo/share/jvmti/java_crw_demo/java_crw_demo.h
- src/demo/share/jvmti/java_crw_demo/sample.makefile.txt
- src/demo/share/jvmti/minst/Minst.java
- src/demo/share/jvmti/minst/README.txt
- src/demo/share/jvmti/minst/minst.c
- src/demo/share/jvmti/minst/minst.h
- src/demo/share/jvmti/minst/sample.makefile.txt
- src/demo/share/jvmti/mtrace/Mtrace.java
- src/demo/share/jvmti/mtrace/README.txt
- src/demo/share/jvmti/mtrace/mtrace.c
- src/demo/share/jvmti/mtrace/mtrace.h
- src/demo/share/jvmti/mtrace/sample.makefile.txt
- src/demo/share/jvmti/versionCheck/README.txt
- src/demo/share/jvmti/versionCheck/sample.makefile.txt
- src/demo/share/jvmti/versionCheck/versionCheck.c
- src/demo/share/jvmti/waiters/Agent.cpp
- src/demo/share/jvmti/waiters/Agent.hpp
- src/demo/share/jvmti/waiters/Monitor.cpp
- src/demo/share/jvmti/waiters/Monitor.hpp
- src/demo/share/jvmti/waiters/README.txt
- src/demo/share/jvmti/waiters/Thread.cpp
- src/demo/share/jvmti/waiters/Thread.hpp
- src/demo/share/jvmti/waiters/sample.makefile.txt
- src/demo/share/jvmti/waiters/waiters.cpp
- src/demo/share/management/FullThreadDump/Deadlock.java
- src/demo/share/management/FullThreadDump/FullThreadDump.java
- src/demo/share/management/FullThreadDump/README.txt
- src/demo/share/management/FullThreadDump/ThreadMonitor.java
- src/demo/share/management/JTop/JTop.java
- src/demo/share/management/JTop/JTopPlugin.java
- src/demo/share/management/JTop/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
- src/demo/share/management/JTop/README.txt
- src/demo/share/management/MemoryMonitor/MemoryMonitor.java
- src/demo/share/management/MemoryMonitor/README.txt
- src/demo/share/management/VerboseGC/PrintGCStat.java
- src/demo/share/management/VerboseGC/README.txt
- src/demo/share/management/VerboseGC/VerboseGC.java
- src/demo/share/management/index.html
- src/demo/share/scripting/jconsole-plugin/README.txt
- src/demo/share/scripting/jconsole-plugin/build.xml
- src/demo/share/scripting/jconsole-plugin/src/META-INF/services/com.sun.tools.jconsole.JConsolePlugin
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/EditableAtEndDocument.java
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptJConsolePlugin.java
- src/demo/share/scripting/jconsole-plugin/src/com/sun/demo/scripting/jconsole/ScriptShellPanel.java
- src/demo/share/scripting/jconsole-plugin/src/resources/jconsole.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/heapdump.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/hello.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/invoke.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/jstack.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/jtop.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/sysprops.js
- src/demo/share/scripting/jconsole-plugin/src/scripts/verbose.js
- src/demo/solaris/jni/Poller/Client.java
- src/demo/solaris/jni/Poller/LinkedQueue.java
- src/demo/solaris/jni/Poller/Poller.c
- src/demo/solaris/jni/Poller/Poller.java
- src/demo/solaris/jni/Poller/PollingServer.java
- src/demo/solaris/jni/Poller/README.txt
- src/demo/solaris/jni/Poller/SimpleServer.java
- src/sample/share/README
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Device.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Kettle.xml
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Module.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/PluginChecker.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/Require.java
- src/sample/share/annotations/DependencyChecker/PluginChecker/src/checker/RequireContainer.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/BoilerPlugin.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/ExtendedBoilerPlugin.java
- src/sample/share/annotations/DependencyChecker/Plugins/src/plugins/TimerPlugin.java
- src/sample/share/annotations/Validator/src/PositiveIntegerSupplier.java
- src/sample/share/annotations/Validator/src/SupplierValidator.java
- src/sample/share/annotations/Validator/src/Validate.java
- src/sample/share/annotations/Validator/src/Validator.java
- src/sample/share/annotations/index.html
- src/sample/share/forkjoin/mergesort/MergeDemo.java
- src/sample/share/forkjoin/mergesort/MergeSort.java
- src/sample/share/jmx/jmx-scandir/build.properties
- src/sample/share/jmx/jmx-scandir/build.xml
- src/sample/share/jmx/jmx-scandir/index.html
- src/sample/share/jmx/jmx-scandir/logging.properties
- src/sample/share/jmx/jmx-scandir/manifest.mf
- src/sample/share/jmx/jmx-scandir/nbproject/file-targets.xml
- src/sample/share/jmx/jmx-scandir/nbproject/jdk.xml
- src/sample/share/jmx/jmx-scandir/nbproject/netbeans-targets.xml
- src/sample/share/jmx/jmx-scandir/nbproject/project.xml
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScanner.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/DirectoryScannerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManager.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ResultLogManagerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirAgent.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirClient.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanDirConfigMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManager.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/ScanManagerMXBean.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/DirectoryScannerConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/FileMatch.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultLogConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ResultRecord.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/ScanManagerConfig.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/XmlConfigUtils.java
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/config/package.html
- src/sample/share/jmx/jmx-scandir/src/com/sun/jmx/examples/scandir/package.html
- src/sample/share/jmx/jmx-scandir/src/etc/access.properties
- src/sample/share/jmx/jmx-scandir/src/etc/management.properties
- src/sample/share/jmx/jmx-scandir/src/etc/password.properties
- src/sample/share/jmx/jmx-scandir/src/etc/testconfig.xml
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/DirectoryScannerTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanDirConfigTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/ScanManagerTest.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/TestUtils.java
- src/sample/share/jmx/jmx-scandir/test/com/sun/jmx/examples/scandir/config/XmlConfigUtilsTest.java
- src/sample/share/lambda/BulkDataOperations/index.html
- src/sample/share/lambda/BulkDataOperations/src/CSVProcessor.java
- src/sample/share/lambda/BulkDataOperations/src/Grep.java
- src/sample/share/lambda/BulkDataOperations/src/PasswordGenerator.java
- src/sample/share/lambda/BulkDataOperations/src/WC.java
- src/sample/share/lambda/DefaultMethods/ArrayIterator.java
- src/sample/share/lambda/DefaultMethods/DiamondInheritance.java
- src/sample/share/lambda/DefaultMethods/Inheritance.java
- src/sample/share/lambda/DefaultMethods/MixIn.java
- src/sample/share/lambda/DefaultMethods/Reflection.java
- src/sample/share/lambda/DefaultMethods/SimplestUsage.java
- src/sample/share/nbproject/project.xml
- src/sample/share/nio/chatserver/ChatServer.java
- src/sample/share/nio/chatserver/Client.java
- src/sample/share/nio/chatserver/ClientReader.java
- src/sample/share/nio/chatserver/DataReader.java
- src/sample/share/nio/chatserver/MessageReader.java
- src/sample/share/nio/chatserver/NameReader.java
- src/sample/share/nio/chatserver/README.txt
- src/sample/share/nio/file/AclEdit.java
- src/sample/share/nio/file/Chmod.java
- src/sample/share/nio/file/Copy.java
- src/sample/share/nio/file/DiskUsage.java
- src/sample/share/nio/file/FileType.java
- src/sample/share/nio/file/WatchDir.java
- src/sample/share/nio/file/Xdd.java
- src/sample/share/nio/multicast/MulticastAddress.java
- src/sample/share/nio/multicast/Reader.java
- src/sample/share/nio/multicast/Sender.java
- src/sample/share/nio/server/AcceptHandler.java
- src/sample/share/nio/server/Acceptor.java
- src/sample/share/nio/server/B1.java
- src/sample/share/nio/server/BN.java
- src/sample/share/nio/server/BP.java
- src/sample/share/nio/server/ChannelIO.java
- src/sample/share/nio/server/ChannelIOSecure.java
- src/sample/share/nio/server/Content.java
- src/sample/share/nio/server/Dispatcher.java
- src/sample/share/nio/server/Dispatcher1.java
- src/sample/share/nio/server/DispatcherN.java
- src/sample/share/nio/server/FileContent.java
- src/sample/share/nio/server/Handler.java
- src/sample/share/nio/server/MalformedRequestException.java
- src/sample/share/nio/server/N1.java
- src/sample/share/nio/server/N2.java
- src/sample/share/nio/server/README.txt
- src/sample/share/nio/server/Reply.java
- src/sample/share/nio/server/Request.java
- src/sample/share/nio/server/RequestHandler.java
- src/sample/share/nio/server/RequestServicer.java
- src/sample/share/nio/server/Sendable.java
- src/sample/share/nio/server/Server.java
- src/sample/share/nio/server/StringContent.java
- src/sample/share/nio/server/URLDumper.java
- src/sample/share/scripting/scriptpad/README.txt
- src/sample/share/scripting/scriptpad/build.properties
- src/sample/share/scripting/scriptpad/build.xml
- src/sample/share/scripting/scriptpad/nbproject/file-targets.xml
- src/sample/share/scripting/scriptpad/nbproject/jdk.xml
- src/sample/share/scripting/scriptpad/nbproject/netbeans-targets.xml
- src/sample/share/scripting/scriptpad/nbproject/project.xml
- src/sample/share/scripting/scriptpad/src/META-INF/manifest.mf
- src/sample/share/scripting/scriptpad/src/com/sun/sample/scriptpad/Main.java
- src/sample/share/scripting/scriptpad/src/resources/Main.js
- src/sample/share/scripting/scriptpad/src/resources/conc.js
- src/sample/share/scripting/scriptpad/src/resources/gui.js
- src/sample/share/scripting/scriptpad/src/resources/mm.js
- src/sample/share/scripting/scriptpad/src/resources/scriptpad.js
- src/sample/share/scripting/scriptpad/src/scripts/README.txt
- src/sample/share/scripting/scriptpad/src/scripts/browse.js
- src/sample/share/scripting/scriptpad/src/scripts/insertfile.js
- src/sample/share/scripting/scriptpad/src/scripts/linewrap.js
- src/sample/share/scripting/scriptpad/src/scripts/mail.js
- src/sample/share/scripting/scriptpad/src/scripts/memmonitor.js
- src/sample/share/scripting/scriptpad/src/scripts/memory.bat
- src/sample/share/scripting/scriptpad/src/scripts/memory.js
- src/sample/share/scripting/scriptpad/src/scripts/memory.sh
- src/sample/share/scripting/scriptpad/src/scripts/textcolor.js
- src/sample/share/try-with-resources/index.html
- src/sample/share/try-with-resources/src/CustomAutoCloseableSample.java
- src/sample/share/try-with-resources/src/Unzip.java
- src/sample/share/try-with-resources/src/ZipCat.java
- src/sample/share/vm/clr-jvm/Makefile
- src/sample/share/vm/clr-jvm/README.txt
- src/sample/share/vm/clr-jvm/invoked.java
- src/sample/share/vm/clr-jvm/invoker.cs
- src/sample/share/vm/clr-jvm/jinvoker.cpp
- src/sample/share/vm/clr-jvm/jinvokerExp.h
- src/sample/share/vm/jvm-clr/Makefile
- src/sample/share/vm/jvm-clr/README.txt
- src/sample/share/vm/jvm-clr/invoked.cs
- src/sample/share/vm/jvm-clr/invoker.cpp
- src/sample/share/vm/jvm-clr/invoker.h
- src/sample/share/vm/jvm-clr/invoker.java
- src/sample/share/vm/jvm-clr/invokerExp.h
- src/sample/solaris/dtrace/README.txt
- src/sample/solaris/dtrace/helpers/dtrace_helper.d
- src/sample/solaris/dtrace/hotspot/README.txt
- src/sample/solaris/dtrace/hotspot/class_loading_stat.d
- src/sample/solaris/dtrace/hotspot/gc_time_stat.d
- src/sample/solaris/dtrace/hotspot/hotspot_calls_tree.d
- src/sample/solaris/dtrace/hotspot/method_compile_stat.d
- src/sample/solaris/dtrace/hotspot/method_invocation_stat.d
- src/sample/solaris/dtrace/hotspot/method_invocation_stat_filter.d
- src/sample/solaris/dtrace/hotspot/method_invocation_tree.d
- src/sample/solaris/dtrace/hotspot/monitors.d
- src/sample/solaris/dtrace/hotspot/object_allocation_stat.d
- src/sample/solaris/dtrace/hotspot_jni/CriticalSection.d
- src/sample/solaris/dtrace/hotspot_jni/CriticalSection_slow.d
- src/sample/solaris/dtrace/hotspot_jni/README.txt
- src/sample/solaris/dtrace/hotspot_jni/hotspot_jni_calls_stat.d
- src/sample/solaris/dtrace/hotspot_jni/hotspot_jni_calls_tree.d
- test/java/time/TEST.properties
- test/jdk/asm/AsmSanity.java
Changeset: 8891407eccc4
Author: anazarov
Date: 2017-04-20 22:46 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/8891407eccc4
8178323: Add negative tests for bind services Jlink feature
Reviewed-by: mchung
! test/tools/jlink/bindservices/BindServices.java
! test/tools/jlink/bindservices/SuggestProviders.java
Changeset: 101f35eefb01
Author: anazarov
Date: 2017-04-20 22:46 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/101f35eefb01
Merge
Changeset: be9156346c78
Author: prappo
Date: 2017-04-21 19:13 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/be9156346c78
8177738: Runtime.Version must be a value-based class
8148822: (spec) Regex in Runtime.Version and JEP 223 should match
8160954: (spec) Runtime.Version regex and $PRE/$OPT issues
8148877: (spec) Specify when an empty '+' is required in a version string
Reviewed-by: psandoz, rriggs
Contributed-by: Iris Clark , Pavel Rappo
! src/java.base/share/classes/java/lang/Runtime.java
! src/java.base/share/classes/java/lang/VersionProps.java.template
! test/java/lang/Runtime/Version/Basic.java
Changeset: 4f9eb71e0b4f
Author: ihse
Date: 2017-04-23 21:11 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/4f9eb71e0b4f
8178316: Add JVM-MANAGEMENT-MIB.mib to jdk/src/java.management/share/specs/
Reviewed-by: erikj, mchung
+ src/java.management/share/specs/JVM-MANAGEMENT-MIB.mib
Changeset: 3120da6408c7
Author: ihse
Date: 2017-04-23 21:33 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/3120da6408c7
8179022: Add serialization spec as markdown
Reviewed-by: erikj, mchung, rriggs
+ src/java.base/share/specs/serialization/changelog.md
+ src/java.base/share/specs/serialization/class.md
+ src/java.base/share/specs/serialization/examples.md
+ src/java.base/share/specs/serialization/exceptions.md
+ src/java.base/share/specs/serialization/images/class.gif
+ src/java.base/share/specs/serialization/images/version.gif
+ src/java.base/share/specs/serialization/index.md
+ src/java.base/share/specs/serialization/input.md
+ src/java.base/share/specs/serialization/output.md
+ src/java.base/share/specs/serialization/protocol.md
+ src/java.base/share/specs/serialization/security.md
+ src/java.base/share/specs/serialization/serial-arch.md
+ src/java.base/share/specs/serialization/version.md
Changeset: 1fe3c713d756
Author: ihse
Date: 2017-04-23 21:39 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/1fe3c713d756
8178037: Move information from jdi-overview.html into jdk.jdi module-info.java
Reviewed-by: erikj, alanb, mchung, dholmes
- src/java.management/share/classes/mgmt-overview.html
- src/java.security.jgss/share/classes/jgss-overview.html
- src/jdk.jdi/share/classes/jdi-overview.html
! src/jdk.jdi/share/classes/module-info.java
- src/jdk.security.auth/share/classes/jaas-overview.html
Changeset: 7828aedcb525
Author: amlu
Date: 2017-04-24 13:43 +0800
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/7828aedcb525
8174171: Move spliterator testing of BitSet into big memory tests BitSetStreamTest
Reviewed-by: mli, psandoz
! test/ProblemList.txt
! test/TEST.ROOT
! test/TEST.groups
- test/java/util/BitSet/BitSetStreamTest.java
+ test/java/util/BitSet/stream/BitSetStreamTest.java
! test/java/util/Spliterator/SpliteratorTraversingAndSplittingTest.java
+ test/java/util/stream/bootlib/java.base/java/util/SpliteratorOfIntDataBuilder.java
Changeset: f8d6f86f7f39
Author: lana
Date: 2017-04-27 16:07 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/f8d6f86f7f39
Added tag jdk-9+167 for changeset 7828aedcb525
! .hgtags
Changeset: fa4bdd8f0eed
Author: chegar
Date: 2017-04-25 14:46 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/fa4bdd8f0eed
8158270: MulticastSendReceiveTests.java failed with "Expected message not received"
Reviewed-by: alanb
! test/java/nio/channels/DatagramChannel/NetworkConfiguration.java
Changeset: 10eb52093bb8
Author: mchung
Date: 2017-04-25 09:09 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/10eb52093bb8
8179025: Exclude deployment modules from FieldSetAccessibleTest.java and VerifyJimage.java
Reviewed-by: alanb
! test/ProblemList.txt
! test/java/lang/Class/getDeclaredField/FieldSetAccessibleTest.java
! test/jdk/modules/etc/JdkQualifiedExportTest.java
! test/tools/jimage/VerifyJimage.java
Changeset: fd5c621ad3b1
Author: ksrini
Date: 2017-04-25 07:52 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/fd5c621ad3b1
8178725: provide way to link to external documentation
Reviewed-by: erikj, ihse, jjg
+ make/src/classes/build/tools/taglet/ExtLink.java
Changeset: 1c6407c57773
Author: ihse
Date: 2017-04-26 14:35 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/1c6407c57773
8178042: Allow custom taglets
Reviewed-by: erikj, mchung
! make/CompileTools.gmk
Changeset: 7c04ab31b4d6
Author: naoto
Date: 2017-04-26 09:37 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/7c04ab31b4d6
8178412: Doc link updates for i18n
Reviewed-by: ksrini
! src/java.desktop/share/classes/java/awt/im/package-info.java
! src/java.desktop/share/classes/java/awt/im/spi/package-info.java
! src/java.desktop/share/classes/javax/swing/colorchooser/package-info.java
! src/java.desktop/share/classes/javax/swing/text/JTextComponent.java
Changeset: bd0e423e5756
Author: jjg
Date: 2017-04-26 13:38 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/bd0e423e5756
8179364: update " characters
Reviewed-by: ksrini, mullan
! src/java.base/share/classes/javax/crypto/CipherInputStream.java
! src/java.base/share/classes/javax/crypto/CryptoPermission.java
! src/java.base/share/classes/javax/crypto/CryptoPolicyParser.java
! src/java.xml.crypto/share/classes/javax/xml/crypto/dsig/XMLSignContext.java
! src/java.xml.crypto/share/classes/javax/xml/crypto/dsig/XMLValidateContext.java
Changeset: e28156f27e0a
Author: ihse
Date: 2017-05-03 08:46 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e28156f27e0a
8179453: Add a proper SetupProcessMarkdown
Reviewed-by: erikj
+ make/data/docs-resources/specs/resources/jdk-default.css
Changeset: 0fa2b22476cd
Author: ksrini
Date: 2017-05-03 07:39 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/0fa2b22476cd
8179538: Update jdk.jdi to be HTML-5 friendly
Reviewed-by: mchung, sspitsyn
! src/jdk.jdi/share/classes/com/sun/jdi/ClassType.java
! src/jdk.jdi/share/classes/com/sun/jdi/InterfaceType.java
! src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java
! src/jdk.jdi/share/classes/com/sun/jdi/Location.java
! src/jdk.jdi/share/classes/com/sun/jdi/ObjectReference.java
! src/jdk.jdi/share/classes/com/sun/jdi/Type.java
! src/jdk.jdi/share/classes/com/sun/jdi/Value.java
! src/jdk.jdi/share/classes/com/sun/jdi/VirtualMachineManager.java
! src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html
! src/jdk.jdi/share/classes/module-info.java
Changeset: a50b619ac159
Author: lancea
Date: 2017-05-03 12:58 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/a50b619ac159
8078267: Add test to verify that a module based JDBC driver via the service-provider loading mechanism
Reviewed-by: joehw
+ test/java/sql/driverModuleTests/DriverManagerModuleTests.java
+ test/java/sql/modules/luckydogdriver/luckydogtennis/LuckyDogDriver.java
+ test/java/sql/modules/luckydogdriver/luckydogtennis/StubConnection.java
+ test/java/sql/modules/luckydogdriver/module-info.java
+ test/java/sql/modules/mystubdriver/com/luckydogtennis/StubConnection.java
+ test/java/sql/modules/mystubdriver/com/luckydogtennis/StubDriver.java
+ test/java/sql/modules/mystubdriver/module-info.java
Changeset: 797880157074
Author: mli
Date: 2017-05-03 21:15 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/797880157074
8179451: Confidential copyright header in openjdk
Summary: Using Oracle OpenJDK copyright notices
Reviewed-by: weijun
Contributed-by: John Jiang
! test/sun/security/ssl/CertPathRestrictions/JSSEClient.java
! test/sun/security/ssl/CertPathRestrictions/JSSEServer.java
! test/sun/security/ssl/CertPathRestrictions/TLSRestrictions.java
Changeset: 73113c19a5df
Author: alanb
Date: 2017-05-04 07:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/73113c19a5df
8178380: Module system implementation refresh (5/2017)
Reviewed-by: mchung, alanb, sspitsyn
Contributed-by: alan.bateman at oracle.com, mandy.chung at oracle.com, chris.hegarty at oracle.com
! make/mapfiles/libinstrument/mapfile-vers
! src/java.base/share/classes/java/lang/ClassLoader.java
! src/java.base/share/classes/java/lang/Module.java
! src/java.base/share/classes/java/lang/SecurityManager.java
! src/java.base/share/classes/java/lang/System.java
! src/java.base/share/classes/java/lang/invoke/MethodHandles.java
! src/java.base/share/classes/java/lang/module/Configuration.java
! src/java.base/share/classes/java/lang/module/ModuleDescriptor.java
! src/java.base/share/classes/java/lang/module/ModuleFinder.java
! src/java.base/share/classes/java/lang/module/Resolver.java
! src/java.base/share/classes/java/nio/file/FileSystems.java
! src/java.base/share/classes/jdk/internal/loader/BuiltinClassLoader.java
! src/java.base/share/classes/jdk/internal/misc/JavaLangAccess.java
! src/java.base/share/classes/jdk/internal/module/Checks.java
! src/java.base/share/classes/jdk/internal/module/ClassFileAttributes.java
! src/java.base/share/classes/jdk/internal/module/ModuleBootstrap.java
! src/java.base/share/classes/jdk/internal/module/ModuleHashesBuilder.java
! src/java.base/share/classes/jdk/internal/module/ModuleInfo.java
! src/java.base/share/classes/jdk/internal/module/ModuleInfoExtender.java
! src/java.base/share/classes/jdk/internal/module/ModuleInfoWriter.java
! src/java.base/share/classes/jdk/internal/module/ModuleLoaderMap.java
! src/java.base/share/classes/jdk/internal/module/ModulePatcher.java
! src/java.base/share/classes/jdk/internal/module/ModulePath.java
! src/java.base/share/classes/jdk/internal/module/ModuleReferences.java
! src/java.base/share/classes/jdk/internal/module/ModuleResolution.java
! src/java.base/share/classes/jdk/internal/module/ModuleTarget.java
! src/java.base/share/classes/jdk/internal/module/Modules.java
! src/java.base/share/classes/jdk/internal/module/Resources.java
! src/java.base/share/classes/module-info.java
! src/java.base/share/classes/sun/launcher/LauncherHelper.java
! src/java.base/share/classes/sun/launcher/resources/launcher.properties
! src/java.base/share/native/libjli/emessages.h
! src/java.base/share/native/libjli/java.c
! src/java.instrument/share/classes/java/lang/instrument/Instrumentation.java
! src/java.instrument/share/classes/java/lang/instrument/package.html
! src/java.instrument/share/classes/module-info.java
! src/java.instrument/share/classes/sun/instrument/InstrumentationImpl.java
! src/java.instrument/share/native/libinstrument/InstrumentationImplNativeMethods.c
! src/java.instrument/share/native/libinstrument/InvocationAdapter.c
! src/java.management/share/classes/java/lang/management/ThreadInfo.java
! src/jdk.attach/aix/classes/sun/tools/attach/VirtualMachineImpl.java
! src/jdk.attach/linux/classes/sun/tools/attach/VirtualMachineImpl.java
! src/jdk.attach/macosx/classes/sun/tools/attach/VirtualMachineImpl.java
! src/jdk.attach/share/classes/sun/tools/attach/HotSpotVirtualMachine.java
! src/jdk.attach/solaris/classes/sun/tools/attach/VirtualMachineImpl.java
! src/jdk.attach/windows/classes/sun/tools/attach/VirtualMachineImpl.java
! src/jdk.jartool/share/classes/sun/tools/jar/Main.java
! src/jdk.jartool/share/classes/sun/tools/jar/Validator.java
! src/jdk.jartool/share/classes/sun/tools/jar/resources/jar.properties
! src/jdk.jlink/share/classes/jdk/tools/jlink/builder/DefaultImageBuilder.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/ImagePluginStack.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/Platform.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/ResourcePoolManager.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/ReleaseInfoPlugin.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/internal/plugins/SystemModulesPlugin.java
! src/jdk.jlink/share/classes/jdk/tools/jlink/plugin/ResourcePoolModule.java
! src/jdk.jlink/share/classes/jdk/tools/jmod/JmodTask.java
! src/jdk.jlink/share/classes/jdk/tools/jmod/resources/jmod.properties
! test/com/sun/management/HotSpotDiagnosticMXBean/CheckOrigin.java
+ test/com/sun/tools/attach/AttachSelf.java
! test/com/sun/tools/attach/RunnerUtil.java
! test/com/sun/tools/attach/java.policy.allow
+ test/com/sun/tools/attach/modules/Agent.java
+ test/com/sun/tools/attach/modules/Driver.java
+ test/com/sun/tools/attach/modules/m/module-info.java
+ test/com/sun/tools/attach/modules/m/p/Main.java
+ test/java/lang/instrument/executableJAR/Agent.java
+ test/java/lang/instrument/executableJAR/AgentHelper.java
+ test/java/lang/instrument/executableJAR/ExecJarWithAgent.java
+ test/java/lang/instrument/executableJAR/Main.java
! test/java/lang/invoke/DefineClassTest.java
! test/java/lang/module/AutomaticModulesTest.java
! test/java/lang/module/ConfigurationTest.java
! test/java/lang/module/ModuleDescriptorTest.java
+ test/java/lang/module/customfs/ModulesInCustomFileSystem.java
+ test/java/lang/module/customfs/m1/module-info.java
+ test/java/lang/module/customfs/m1/p/Main.java
+ test/java/lang/module/customfs/m2/module-info.java
+ test/java/lang/module/customfs/m2/q/Hello.java
! test/java/nio/file/spi/SetDefaultProvider.java
! test/java/nio/file/spi/TestProvider.java
+ test/java/nio/file/spi/m/module-info.java
+ test/java/nio/file/spi/m/p/Main.java
! test/java/util/logging/TestLoggerWeakRefLeak.java
! test/lib/testlibrary/ModuleTargetHelper.java
! test/sun/management/jmxremote/bootstrap/JvmstatCountersTest.java
! test/tools/jar/mmrjar/Basic.java
! test/tools/jar/modularJar/Basic.java
+ test/tools/jar/multiRelease/whitebox/Driver.java
+ test/tools/jar/multiRelease/whitebox/jdk.jartool/sun/tools/jar/ValidatorComparatorTest.java
! test/tools/jlink/IntegrationTest.java
! test/tools/jlink/JLinkNegativeTest.java
! test/tools/jlink/plugins/SystemModuleDescriptors/SystemModulesTest.java
! test/tools/jlink/plugins/SystemModuleDescriptors/UserModuleTest.java
! test/tools/jlink/plugins/SystemModuleDescriptors/src/m1/p1/Main.java
! test/tools/jlink/plugins/SystemModuleDescriptors/src/m4/p4/Main.java
! test/tools/jmod/JmodTest.java
+ test/tools/launcher/modules/describe/DescribeModuleTest.java
! test/tools/launcher/modules/listmods/ListModsTest.java
- test/tools/launcher/modules/listmods/src/java.transaction/javax/transaction/atomic/Atomic.java
! test/tools/launcher/modules/listmods/src/java.transaction/module-info.java
! test/tools/launcher/modules/patch/systemmodules/PatchSystemModules.java
+ test/tools/launcher/modules/showmoduleresolution/ShowModuleResolutionTest.java
+ test/tools/launcher/modules/validate/ValidateModulesTest.java
! test/tools/pack200/pack200-verifier/src/xmlkit/ClassReader.java
Changeset: ab86e2c522db
Author: alanb
Date: 2017-05-04 09:43 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/ab86e2c522db
Merge
! src/java.base/share/classes/java/lang/ClassLoader.java
! src/java.base/share/classes/java/lang/System.java
! src/java.base/share/classes/java/lang/invoke/MethodHandles.java
! src/java.management/share/classes/java/lang/management/ThreadInfo.java
- test/tools/launcher/modules/listmods/src/java.transaction/javax/transaction/atomic/Atomic.java
Changeset: 88379fba79d3
Author: amlu
Date: 2017-05-04 20:24 +0800
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/88379fba79d3
8023897: Replace/update/rename executeAndCatch in various tests to assertThrows
Reviewed-by: dfuchs, prappo, psandoz, rriggs
! test/java/util/Arrays/ParallelPrefix.java
! test/java/util/Arrays/StreamAndSpliterator.java
! test/java/util/BitSet/stream/BitSetStreamTest.java
! test/java/util/Collections/EmptyNavigableMap.java
! test/java/util/Collections/EmptyNavigableSet.java
! test/java/util/Iterator/PrimitiveIteratorDefaults.java
! test/java/util/Map/Defaults.java
! test/java/util/Random/RandomTest.java
! test/java/util/Spliterator/SpliteratorCollisions.java
! test/java/util/Spliterator/SpliteratorFailFastTest.java
! test/java/util/Spliterator/SpliteratorTraversingAndSplittingTest.java
! test/java/util/stream/bootlib/java.base/java/util/SpliteratorTestHelper.java
Changeset: 1895211a6fe9
Author: lana
Date: 2017-05-04 17:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/1895211a6fe9
Merge
- test/tools/launcher/modules/listmods/src/java.transaction/javax/transaction/atomic/Atomic.java
Changeset: adca794fc8e2
Author: lancea
Date: 2017-05-04 14:07 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/adca794fc8e2
8179634: Add JDBC 4.2 to bullet list in package.html
Reviewed-by: joehw
! src/java.sql/share/classes/java/sql/package.html
Changeset: 9c9b8a48cd4a
Author: shshahma
Date: 2017-04-27 00:08 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/9c9b8a48cd4a
8177721: Improve diagnostics in sun.management.Agent#startAgent()
Reviewed-by: dfuchs, dholmes, poonam
! src/jdk.management.agent/share/classes/jdk/internal/agent/Agent.java
Changeset: d6b6ea1e292e
Author: poonam
Date: 2017-05-04 19:25 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/d6b6ea1e292e
Merge
Changeset: ae8ee67505d7
Author: mchung
Date: 2017-05-04 15:39 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/ae8ee67505d7
8179645: java.util.jar.Packer.newPacker and newUnpacker fails when running with security manager
Reviewed-by: alanb, ksrini
! src/java.base/share/classes/com/sun/java/util/jar/pack/PropMap.java
+ test/java/util/jar/Pack200/SecurityTest.java
Changeset: 58675e237ef1
Author: serb
Date: 2017-04-24 15:15 +0300
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/58675e237ef1
8178971: Uncommon formatting and typos in java.desktop module
Reviewed-by: prr, ssadetsky
! src/java.desktop/share/classes/java/awt/image/AbstractMultiResolutionImage.java
! src/java.desktop/share/classes/java/awt/package-info.java
! src/java.desktop/share/classes/javax/sound/midi/MetaMessage.java
! src/java.desktop/share/classes/javax/sound/midi/Sequence.java
! src/java.desktop/share/classes/javax/sound/midi/Sequencer.java
! src/java.desktop/share/classes/javax/sound/midi/ShortMessage.java
! src/java.desktop/share/classes/javax/sound/midi/SysexMessage.java
! src/java.desktop/share/classes/javax/sound/sampled/BooleanControl.java
! src/java.desktop/share/classes/javax/sound/sampled/FloatControl.java
! src/java.desktop/share/classes/javax/sound/sampled/LineEvent.java
! src/java.desktop/share/classes/javax/swing/JComponent.java
! src/java.desktop/share/classes/module-info.java
Changeset: 601479d462cb
Author: ssadetsky
Date: 2017-04-24 07:10 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/601479d462cb
8178905: Undecorated frame is not painted on OEL7(Gnome3).
Reviewed-by: prr, serb
! src/java.desktop/unix/classes/sun/awt/X11/XContentWindow.java
Changeset: 7cb3dc0422ea
Author: prr
Date: 2017-04-24 10:49 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/7cb3dc0422ea
Merge
- src/java.management/share/classes/mgmt-overview.html
- src/java.security.jgss/share/classes/jgss-overview.html
- src/jdk.jdi/share/classes/jdi-overview.html
- src/jdk.security.auth/share/classes/jaas-overview.html
- test/java/time/TEST.properties
- test/java/util/BitSet/BitSetStreamTest.java
Changeset: caf8ee16cea8
Author: ssadetsky
Date: 2017-04-27 08:27 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/caf8ee16cea8
8179027: JComboBox too small under Windows LAF
Reviewed-by: prr, alexsch
! src/java.desktop/share/classes/com/sun/java/swing/plaf/windows/WindowsComboBoxUI.java
+ test/javax/swing/JComboBox/WindowsComboBoxSize/WindowsComboBoxSizeTest.java
Changeset: 120831a5da6f
Author: ssadetsky
Date: 2017-04-27 08:49 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/120831a5da6f
8140237: [TEST_BUG]Test javax/swing/plaf/nimbus/8041642/bug8041642.java fails for OEL 7
Reviewed-by: alexsch
! test/javax/swing/plaf/nimbus/8041642/bug8041642.java
Changeset: 825903c4e875
Author: prr
Date: 2017-04-27 14:07 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/825903c4e875
8179365: JAWT (AWT Native Interface) specification needs to be updated for JDK 9
Reviewed-by: serb, ssadetsky
! src/java.desktop/macosx/native/include/jawt_md.h
! src/java.desktop/share/classes/java/awt/package-info.java
! src/java.desktop/share/native/include/jawt.h
+ src/java.desktop/share/specs/AWT_Native_Interface.html
Changeset: 7f76295dcd55
Author: prr
Date: 2017-04-28 13:52 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/7f76295dcd55
Merge
Changeset: 3d3ee4e0f595
Author: ssadetsky
Date: 2017-05-01 10:24 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/3d3ee4e0f595
8160530: [TEST-BUG] Consistent failure of java/awt/dnd/MissingEventsOnModalDialog/MissingEventsOnModalDialogTest.java
Reviewed-by: yan, prr, serb
! test/java/awt/dnd/MissingEventsOnModalDialog/MissingEventsOnModalDialogTest.java
Changeset: 30a722cc06ec
Author: prr
Date: 2017-05-02 11:24 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/30a722cc06ec
Merge
- test/demo/jvmti/Context.java
- test/demo/jvmti/DemoRun.java
- test/demo/jvmti/HeapUser.java
- test/demo/jvmti/Hello.java
- test/demo/jvmti/compiledMethodLoad/CompiledMethodLoadTest.java
- test/demo/jvmti/gctest/BigHello.java
- test/demo/jvmti/gctest/Gctest.java
- test/demo/jvmti/heapTracker/HeapTrackerTest.java
- test/demo/jvmti/heapViewer/HeapViewerTest.java
- test/demo/jvmti/minst/MinstExample.java
- test/demo/jvmti/minst/MinstTest.java
- test/demo/jvmti/versionCheck/FailsWhenJvmtiVersionDiffers.java
- test/demo/jvmti/waiters/WaitersTest.java
Changeset: 556f1721939f
Author: ssadetsky
Date: 2017-05-02 12:10 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/556f1721939f
8159902: OGL surfaces are not HiDPI compatible on Linux/Solaris
Reviewed-by: prr, serb
! src/java.desktop/unix/classes/sun/java2d/opengl/GLXSurfaceData.java
! test/javax/swing/JInternalFrame/8069348/bug8069348.java
Changeset: e07effddeebf
Author: ssadetsky
Date: 2017-05-02 13:26 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e07effddeebf
8178984: Unnecessary angle brackets in the Line2D::intersectsLine() javadoc.
Reviewed-by: prr, jdv
! src/java.desktop/share/classes/java/awt/geom/Line2D.java
Changeset: 4ad40491266b
Author: prr
Date: 2017-05-05 08:34 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/4ad40491266b
Merge
- test/tools/launcher/modules/listmods/src/java.transaction/javax/transaction/atomic/Atomic.java
Changeset: afac00be2a93
Author: shurailine
Date: 2017-05-05 14:59 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/afac00be2a93
8179852: Remove references to demo tests from TEST.groups
Reviewed-by: bpb
! test/TEST.groups
Changeset: 207f458f39cb
Author: serb
Date: 2017-05-06 14:58 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/207f458f39cb
8179596: Update java.desktop to be HTML-5 friendly
Reviewed-by: prr, amenkov
! src/java.desktop/share/classes/java/awt/AlphaComposite.java
! src/java.desktop/share/classes/java/awt/Graphics2D.java
! src/java.desktop/share/classes/java/awt/GridBagLayout.java
! src/java.desktop/share/classes/java/awt/GridLayout.java
! src/java.desktop/share/classes/java/awt/LinearGradientPaint.java
! src/java.desktop/share/classes/java/awt/MenuBar.java
! src/java.desktop/share/classes/java/awt/RadialGradientPaint.java
! src/java.desktop/share/classes/java/awt/Rectangle.java
! src/java.desktop/share/classes/java/awt/Shape.java
! src/java.desktop/share/classes/java/awt/dnd/DragSourceContext.java
! src/java.desktop/share/classes/java/awt/font/TextAttribute.java
! src/java.desktop/share/classes/java/awt/geom/AffineTransform.java
! src/java.desktop/share/classes/java/awt/geom/Arc2D.java
! src/java.desktop/share/classes/java/awt/geom/Path2D.java
! src/java.desktop/share/classes/java/awt/im/spi/package-info.java
! src/java.desktop/share/classes/java/awt/image/DataBufferByte.java
! src/java.desktop/share/classes/java/awt/image/DataBufferDouble.java
! src/java.desktop/share/classes/java/awt/image/DataBufferFloat.java
! src/java.desktop/share/classes/java/awt/image/DataBufferInt.java
! src/java.desktop/share/classes/java/awt/image/DataBufferShort.java
! src/java.desktop/share/classes/java/awt/image/DataBufferUShort.java
! src/java.desktop/share/classes/java/awt/image/IndexColorModel.java
! src/java.desktop/share/classes/javax/accessibility/package-info.java
! src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFDirectory.java
! src/java.desktop/share/classes/javax/imageio/plugins/tiff/TIFFField.java
! src/java.desktop/share/classes/javax/print/MimeType.java
! src/java.desktop/share/classes/javax/print/attribute/standard/Finishings.java
! src/java.desktop/share/classes/javax/print/attribute/standard/MultipleDocumentHandling.java
! src/java.desktop/share/classes/javax/sound/midi/MidiMessage.java
! src/java.desktop/share/classes/javax/sound/midi/VoiceStatus.java
! src/java.desktop/share/classes/javax/sound/sampled/FloatControl.java
! src/java.desktop/share/classes/javax/sound/sampled/SourceDataLine.java
! src/java.desktop/share/classes/javax/sound/sampled/TargetDataLine.java
! src/java.desktop/share/classes/javax/swing/Action.java
! src/java.desktop/share/classes/javax/swing/BoxLayout.java
! src/java.desktop/share/classes/javax/swing/DefaultListCellRenderer.java
! src/java.desktop/share/classes/javax/swing/JLayeredPane.java
! src/java.desktop/share/classes/javax/swing/JList.java
! src/java.desktop/share/classes/javax/swing/JOptionPane.java
! src/java.desktop/share/classes/javax/swing/JRootPane.java
! src/java.desktop/share/classes/javax/swing/JScrollPane.java
! src/java.desktop/share/classes/javax/swing/JTree.java
! src/java.desktop/share/classes/javax/swing/LookAndFeel.java
! src/java.desktop/share/classes/javax/swing/SizeSequence.java
! src/java.desktop/share/classes/javax/swing/plaf/basic/BasicTextUI.java
! src/java.desktop/share/classes/javax/swing/plaf/metal/DefaultMetalTheme.java
! src/java.desktop/share/classes/javax/swing/plaf/metal/MetalLookAndFeel.java
! src/java.desktop/share/classes/javax/swing/table/DefaultTableCellRenderer.java
! src/java.desktop/share/classes/javax/swing/text/html/HTMLDocument.java
! src/java.desktop/share/classes/javax/swing/text/html/HTMLEditorKit.java
! src/java.desktop/share/classes/javax/swing/tree/DefaultTreeCellRenderer.java
! src/java.desktop/share/classes/javax/swing/undo/UndoManager.java
Changeset: ca5d05dc27dd
Author: xiaofeya
Date: 2017-05-07 19:01 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/ca5d05dc27dd
8178912: Remove sample/chatserver/ChatTest.java and sample/mergesort/MergeSortTest.java
Reviewed-by: psandoz
! test/ProblemList.txt
! test/TEST.groups
- test/sample/TEST.properties
- test/sample/chatserver/ChatTest.java
- test/sample/mergesort/MergeSortTest.java
Changeset: e81bd83cd22a
Author: mchung
Date: 2017-05-08 21:21 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e81bd83cd22a
8020801: Apply the restriction of invoking MethodHandles.lookup to j.l.r.Method.invoke
Reviewed-by: plevart, psandoz
! src/java.base/share/classes/java/lang/invoke/MethodHandles.java
! src/java.base/share/classes/jdk/internal/reflect/ReflectionFactory.java
+ test/java/lang/invoke/lookup/ReflectiveLookupTest.java
+ test/java/lang/invoke/lookup/java.base/java/lang/LookupTest.java
Changeset: d17577d4839b
Author: ihse
Date: 2017-05-09 12:57 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/d17577d4839b
8179889: Fix typographic errors in copyright headers
Reviewed-by: erikj, dholmes
! src/java.base/macosx/native/libnet/DefaultProxySelector.c
! src/java.base/share/classes/com/sun/crypto/provider/GCTR.java
! src/java.base/share/classes/sun/security/util/ConstraintsParameters.java
! src/java.base/share/native/libjimage/endian.hpp
! src/java.base/share/native/libjimage/imageDecompressor.cpp
! src/java.base/share/native/libjimage/imageDecompressor.hpp
! src/java.base/share/native/libjimage/imageFile.hpp
! src/java.base/share/native/libjimage/inttypes.hpp
! src/java.base/share/native/libjimage/jimage.hpp
! src/java.base/share/native/libjimage/osSupport.hpp
! src/java.desktop/share/classes/sun/swing/LightweightContent.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/WindowUpdateSender.java
! test/com/apple/laf/ScreenMenu/ScreenMenuMemoryLeakTest.java
! test/com/sun/crypto/provider/Cipher/AES/TestCICOWithGCMAndAAD.java
! test/com/sun/jdi/ArrayLengthDumpTest.sh
! test/com/sun/jdi/BreakpointWithFullGC.sh
! test/com/sun/jdi/CatchAllTest.sh
! test/com/sun/jdi/CatchCaughtTest.sh
! test/com/sun/jdi/CatchPatternTest.sh
! test/com/sun/jdi/CommandCommentDelimiter.sh
! test/com/sun/jdi/DeferredStepTest.sh
! test/com/sun/jdi/DeoptimizeWalk.sh
! test/com/sun/jdi/EvalArgs.sh
! test/com/sun/jdi/GetLocalVariables3Test.sh
! test/com/sun/jdi/GetLocalVariables4Test.sh
! test/com/sun/jdi/JdbExprTest.sh
! test/com/sun/jdi/JdbLockTest.sh
! test/com/sun/jdi/MixedSuspendTest.sh
! test/com/sun/jdi/NullLocalVariable.sh
! test/com/sun/jdi/NullThreadGroupNameTest.java
! test/com/sun/jdi/RedefineChangeClassOrder.sh
! test/com/sun/jdi/RedefineException.sh
! test/com/sun/jdi/RedefineImplementor.sh
! test/com/sun/jdi/RedefineIntConstantToLong.sh
! test/com/sun/management/GarbageCollectorMXBean/LastGCInfo.java
! test/com/sun/net/httpserver/SimpleHttpServerTest.java
! test/com/sun/net/httpserver/StopNoStartTest.java
! test/com/sun/net/httpserver/bugs/B6433018.java
! test/com/sun/tools/attach/PermissionTest.java
! test/com/sun/tools/attach/ProviderTest.java
! test/com/sun/tools/attach/StartManagementAgent.java
! test/com/sun/tools/attach/TempDirTest.java
! test/java/awt/Choice/UnfocusableToplevel/UnfocusableToplevel.java
! test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.html
! test/java/awt/Clipboard/HTMLTransferTest/HTMLTransferTest.java
! test/java/awt/Dialog/NestedDialogs/Modal/NestedModalDialogTest.java
! test/java/awt/Dialog/NestedDialogs/Modeless/NestedModelessDialogTest.java
! test/java/awt/EventQueue/MainAppContext/MainAppContext.java
! test/java/awt/FileDialog/RegexpFilterTest/RegexpFilterTest.html
! test/java/awt/Focus/WindowIsFocusableAccessByThreadsTest/WindowIsFocusableAccessByThreadsTest.java
! test/java/awt/Frame/FrameResize/ShowChildWhileResizingTest.java
! test/java/awt/FullScreen/AltTabCrashTest/AltTabCrashTest.java
! test/java/awt/LightweightComponent/LightweightEventTest/LightweightEventTest.java
! test/java/awt/Mixing/AWT_Mixing/GlassPaneOverlappingTestBase.java
! test/java/awt/Mixing/AWT_Mixing/SimpleOverlappingTestBase.java
! test/java/awt/Mouse/MaximizedFrameTest/MaximizedFrameTest.java
! test/java/awt/MouseInfo/JContainerMousePositionTest.java
! test/java/awt/Toolkit/AutoShutdown/EventQueuePush/EventQueuePushAutoshutdown.sh
! test/java/awt/Toolkit/ToolkitPropertyTest/bug7129133.java
! test/java/awt/Window/FindOwner/FindOwnerTest.java
! test/java/awt/dnd/DisposeFrameOnDragCrash/DisposeFrameOnDragTest.java
! test/java/awt/event/MouseEvent/DisabledComponents/DisabledComponentsTest.java
! test/java/awt/font/TextLayout/ArabicDiacriticTest.java
! test/java/awt/font/TextLayout/MissingCodePointLayoutTest.java
! test/java/io/RandomAccessFile/FileLengthTest.java
! test/java/lang/instrument/RedefineBigClass.sh
! test/java/lang/invoke/VarHandles/X-VarHandleTestMethodType.java.template
! test/java/net/httpclient/ProxyAuthTest.java
! test/java/nio/file/WatchService/DeleteInterference.java
! test/java/nio/file/attribute/BasicFileAttributeView/UnixSocketFile.java
! test/java/security/AccessController/LimitedDoPrivilegedWithNullPerms.java
! test/java/security/AccessController/LimitedDoPrivilegedWithThread.java
! test/java/time/test/java/time/temporal/TestIsoWeekFields.java
! test/java/util/ResourceBundle/getBaseBundleName/resources/PropertyBundle.properties
! test/java/util/Spliterator/SpliteratorLateBindingFailFastHelper.java
! test/java/util/logging/Logger/logrb/resources/PropertyBundle.properties
! test/java/util/logging/Logger/setResourceBundle/resources/PropertyBundle.properties
! test/javax/management/loading/LibraryLoader/LibraryLoaderTest.java
! test/javax/management/monitor/ThreadPoolAccTest.java
! test/javax/net/ssl/TLS/CipherTestUtils.java
! test/javax/net/ssl/TLS/JSSEClient.java
! test/javax/net/ssl/TLS/JSSEServer.java
! test/javax/net/ssl/TLS/TestJSSE.java
! test/javax/net/ssl/TLS/TestJSSEClientDefaultProtocol.java
! test/javax/net/ssl/TLS/TestJSSEClientProtocol.java
! test/javax/net/ssl/TLS/TestJSSENoCommonProtocols.java
! test/javax/net/ssl/TLS/TestJSSEServerProtocol.java
! test/javax/print/attribute/TestUnsupportedResolution.java
! test/javax/security/auth/Subject/Generic.java
! test/javax/security/auth/login/JAASConfigSyntaxCheck/JAASConfigSyntaxTest.java
! test/javax/security/auth/login/JAASConfigSyntaxCheck/SampleLoginModule.java
! test/javax/swing/JComboBox/6632953/bug6632953.java
! test/javax/swing/JFileChooser/4150029/bug4150029.html
! test/javax/swing/JInternalFrame/Test6325652.java
! test/javax/swing/JMenu/8072900/WrongSelectionOnMouseOver.java
! test/javax/swing/JPopupMenu/6694823/bug6694823.java
! test/javax/swing/plaf/synth/SynthButtonUI/6276188/bug6276188.java
! test/javax/swing/text/html/parser/Parser/8028616/bug8028616.java
! test/sun/awt/dnd/8024061/bug8024061.java
! test/sun/net/idn/NFS4StringPrep.java
! test/sun/security/krb5/auto/BogusKDC.java
! test/sun/security/krb5/auto/NoAddresses.java
! test/sun/security/krb5/auto/Renew.java
! test/sun/security/krb5/auto/Renewal.java
! test/sun/security/krb5/auto/SSLwithPerms.java
! test/sun/security/krb5/canonicalize/Test.java
! test/sun/security/mscapi/CastError.java
! test/sun/security/mscapi/PrngSlow.java
! test/sun/security/mscapi/PublicKeyInterop.sh
! test/sun/security/pkcs12/StoreSecretKeyTest.java
! test/sun/security/provider/SeedGenerator/SeedGeneratorChoice.java
! test/sun/security/tools/jarsigner/nameclash.sh
! test/sun/security/x509/URICertStore/SocksProxy.java
! test/tools/pack200/MultiRelease.java
Changeset: b8207b069bc2
Author: ihse
Date: 2017-05-09 13:19 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/b8207b069bc2
8179692: Move RMI spec to specs directory
Reviewed-by: erikj
! src/java.rmi/share/classes/java/rmi/Remote.java
! src/java.rmi/share/classes/java/rmi/server/UnicastRemoteObject.java
Changeset: e96547bd31cc
Author: bpb
Date: 2017-05-09 07:40 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e96547bd31cc
8179662: OutputStreamWriter javadocs states that you can set the buffer size but there is no way to do that
Summary: Change specification verbiage to match longstanding behavior
Reviewed-by: briangoetz, chegar, lancea, rriggs
! src/java.base/share/classes/java/io/OutputStreamWriter.java
Changeset: 177436a54ca1
Author: mchung
Date: 2017-05-09 10:34 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/177436a54ca1
8179950: Custom system class loader using Enum.valueOf in its initialization triggers java.lang.InternalError
Reviewed-by: alanb, dfuchs, lancea
! src/java.base/share/classes/jdk/internal/reflect/Reflection.java
+ test/java/lang/ClassLoader/CustomSystemLoader/CustomLoader.java
+ test/java/lang/ClassLoader/CustomSystemLoader/InitSystemLoaderTest.java
Changeset: 30fc0ab51f39
Author: lana
Date: 2017-05-11 16:26 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/30fc0ab51f39
Added tag jdk-9+169 for changeset 177436a54ca1
! .hgtags
Changeset: 3e92641a337d
Author: psandoz
Date: 2017-05-09 15:04 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/3e92641a337d
8177153: LambdaMetafactory has default constructor
Reviewed-by: psandoz
Contributed-by: ron.pressler at oracle.com
! src/java.base/share/classes/java/lang/invoke/LambdaMetafactory.java
Changeset: 2c7616c8b7d8
Author: ihse
Date: 2017-05-10 09:02 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/2c7616c8b7d8
8178278: Move Standard Algorithm Names document to specs directory
Reviewed-by: erikj, wetmore, mullan
! src/java.base/share/classes/java/security/AlgorithmParameterGenerator.java
! src/java.base/share/classes/java/security/AlgorithmParameters.java
! src/java.base/share/classes/java/security/DrbgParameters.java
! src/java.base/share/classes/java/security/KeyFactory.java
! src/java.base/share/classes/java/security/KeyPairGenerator.java
! src/java.base/share/classes/java/security/KeyStore.java
! src/java.base/share/classes/java/security/MessageDigest.java
! src/java.base/share/classes/java/security/Policy.java
! src/java.base/share/classes/java/security/SecureRandom.java
! src/java.base/share/classes/java/security/SecureRandomSpi.java
! src/java.base/share/classes/java/security/Security.java
! src/java.base/share/classes/java/security/Signature.java
! src/java.base/share/classes/java/security/cert/CertPath.java
! src/java.base/share/classes/java/security/cert/CertPathBuilder.java
! src/java.base/share/classes/java/security/cert/CertPathValidator.java
! src/java.base/share/classes/java/security/cert/CertStore.java
! src/java.base/share/classes/java/security/cert/Certificate.java
! src/java.base/share/classes/java/security/cert/CertificateFactory.java
! src/java.base/share/classes/java/security/cert/CertificateFactorySpi.java
! src/java.base/share/classes/java/security/cert/package-info.java
! src/java.base/share/classes/java/security/package-info.java
! src/java.base/share/classes/java/security/spec/EncodedKeySpec.java
! src/java.base/share/classes/java/security/spec/PKCS8EncodedKeySpec.java
! src/java.base/share/classes/java/security/spec/X509EncodedKeySpec.java
! src/java.base/share/classes/javax/crypto/Cipher.java
! src/java.base/share/classes/javax/crypto/ExemptionMechanism.java
! src/java.base/share/classes/javax/crypto/KeyAgreement.java
! src/java.base/share/classes/javax/crypto/KeyGenerator.java
! src/java.base/share/classes/javax/crypto/Mac.java
! src/java.base/share/classes/javax/crypto/SecretKeyFactory.java
! src/java.base/share/classes/javax/crypto/package-info.java
! src/java.base/share/classes/javax/net/ssl/SSLContext.java
! src/java.base/share/classes/javax/net/ssl/SSLEngine.java
! src/java.base/share/classes/javax/net/ssl/SSLParameters.java
! src/java.base/share/classes/javax/net/ssl/SSLServerSocket.java
! src/java.base/share/classes/javax/net/ssl/SSLServerSocketFactory.java
! src/java.base/share/classes/javax/net/ssl/SSLSocket.java
! src/java.base/share/classes/javax/net/ssl/SSLSocketFactory.java
! src/java.base/share/classes/javax/net/ssl/TrustManagerFactory.java
! src/java.base/share/classes/javax/net/ssl/package-info.java
! src/java.base/share/classes/javax/security/auth/login/Configuration.java
! src/java.base/share/classes/javax/security/auth/login/package-info.java
! src/jdk.jartool/share/classes/jdk/security/jarsigner/JarSigner.java
Changeset: 81ae2abfb49f
Author: prappo
Date: 2017-05-10 12:36 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/81ae2abfb49f
8179021: Latest bugfixes to WebSocket/HPACK from the sandbox repo
Reviewed-by: dfuchs
! src/java.base/share/classes/module-info.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/HttpRequestImpl.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/PlainTunnelingConnection.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/WebSocket.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/hpack/Decoder.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/hpack/HeaderTable.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/BuilderImpl.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/CooperativeHandler.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/Frame.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/FrameConsumer.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/OpeningHandshake.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/OutgoingMessage.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/Receiver.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/StatusCodes.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/Transmitter.java
! src/jdk.incubator.httpclient/share/classes/jdk/incubator/http/internal/websocket/WebSocketImpl.java
! test/java/net/httpclient/whitebox/Driver.java
+ test/java/net/httpclient/whitebox/jdk.incubator.httpclient/jdk/incubator/http/RawChannelTest.java
Changeset: f12c83ece7ab
Author: erikj
Date: 2017-05-10 18:27 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/f12c83ece7ab
8179867: JDK9 b167: demos exist in JDK bundles
Reviewed-by: ihse
! make/CompileDemos.gmk
Changeset: a3af889e7f65
Author: smarks
Date: 2017-05-10 15:59 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/a3af889e7f65
8180128: small errors in String javadoc
Reviewed-by: lancea
! src/java.base/share/classes/java/lang/String.java
Changeset: f895e36ce0e9
Author: msheppar
Date: 2017-05-11 15:05 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/f895e36ce0e9
7155591: test/java/net/MulticastSocket/SetOutgoingIf.java fails on macOS
Reviewed-by: chegar, bpb
! test/java/net/MulticastSocket/SetOutgoingIf.java
Changeset: 4e2a2733855d
Author: bpb
Date: 2017-05-11 07:43 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/4e2a2733855d
8180085: (ch) java/nio/channels/SocketChannel/VectorIO.java: add debug instrumentation
Summary: Add some print statements potentially useful in solving JDK-8177801.
Reviewed-by: alanb
! test/java/nio/channels/SocketChannel/VectorIO.java
Changeset: c17e1662bad1
Author: jjg
Date: 2017-05-11 10:48 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/c17e1662bad1
8179592: Update tables in java.base to be HTML 5-friendly.
Reviewed-by: mchung, darcy, martin
! src/java.base/share/classes/java/io/DataInput.java
! src/java.base/share/classes/java/io/RandomAccessFile.java
! src/java.base/share/classes/java/io/SerializablePermission.java
! src/java.base/share/classes/java/lang/Character.java
! src/java.base/share/classes/java/lang/Class.java
! src/java.base/share/classes/java/lang/Double.java
! src/java.base/share/classes/java/lang/Float.java
! src/java.base/share/classes/java/lang/RuntimePermission.java
! src/java.base/share/classes/java/lang/String.java
! src/java.base/share/classes/java/lang/System.java
! src/java.base/share/classes/java/lang/invoke/LambdaMetafactory.java
! src/java.base/share/classes/java/lang/invoke/MethodHandleInfo.java
! src/java.base/share/classes/java/lang/invoke/MethodHandles.java
! src/java.base/share/classes/java/lang/reflect/AnnotatedElement.java
! src/java.base/share/classes/java/lang/reflect/ReflectPermission.java
! src/java.base/share/classes/java/math/BigDecimal.java
! src/java.base/share/classes/java/math/RoundingMode.java
! src/java.base/share/classes/java/net/Inet4Address.java
! src/java.base/share/classes/java/net/Inet6Address.java
! src/java.base/share/classes/java/net/InetAddress.java
! src/java.base/share/classes/java/net/NetPermission.java
! src/java.base/share/classes/java/net/URI.java
! src/java.base/share/classes/java/net/URLConnection.java
! src/java.base/share/classes/java/net/URLPermission.java
! src/java.base/share/classes/java/nio/channels/AsynchronousChannelGroup.java
! src/java.base/share/classes/java/nio/channels/AsynchronousFileChannel.java
! src/java.base/share/classes/java/nio/channels/AsynchronousServerSocketChannel.java
! src/java.base/share/classes/java/nio/channels/AsynchronousSocketChannel.java
! src/java.base/share/classes/java/nio/channels/DatagramChannel.java
! src/java.base/share/classes/java/nio/channels/FileChannel.java
! src/java.base/share/classes/java/nio/channels/ServerSocketChannel.java
! src/java.base/share/classes/java/nio/channels/SocketChannel.java
! src/java.base/share/classes/java/nio/charset/Charset.java
! src/java.base/share/classes/java/nio/file/FileSystem.java
! src/java.base/share/classes/java/nio/file/Files.java
! src/java.base/share/classes/java/nio/file/LinkPermission.java
! src/java.base/share/classes/java/nio/file/attribute/AclFileAttributeView.java
! src/java.base/share/classes/java/nio/file/attribute/BasicFileAttributeView.java
! src/java.base/share/classes/java/nio/file/attribute/DosFileAttributeView.java
! src/java.base/share/classes/java/nio/file/attribute/PosixFileAttributeView.java
! src/java.base/share/classes/java/nio/file/spi/FileSystemProvider.java
! src/java.base/share/classes/java/security/DrbgParameters.java
! src/java.base/share/classes/java/security/Provider.java
! src/java.base/share/classes/java/security/SecurityPermission.java
! src/java.base/share/classes/java/security/cert/X509Extension.java
! src/java.base/share/classes/java/text/DecimalFormat.java
! src/java.base/share/classes/java/text/MessageFormat.java
! src/java.base/share/classes/java/text/SimpleDateFormat.java
! src/java.base/share/classes/java/time/chrono/HijrahChronology.java
! src/java.base/share/classes/java/time/chrono/IsoEra.java
! src/java.base/share/classes/java/time/chrono/MinguoEra.java
! src/java.base/share/classes/java/time/chrono/ThaiBuddhistEra.java
! src/java.base/share/classes/java/time/format/DateTimeFormatter.java
! src/java.base/share/classes/java/time/temporal/IsoFields.java
! src/java.base/share/classes/java/time/temporal/WeekFields.java
! src/java.base/share/classes/java/util/Deque.java
! src/java.base/share/classes/java/util/Formatter.java
! src/java.base/share/classes/java/util/GregorianCalendar.java
! src/java.base/share/classes/java/util/Locale.java
! src/java.base/share/classes/java/util/Queue.java
! src/java.base/share/classes/java/util/ResourceBundle.java
! src/java.base/share/classes/java/util/concurrent/BlockingDeque.java
! src/java.base/share/classes/java/util/concurrent/BlockingQueue.java
! src/java.base/share/classes/java/util/concurrent/ForkJoinPool.java
! src/java.base/share/classes/java/util/regex/Pattern.java
! src/java.base/share/classes/java/util/spi/CalendarNameProvider.java
! src/java.base/share/classes/java/util/stream/StreamOpFlag.java
! src/java.base/share/classes/javax/net/ssl/SSLPermission.java
Changeset: 5724641773d5
Author: lana
Date: 2017-05-11 18:10 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/5724641773d5
Merge
Changeset: 93594ad5db2a
Author: jjg
Date: 2017-05-11 18:04 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/93594ad5db2a
8180256: Fix HTML 5 issues in java.sql and java.sql.rowset modules
Reviewed-by: lancea
! src/java.sql.rowset/share/classes/javax/sql/rowset/package.html
! src/java.sql.rowset/share/classes/javax/sql/rowset/spi/package.html
! src/java.sql/share/classes/java/sql/SQLPermission.java
! src/java.sql/share/classes/java/sql/Statement.java
Changeset: bb4cdc198dc0
Author: dl
Date: 2017-05-11 19:34 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/bb4cdc198dc0
8179515: Class java.util.concurrent.ThreadLocalRandom fails to Initialize when using SecurityManager
Summary: Break connection to security framework by using VM.getSavedProperty to read the proeprty.
Reviewed-by: dholmes, martin, redestad, psandoz, mchung
! src/java.base/share/classes/java/util/concurrent/ThreadLocalRandom.java
Changeset: 7fb801c87a25
Author: dholmes
Date: 2017-05-12 02:06 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/7fb801c87a25
Merge
Changeset: 0111d77e0170
Author: michaelm
Date: 2017-05-12 17:38 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/0111d77e0170
8180303: Remove technote doc link from ProxySelector/B8035158.java test
Reviewed-by: chegar
! test/java/net/ProxySelector/B8035158.java
Changeset: 9364a094ce56
Author: ksrini
Date: 2017-05-12 09:42 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/9364a094ce56
8179631: Fix Html5 errors in java.management, jdk.management, jdk.jdi and jdk.attach
Reviewed-by: mchung
! src/java.management/share/classes/java/lang/management/ManagementPermission.java
! src/java.management/share/classes/java/lang/management/ThreadInfo.java
! src/java.management/share/classes/javax/management/Descriptor.java
! src/java.management/share/classes/javax/management/MXBean.java
! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanAttributeInfo.java
! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanConstructorInfo.java
! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanInfo.java
! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanNotificationInfo.java
! src/java.management/share/classes/javax/management/modelmbean/ModelMBeanOperationInfo.java
! src/jdk.attach/share/classes/com/sun/tools/attach/AttachPermission.java
! src/jdk.jdi/share/classes/com/sun/jdi/JDIPermission.java
! src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html
! src/jdk.management/share/classes/com/sun/management/DiagnosticCommandMBean.java
! src/jdk.management/share/classes/com/sun/management/GarbageCollectionNotificationInfo.java
! src/jdk.management/share/classes/com/sun/management/GcInfo.java
! src/jdk.management/share/classes/com/sun/management/VMOption.java
Changeset: 1beb24516aa1
Author: bchristi
Date: 2017-05-12 10:11 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/1beb24516aa1
8177328: java/lang/ClassLoader/securityManager/ClassLoaderTest.java times out with -Xcomp
Summary: remove unneeded automatic module tests; refactor into multiple @runs
Reviewed-by: mchung
! test/java/lang/ClassLoader/securityManager/ClassLoaderTest.java
Changeset: fb6138cce508
Author: ksrini
Date: 2017-05-12 10:26 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/fb6138cce508
8179697: Fix Html5 errors in java.naming, java.logging, jdk.httpserver, jdk.net, jdk.sctp
Reviewed-by: dfuchs
! src/java.logging/share/classes/java/util/logging/LogManager.java
! src/java.logging/share/classes/java/util/logging/SimpleFormatter.java
! src/java.naming/share/classes/javax/naming/CompositeName.java
! src/java.naming/share/classes/javax/naming/Context.java
! src/java.naming/share/classes/javax/naming/InitialContext.java
! src/java.naming/share/classes/javax/naming/directory/package.html
! src/java.naming/share/classes/javax/naming/event/package.html
! src/java.naming/share/classes/javax/naming/ldap/package.html
! src/java.naming/share/classes/javax/naming/package.html
! src/java.naming/share/classes/javax/naming/spi/ObjectFactory.java
! src/java.naming/share/classes/javax/naming/spi/package.html
! src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpServer.java
! src/jdk.httpserver/share/classes/com/sun/net/httpserver/HttpsConfigurator.java
! src/jdk.net/share/classes/jdk/net/NetworkPermission.java
! src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpChannel.java
! src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpMultiChannel.java
! src/jdk.sctp/share/classes/com/sun/nio/sctp/SctpServerChannel.java
Changeset: 65e09a42b587
Author: jjg
Date: 2017-04-28 15:41 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/65e09a42b587
8179460: Fix unnecessary uses of {@docRoot} in serviceability APIs
Reviewed-by: mchung
! src/jdk.jconsole/share/classes/com/sun/tools/jconsole/JConsolePlugin.java
! src/jdk.jdi/share/classes/com/sun/jdi/ThreadGroupReference.java
! src/jdk.management/share/classes/com/sun/management/DiagnosticCommandMBean.java
! src/jdk.management/share/classes/com/sun/management/package-info.java
Changeset: 29e8713fdd03
Author: jjg
Date: 2017-04-28 15:43 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/29e8713fdd03
Merge
Changeset: e2b414957632
Author: jjg
Date: 2017-05-12 10:43 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e2b414957632
Merge
! src/jdk.management/share/classes/com/sun/management/DiagnosticCommandMBean.java
- test/demo/jvmti/Context.java
- test/demo/jvmti/DemoRun.java
- test/demo/jvmti/HeapUser.java
- test/demo/jvmti/Hello.java
- test/demo/jvmti/compiledMethodLoad/CompiledMethodLoadTest.java
- test/demo/jvmti/gctest/BigHello.java
- test/demo/jvmti/gctest/Gctest.java
- test/demo/jvmti/heapTracker/HeapTrackerTest.java
- test/demo/jvmti/heapViewer/HeapViewerTest.java
- test/demo/jvmti/minst/MinstExample.java
- test/demo/jvmti/minst/MinstTest.java
- test/demo/jvmti/versionCheck/FailsWhenJvmtiVersionDiffers.java
- test/demo/jvmti/waiters/WaitersTest.java
- test/sample/TEST.properties
- test/sample/chatserver/ChatTest.java
- test/sample/mergesort/MergeSortTest.java
- test/tools/launcher/modules/listmods/src/java.transaction/javax/transaction/atomic/Atomic.java
Changeset: e8ee0b0489eb
Author: dfuchs
Date: 2017-05-12 19:06 +0100
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/e8ee0b0489eb
8180176: Broken javadoc links in java.logging and java.naming
Summary: Replace relative hrefs with {@extLink } taglets.
Reviewed-by: chegar, mchung, vtewari
! src/java.logging/share/classes/java/util/logging/package.html
! src/java.naming/share/classes/javax/naming/directory/package.html
! src/java.naming/share/classes/javax/naming/event/package.html
! src/java.naming/share/classes/javax/naming/ldap/package.html
! src/java.naming/share/classes/javax/naming/package.html
! src/java.naming/share/classes/javax/naming/spi/package.html
Changeset: 002321560796
Author: lancea
Date: 2017-05-12 14:35 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/002321560796
8180309: Minor update to javax.sql.rowset package.html
Reviewed-by: mchung
! src/java.sql.rowset/share/classes/javax/sql/rowset/package.html
Changeset: a046521803b2
Author: rriggs
Date: 2017-05-12 15:15 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/a046521803b2
8180082: Broken javadoc links
Reviewed-by: mchung, bpb, chegar, ihse
! src/java.base/share/classes/java/io/ObjectInputStream.java
! src/java.base/share/classes/java/io/ObjectOutputStream.java
! src/java.base/share/classes/java/io/ObjectStreamClass.java
! src/java.base/share/classes/java/io/package-info.java
! src/java.base/share/classes/java/lang/CharSequence.java
! src/java.base/share/classes/java/lang/ModuleLayer.java
! src/java.base/share/classes/java/lang/String.java
! src/java.base/share/classes/java/security/Key.java
! src/java.base/share/classes/java/security/KeyRep.java
! src/java.base/share/specs/serialization/output.md
! src/java.management/share/classes/java/lang/management/package.html
! src/jdk.management/share/classes/com/sun/management/package-info.java
Changeset: 9fc68c99204d
Author: mchung
Date: 2017-05-12 13:29 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/9fc68c99204d
8180208: Provide a new docs bundle page
Reviewed-by: ihse, jjg
! make/CompileModuleTools.gmk
! make/CompileTools.gmk
! make/ModuleTools.gmk
+ make/src/classes/build/tools/docs/GenDocsBundlePage.java
+ make/src/classes/build/tools/docs/docs-bundle-page.html
+ make/src/classes/build/tools/docs/docs-module-groups.properties
Changeset: c5b0465f06d0
Author: psandoz
Date: 2017-05-12 13:43 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/c5b0465f06d0
8180075: Javadoc of MethodHandles.Lookup::bind should note the difference from MethodHandle::bindTo
Reviewed-by: psandoz
Contributed-by: ron.pressler at oracle.com
! src/java.base/share/classes/java/lang/invoke/MethodHandles.java
Changeset: 661765f8b131
Author: smarks
Date: 2017-05-12 14:52 -0700
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/661765f8b131
8180137: fix broken link in java.lang.Iterable
Reviewed-by: rriggs
! src/java.base/share/classes/java/lang/Iterable.java
Changeset: ef9954f6896b
Author: rriggs
Date: 2017-05-16 09:42 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/ef9954f6896b
8180319: Update Serialization spec to omit obsolete serialver -show and change history
Reviewed-by: chegar
- src/java.base/share/specs/serialization/changelog.md
! src/java.base/share/specs/serialization/class.md
- src/java.base/share/specs/serialization/images/class.gif
! src/java.base/share/specs/serialization/index.md
! src/java.base/share/specs/serialization/security.md
! src/java.base/share/specs/serialization/serial-arch.md
Changeset: 1b3ea9753746
Author: lana
Date: 2017-05-18 14:54 +0000
URL: http://hg.openjdk.java.net/shenandoah/jdk9/jdk/rev/1b3ea9753746
Added tag jdk-9+170 for changeset ef9954f6896b
! .hgtags
From shade at redhat.com Mon May 22 08:36:35 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 22 May 2017 10:36:35 +0200
Subject: RFR: Trim down native GC footprint
Message-ID:
Hi,
I have reviewed Shenandoah memory footprint with NMT, and suggest we do these
things:
a) Avoid instantiating jvmstat counters when sampling is disabled;
b) Avoid creating matrix when UseShenandoahMatrix is disabled;
c) Avoid creating partialGC task queues when policy does not enable partial gc;
d) Avoid conservative heap alignment, but instead poll the actual one -- thus
bitmaps are more compact for small heaps.
All implemented here:
http://cr.openjdk.java.net/~shade/shenandoah/footprint-1/webrev.01/
Before:
- GC (reserved=17454KB, committed=17454KB)
(malloc=16430KB #257)
(mmap: reserved=1024KB, committed=1024KB)
After:
- GC (reserved=8742KB, committed=8742KB)
(malloc=8230KB #231)
(mmap: reserved=512KB, committed=512KB)
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From rkennke at redhat.com Mon May 22 09:22:02 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 22 May 2017 11:22:02 +0200
Subject: RFR: Cherry-pick/synchronize JDK-8180175 and JDK-8180599"
Message-ID:
I've upstreamed the fast synchronizer root scanning code (i.e. scan only
thread-local monitor lists). It turned out to introduce a bug where we
could miss monitors on thread termination, and also moved code in
different places. This change synchronizes the corresponding code with
what I upstreamed.
http://cr.openjdk.java.net/~rkennke/fastsync/webrev.00/
Testing: hotspot_gc_shenandoah
Ok?
From rkennke at redhat.com Mon May 22 09:22:52 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 22 May 2017 11:22:52 +0200
Subject: RFR: Trim down native GC footprint
In-Reply-To:
References:
Message-ID: <1ebfcccb-f57f-ec1c-d9ee-b428b280f875@redhat.com>
Am 22.05.2017 um 10:36 schrieb Aleksey Shipilev:
> Hi,
>
> I have reviewed Shenandoah memory footprint with NMT, and suggest we do these
> things:
>
> a) Avoid instantiating jvmstat counters when sampling is disabled;
> b) Avoid creating matrix when UseShenandoahMatrix is disabled;
> c) Avoid creating partialGC task queues when policy does not enable partial gc;
> d) Avoid conservative heap alignment, but instead poll the actual one -- thus
> bitmaps are more compact for small heaps.
>
> All implemented here:
> http://cr.openjdk.java.net/~shade/shenandoah/footprint-1/webrev.01/
>
> Before:
>
> - GC (reserved=17454KB, committed=17454KB)
> (malloc=16430KB #257)
> (mmap: reserved=1024KB, committed=1024KB)
>
> After:
>
> - GC (reserved=8742KB, committed=8742KB)
> (malloc=8230KB #231)
> (mmap: reserved=512KB, committed=512KB)
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
Very cool! Go!
Roman
From ashipile at redhat.com Mon May 22 09:25:08 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 22 May 2017 09:25:08 +0000
Subject: hg: shenandoah/jdk9/hotspot: Trim down native GC footprint
Message-ID: <201705220925.v4M9P83P001664@aojmv0008.oracle.com>
Changeset: d64a15958946
Author: shade
Date: 2017-05-22 10:56 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/d64a15958946
Trim down native GC footprint
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegionCounters.cpp
From shade at redhat.com Mon May 22 09:25:27 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 22 May 2017 11:25:27 +0200
Subject: RFR: Cherry-pick/synchronize JDK-8180175 and JDK-8180599"
In-Reply-To:
References:
Message-ID: <6833d4bb-0a58-cea6-11dc-718494c05606@redhat.com>
On 05/22/2017 11:22 AM, Roman Kennke wrote:
> I've upstreamed the fast synchronizer root scanning code (i.e. scan only
> thread-local monitor lists). It turned out to introduce a bug where we
> could miss monitors on thread termination, and also moved code in
> different places. This change synchronizes the corresponding code with
> what I upstreamed.
>
> http://cr.openjdk.java.net/~rkennke/fastsync/webrev.00/
>
>
> Testing: hotspot_gc_shenandoah
>
> Ok?
OK.
8u also needs a syncup?
-Aleksey
From roman at kennke.org Mon May 22 09:35:58 2017
From: roman at kennke.org (roman at kennke.org)
Date: Mon, 22 May 2017 09:35:58 +0000
Subject: hg: shenandoah/jdk9/hotspot: Cherry-pick/synchronize JDK-8180175 and
JDK-8180599
Message-ID: <201705220935.v4M9Zwwj005183@aojmv0008.oracle.com>
Changeset: eca62a5498ce
Author: rkennke
Date: 2017-05-22 11:32 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/eca62a5498ce
Cherry-pick/synchronize JDK-8180175 and JDK-8180599
! src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
! src/share/vm/runtime/thread.cpp
From shade at redhat.com Mon May 22 09:41:48 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 22 May 2017 11:41:48 +0200
Subject: RFR: mmap connection matrix
Message-ID: <6c471329-f0a9-ebff-c4b2-35133d0e50b0@redhat.com>
Hi,
Currently the connection matrix is allocated in C heap. We can make it
consistent with marking bitmaps by mmap-ing the matrix as well:
http://cr.openjdk.java.net/~shade/shenandoah/matrix-mmap/webrev.01/
Testing: hotspot_gc_shenandoah
-Aleksey
From rkennke at redhat.com Mon May 22 10:11:05 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 22 May 2017 12:11:05 +0200
Subject: RFR: mmap connection matrix
In-Reply-To: <6c471329-f0a9-ebff-c4b2-35133d0e50b0@redhat.com>
References: <6c471329-f0a9-ebff-c4b2-35133d0e50b0@redhat.com>
Message-ID:
Am 22.05.2017 um 11:41 schrieb Aleksey Shipilev:
> Hi,
>
> Currently the connection matrix is allocated in C heap. We can make it
> consistent with marking bitmaps by mmap-ing the matrix as well:
> http://cr.openjdk.java.net/~shade/shenandoah/matrix-mmap/webrev.01/
>
> Testing: hotspot_gc_shenandoah
>
> -Aleksey
>
It seems ugly that the allocation of the matrix is outside the
ConnectionMatrix class. ShenandoahHeap now needs knowledge about
internals of ConnectionMatrix.
Roman
From shade at redhat.com Mon May 22 10:19:42 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 22 May 2017 12:19:42 +0200
Subject: RFR: mmap connection matrix
In-Reply-To:
References: <6c471329-f0a9-ebff-c4b2-35133d0e50b0@redhat.com>
Message-ID:
On 05/22/2017 12:11 PM, Roman Kennke wrote:
> Am 22.05.2017 um 11:41 schrieb Aleksey Shipilev:
>> Hi,
>>
>> Currently the connection matrix is allocated in C heap. We can make it
>> consistent with marking bitmaps by mmap-ing the matrix as well:
>> http://cr.openjdk.java.net/~shade/shenandoah/matrix-mmap/webrev.01/
>>
>> Testing: hotspot_gc_shenandoah
>>
>> -Aleksey
>>
> It seems ugly that the allocation of the matrix is outside the
> ConnectionMatrix class. ShenandoahHeap now needs knowledge about
> internals of ConnectionMatrix.
There is already a fair amount of cohesion between ShMatrix and ShHeap. This
change makes ShMatrix the "view" over naked bitmap allocated in ShHeap.
Consider the upside: matrix can now be allocated with proper page sizes and
alignment.
-Aleksey
From rkennke at redhat.com Mon May 22 10:45:40 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 22 May 2017 12:45:40 +0200
Subject: RFR: mmap connection matrix
In-Reply-To:
References: <6c471329-f0a9-ebff-c4b2-35133d0e50b0@redhat.com>
Message-ID: <4d4ba00a-896a-5bef-0d37-c57401b3e5a2@redhat.com>
Am 22.05.2017 um 12:19 schrieb Aleksey Shipilev:
> On 05/22/2017 12:11 PM, Roman Kennke wrote:
>> Am 22.05.2017 um 11:41 schrieb Aleksey Shipilev:
>>> Hi,
>>>
>>> Currently the connection matrix is allocated in C heap. We can make it
>>> consistent with marking bitmaps by mmap-ing the matrix as well:
>>> http://cr.openjdk.java.net/~shade/shenandoah/matrix-mmap/webrev.01/
>>>
>>> Testing: hotspot_gc_shenandoah
>>>
>>> -Aleksey
>>>
>> It seems ugly that the allocation of the matrix is outside the
>> ConnectionMatrix class. ShenandoahHeap now needs knowledge about
>> internals of ConnectionMatrix.
> There is already a fair amount of cohesion between ShMatrix and ShHeap. This
> change makes ShMatrix the "view" over naked bitmap allocated in ShHeap.
>
> Consider the upside: matrix can now be allocated with proper page sizes and
> alignment.
Why not put that part here:
+ ReservedSpace matrix_bitmap(_max_regions * _max_regions, page_size);
+ os::commit_memory_or_exit(matrix_bitmap.base(), matrix_bitmap.size(),
false,
+ "couldn't allocate matrix bitmap");
+ MemTracker::record_virtual_memory_type(matrix_bitmap.base(), mtGC);
inside ConnectionMatrix constructor?
Roman
From shade at redhat.com Mon May 22 11:00:58 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 22 May 2017 13:00:58 +0200
Subject: RFR: mmap connection matrix
In-Reply-To: <4d4ba00a-896a-5bef-0d37-c57401b3e5a2@redhat.com>
References: <6c471329-f0a9-ebff-c4b2-35133d0e50b0@redhat.com>
<4d4ba00a-896a-5bef-0d37-c57401b3e5a2@redhat.com>
Message-ID: <212d2ea2-e697-450c-4501-271e4b44e2d7@redhat.com>
On 05/22/2017 12:45 PM, Roman Kennke wrote:
> Am 22.05.2017 um 12:19 schrieb Aleksey Shipilev:
>> On 05/22/2017 12:11 PM, Roman Kennke wrote:
>>> Am 22.05.2017 um 11:41 schrieb Aleksey Shipilev:
>>>> Hi,
>>>>
>>>> Currently the connection matrix is allocated in C heap. We can make it
>>>> consistent with marking bitmaps by mmap-ing the matrix as well:
>>>> http://cr.openjdk.java.net/~shade/shenandoah/matrix-mmap/webrev.01/
>>>>
>>>> Testing: hotspot_gc_shenandoah
>>>>
>>>> -Aleksey
>>>>
>>> It seems ugly that the allocation of the matrix is outside the
>>> ConnectionMatrix class. ShenandoahHeap now needs knowledge about
>>> internals of ConnectionMatrix.
>> There is already a fair amount of cohesion between ShMatrix and ShHeap. This
>> change makes ShMatrix the "view" over naked bitmap allocated in ShHeap.
>>
>> Consider the upside: matrix can now be allocated with proper page sizes and
>> alignment.
>
> Why not put that part here:
>
> + ReservedSpace matrix_bitmap(_max_regions * _max_regions, page_size);
> + os::commit_memory_or_exit(matrix_bitmap.base(), matrix_bitmap.size(), false,
> + "couldn't allocate matrix bitmap");
> + MemTracker::record_virtual_memory_type(matrix_bitmap.base(), mtGC);
>
>
> inside ConnectionMatrix constructor?
Tried that, looks worse: there are const fields we want to do in initializer
lists, but the ReservedSpace block should precede ShenandoahMatrix constructor;
we need to pass in page_size, etc. Seems cleaner to keep that in ShHeap.
-Aleksey
From roman at kennke.org Mon May 22 11:01:52 2017
From: roman at kennke.org (Roman Kennke)
Date: Mon, 22 May 2017 13:01:52 +0200
Subject: RFR: mmap connection matrix
In-Reply-To: <212d2ea2-e697-450c-4501-271e4b44e2d7@redhat.com>
References: <6c471329-f0a9-ebff-c4b2-35133d0e50b0@redhat.com>
<4d4ba00a-896a-5bef-0d37-c57401b3e5a2@redhat.com>
<212d2ea2-e697-450c-4501-271e4b44e2d7@redhat.com>
Message-ID: <8AF8749C-256A-4F1D-A571-1AFD2F93B9D0@kennke.org>
OK then
Am 22. Mai 2017 13:00:58 MESZ schrieb Aleksey Shipilev :
>On 05/22/2017 12:45 PM, Roman Kennke wrote:
>> Am 22.05.2017 um 12:19 schrieb Aleksey Shipilev:
>>> On 05/22/2017 12:11 PM, Roman Kennke wrote:
>>>> Am 22.05.2017 um 11:41 schrieb Aleksey Shipilev:
>>>>> Hi,
>>>>>
>>>>> Currently the connection matrix is allocated in C heap. We can
>make it
>>>>> consistent with marking bitmaps by mmap-ing the matrix as well:
>>>>>
>http://cr.openjdk.java.net/~shade/shenandoah/matrix-mmap/webrev.01/
>>>>>
>>>>> Testing: hotspot_gc_shenandoah
>>>>>
>>>>> -Aleksey
>>>>>
>>>> It seems ugly that the allocation of the matrix is outside the
>>>> ConnectionMatrix class. ShenandoahHeap now needs knowledge about
>>>> internals of ConnectionMatrix.
>>> There is already a fair amount of cohesion between ShMatrix and
>ShHeap. This
>>> change makes ShMatrix the "view" over naked bitmap allocated in
>ShHeap.
>>>
>>> Consider the upside: matrix can now be allocated with proper page
>sizes and
>>> alignment.
>>
>> Why not put that part here:
>>
>> + ReservedSpace matrix_bitmap(_max_regions * _max_regions,
>page_size);
>> + os::commit_memory_or_exit(matrix_bitmap.base(),
>matrix_bitmap.size(), false,
>> + "couldn't allocate matrix bitmap");
>> + MemTracker::record_virtual_memory_type(matrix_bitmap.base(), mtGC);
>>
>>
>> inside ConnectionMatrix constructor?
>
>Tried that, looks worse: there are const fields we want to do in
>initializer
>lists, but the ReservedSpace block should precede ShenandoahMatrix
>constructor;
>we need to pass in page_size, etc. Seems cleaner to keep that in
>ShHeap.
>
>-Aleksey
--
Sent from my FairPhone
From ashipile at redhat.com Mon May 22 11:04:38 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 22 May 2017 11:04:38 +0000
Subject: hg: shenandoah/jdk9/hotspot: mmap() the connection matrix.
Message-ID: <201705221104.v4MB4cx9002748@aojmv0008.oracle.com>
Changeset: e67b94861f4d
Author: shade
Date: 2017-05-22 13:02 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/e67b94861f4d
mmap() the connection matrix.
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.cpp
! src/share/vm/gc/shenandoah/shenandoahConnectionMatrix.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From roman at kennke.org Mon May 22 13:03:56 2017
From: roman at kennke.org (roman at kennke.org)
Date: Mon, 22 May 2017 13:03:56 +0000
Subject: hg: shenandoah/jdk8u/hotspot: Cherry-pick/synchronize JDK-8180175 and
JDK-8180599
Message-ID: <201705221303.v4MD3vFe014301@aojmv0008.oracle.com>
Changeset: 0d7228ed1443
Author: rkennke
Date: 2017-05-22 11:32 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/0d7228ed1443
Cherry-pick/synchronize JDK-8180175 and JDK-8180599
! src/share/vm/gc_implementation/shenandoah/shenandoahRootProcessor.cpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
! src/share/vm/runtime/thread.cpp
From zgu at redhat.com Mon May 22 20:47:52 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Mon, 22 May 2017 16:47:52 -0400
Subject: RFR(XS): Align up matrix size to page boundary
Message-ID:
Run fastdebug: java -XX:+UseShenandoahGC
-XX:ShenandoahGCHeuristics=partial -version
failed with:
# Internal Error
(/home/zgu/workspace/shenandoah-head/jdk9/hotspot/src/share/vm/memory/virtualspace.cpp:102),
pid=25744, tid=25745
# assert((size & (granularity - 1)) == 0) failed: size not aligned to
os::vm_allocation_granularity()
#
Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/matrix_size/webrev.00/
Test:
fastdebug and release: hotspot_gc_shenandoah
Thanks,
-Zhengyu
From rkennke at redhat.com Mon May 22 21:34:00 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 22 May 2017 23:34:00 +0200
Subject: RFR(XS): Align up matrix size to page boundary
In-Reply-To:
References:
Message-ID: <8a2f8937-0f0e-3970-f01e-43e7ac149a02@redhat.com>
Am 22.05.2017 um 22:47 schrieb Zhengyu Gu:
> Run fastdebug: java -XX:+UseShenandoahGC
> -XX:ShenandoahGCHeuristics=partial -version
>
> failed with:
>
> # Internal Error
> (/home/zgu/workspace/shenandoah-head/jdk9/hotspot/src/share/vm/memory/virtualspace.cpp:102),
> pid=25744, tid=25745
> # assert((size & (granularity - 1)) == 0) failed: size not aligned to
> os::vm_allocation_granularity()
> #
>
>
> Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/matrix_size/webrev.00/
>
> Test:
> fastdebug and release: hotspot_gc_shenandoah
Looks good to me!
Roman
From zgu at redhat.com Mon May 22 21:44:28 2017
From: zgu at redhat.com (zgu at redhat.com)
Date: Mon, 22 May 2017 21:44:28 +0000
Subject: hg: shenandoah/jdk9/hotspot: Align matrix size up to page boundary
Message-ID: <201705222144.v4MLiSef019617@aojmv0008.oracle.com>
Changeset: 9d9147985937
Author: zgu
Date: 2017-05-22 16:20 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/9d9147985937
Align matrix size up to page boundary
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From shade at redhat.com Tue May 23 06:39:06 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 23 May 2017 08:39:06 +0200
Subject: RFR: "F: Code Cache Roots" is missing from gc+stats
Message-ID:
Hi,
This is because we miss one legit ShenandoahRootProcessor use:
$ hg diff
diff -r 9d9147985937 src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp Mon May 22 16:20:15
2017 -0400
+++ b/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp Tue May 23 08:36:19
2017 +0200
@@ -614,7 +614,7 @@
{
COMPILER2_PRESENT(DerivedPointerTable::clear());
- ShenandoahRootProcessor rp(heap, nworkers);
+ ShenandoahRootProcessor rp(heap, nworkers,
ShenandoahCollectorPolicy::full_gc_roots);
ShenandoahAdjustRootPointersTask task(&rp);
workers->run_task(&task);
COMPILER2_PRESENT(DerivedPointerTable::update_pointers());
Thanks,
-Aleksey
From rkennke at redhat.com Tue May 23 08:11:37 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 23 May 2017 10:11:37 +0200
Subject: RFR: "F: Code Cache Roots" is missing from gc+stats
In-Reply-To:
References:
Message-ID:
Am 23.05.2017 um 08:39 schrieb Aleksey Shipilev:
> Hi,
>
> This is because we miss one legit ShenandoahRootProcessor use:
>
> $ hg diff
> diff -r 9d9147985937 src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp Mon May 22 16:20:15
> 2017 -0400
> +++ b/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp Tue May 23 08:36:19
> 2017 +0200
> @@ -614,7 +614,7 @@
> {
> COMPILER2_PRESENT(DerivedPointerTable::clear());
>
> - ShenandoahRootProcessor rp(heap, nworkers);
> + ShenandoahRootProcessor rp(heap, nworkers,
> ShenandoahCollectorPolicy::full_gc_roots);
> ShenandoahAdjustRootPointersTask task(&rp);
> workers->run_task(&task);
> COMPILER2_PRESENT(DerivedPointerTable::update_pointers());
>
>
> Thanks,
> -Aleksey
>
Yup
From shade at redhat.com Tue May 23 09:06:32 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 23 May 2017 11:06:32 +0200
Subject: RFR: Lazy parallel code cache iterator
Message-ID: <408e973c-afa4-f032-3bcc-9eea37ff8b57@redhat.com>
Hi,
The last time we improved code cache iterator with more parallelism, and it
improved the pause times. However, we had to do the eager preparation stage in
its constructor, which means we scan code cache during ShenandoahRP
construction, even if we skip code cache iteration later! Which means we have
redundant work during Init Mark and Final Update-Refs pauses.
The fix is to redo the iterator to be lazy again, while maintaining parallelism:
http://cr.openjdk.java.net/~shade/shenandoah/codecache-lazyparallel/webrev.01/
Before/after on SPECjbb:
http://cr.openjdk.java.net/~shade/shenandoah/codecache-lazyparallel/baseline.log
http://cr.openjdk.java.net/~shade/shenandoah/codecache-lazyparallel/patched.log
Saves 3..8 ms per pause!
Testing: hotspot_gc_shenandoah, jcstress/fastdebug/aggressive
-Aleksey
From rkennke at redhat.com Tue May 23 09:52:57 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 23 May 2017 11:52:57 +0200
Subject: RFR: Lazy parallel code cache iterator
In-Reply-To: <408e973c-afa4-f032-3bcc-9eea37ff8b57@redhat.com>
References: <408e973c-afa4-f032-3bcc-9eea37ff8b57@redhat.com>
Message-ID: <6796db57-c3df-c537-9f34-622247c0b2f7@redhat.com>
Am 23.05.2017 um 11:06 schrieb Aleksey Shipilev:
> Hi,
>
> The last time we improved code cache iterator with more parallelism, and it
> improved the pause times. However, we had to do the eager preparation stage in
> its constructor, which means we scan code cache during ShenandoahRP
> construction, even if we skip code cache iteration later! Which means we have
> redundant work during Init Mark and Final Update-Refs pauses.
>
> The fix is to redo the iterator to be lazy again, while maintaining parallelism:
> http://cr.openjdk.java.net/~shade/shenandoah/codecache-lazyparallel/webrev.01/
>
> Before/after on SPECjbb:
> http://cr.openjdk.java.net/~shade/shenandoah/codecache-lazyparallel/baseline.log
> http://cr.openjdk.java.net/~shade/shenandoah/codecache-lazyparallel/patched.log
>
> Saves 3..8 ms per pause!
>
> Testing: hotspot_gc_shenandoah, jcstress/fastdebug/aggressive
>
> -Aleksey
>
Very cool! Go!
Roman
From ashipile at redhat.com Tue May 23 09:56:13 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 23 May 2017 09:56:13 +0000
Subject: hg: shenandoah/jdk9/hotspot: Lazy parallel code cache iterator
Message-ID: <201705230956.v4N9uERB010748@aojmv0008.oracle.com>
Changeset: 1fe6e704d2a6
Author: shade
Date: 2017-05-23 11:46 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1fe6e704d2a6
Lazy parallel code cache iterator
! src/share/vm/code/codeCache.cpp
! src/share/vm/code/codeCache.hpp
From shade at redhat.com Tue May 23 10:05:51 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 23 May 2017 12:05:51 +0200
Subject: RFR: "F: Code Cache Roots" is missing from gc+stats
In-Reply-To:
References:
Message-ID:
On 05/23/2017 10:11 AM, Roman Kennke wrote:
> Am 23.05.2017 um 08:39 schrieb Aleksey Shipilev:
>> Hi,
>>
>> This is because we miss one legit ShenandoahRootProcessor use:
>>
>> $ hg diff
>> diff -r 9d9147985937 src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
>> --- a/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp Mon May 22 16:20:15
>> 2017 -0400
>> +++ b/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp Tue May 23 08:36:19
>> 2017 +0200
>> @@ -614,7 +614,7 @@
>> {
>> COMPILER2_PRESENT(DerivedPointerTable::clear());
>>
>> - ShenandoahRootProcessor rp(heap, nworkers);
>> + ShenandoahRootProcessor rp(heap, nworkers,
>> ShenandoahCollectorPolicy::full_gc_roots);
>> ShenandoahAdjustRootPointersTask task(&rp);
>> workers->run_task(&task);
>> COMPILER2_PRESENT(DerivedPointerTable::update_pointers());
>>
>>
>> Thanks,
>> -Aleksey
>>
> Yup
Actually, let's make it more comprehensive by dropping the default argument, and
requiring to pass phase explicitly:
http://cr.openjdk.java.net/~shade/shenandoah/stats-rp-all/webrev.01/
-Aleksey
From rkennke at redhat.com Tue May 23 10:07:38 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 23 May 2017 12:07:38 +0200
Subject: RFR: "F: Code Cache Roots" is missing from gc+stats
In-Reply-To:
References:
Message-ID: <4a863d22-25bb-df56-2dac-db9d9f95394b@redhat.com>
Am 23.05.2017 um 12:05 schrieb Aleksey Shipilev:
> On 05/23/2017 10:11 AM, Roman Kennke wrote:
>> Am 23.05.2017 um 08:39 schrieb Aleksey Shipilev:
>>> Hi,
>>>
>>> This is because we miss one legit ShenandoahRootProcessor use:
>>>
>>> $ hg diff
>>> diff -r 9d9147985937 src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
>>> --- a/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp Mon May 22 16:20:15
>>> 2017 -0400
>>> +++ b/src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp Tue May 23 08:36:19
>>> 2017 +0200
>>> @@ -614,7 +614,7 @@
>>> {
>>> COMPILER2_PRESENT(DerivedPointerTable::clear());
>>>
>>> - ShenandoahRootProcessor rp(heap, nworkers);
>>> + ShenandoahRootProcessor rp(heap, nworkers,
>>> ShenandoahCollectorPolicy::full_gc_roots);
>>> ShenandoahAdjustRootPointersTask task(&rp);
>>> workers->run_task(&task);
>>> COMPILER2_PRESENT(DerivedPointerTable::update_pointers());
>>>
>>>
>>> Thanks,
>>> -Aleksey
>>>
>> Yup
> Actually, let's make it more comprehensive by dropping the default argument, and
> requiring to pass phase explicitly:
> http://cr.openjdk.java.net/~shade/shenandoah/stats-rp-all/webrev.01/
>
> -Aleksey
>
>
Even better!
Roman
From ashipile at redhat.com Tue May 23 10:15:19 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 23 May 2017 10:15:19 +0000
Subject: hg: shenandoah/jdk9/hotspot: "F: Code Cache Roots" is missing from
gc+stats
Message-ID: <201705231015.v4NAFJw7015916@aojmv0008.oracle.com>
Changeset: e23e77880b50
Author: shade
Date: 2017-05-23 12:08 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/e23e77880b50
"F: Code Cache Roots" is missing from gc+stats
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
! src/share/vm/gc/shenandoah/shenandoahRootProcessor.hpp
From ashipile at redhat.com Tue May 23 11:12:39 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 23 May 2017 11:12:39 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] "F: Code Cache Roots" is
missing from gc+stats
Message-ID: <201705231112.v4NBCd1T002857@aojmv0008.oracle.com>
Changeset: 46d4ba7e5390
Author: shade
Date: 2017-05-23 13:11 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/46d4ba7e5390
[backport] "F: Code Cache Roots" is missing from gc+stats
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahRootProcessor.hpp
From shade at redhat.com Tue May 23 12:18:30 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 23 May 2017 14:18:30 +0200
Subject: RFR 8u: Cherry-pick 8140584: nmethod::oops_do_marking_epilogue always
runs verification code
Message-ID: <2a8035f6-3934-fac2-a9f5-5244e67eaceb@redhat.com>
Hi,
shenandoah-8u runs into the serious performance problem with code cache scan --
we are wasting several milliseconds per pause -- and it seems to be fixed in 8u152:
https://bugs.openjdk.java.net/browse/JDK-8140584
I propose we cherry-pick it to our shenandoah-8u repo, while we wait for it to
arrive from upstream.
Andrew, any objections?
Thanks,
-Aleksey
From rkennke at redhat.com Tue May 23 12:19:58 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 23 May 2017 14:19:58 +0200
Subject: RFR 8u: Cherry-pick 8140584: nmethod::oops_do_marking_epilogue
always runs verification code
In-Reply-To: <2a8035f6-3934-fac2-a9f5-5244e67eaceb@redhat.com>
References: <2a8035f6-3934-fac2-a9f5-5244e67eaceb@redhat.com>
Message-ID:
Am 23.05.2017 um 14:18 schrieb Aleksey Shipilev:
> Hi,
>
> shenandoah-8u runs into the serious performance problem with code cache scan --
> we are wasting several milliseconds per pause -- and it seems to be fixed in 8u152:
> https://bugs.openjdk.java.net/browse/JDK-8140584
>
> I propose we cherry-pick it to our shenandoah-8u repo, while we wait for it to
> arrive from upstream.
>
> Andrew, any objections?
>
> Thanks,
> -Aleksey
>
Yes!
From aph at redhat.com Tue May 23 13:41:36 2017
From: aph at redhat.com (Andrew Haley)
Date: Tue, 23 May 2017 14:41:36 +0100
Subject: RFR 8u: Cherry-pick 8140584: nmethod::oops_do_marking_epilogue
always runs verification code
In-Reply-To: <2a8035f6-3934-fac2-a9f5-5244e67eaceb@redhat.com>
References: <2a8035f6-3934-fac2-a9f5-5244e67eaceb@redhat.com>
Message-ID: <04da6dce-2742-a23a-d850-04e882334110@redhat.com>
On 23/05/17 13:18, Aleksey Shipilev wrote:
> Shenandoah-8u runs into the serious performance problem with code
> cache scan -- we are wasting several milliseconds per pause -- and
> it seems to be fixed in 8u152:
> https://bugs.openjdk.java.net/browse/JDK-8140584
>
> I propose we cherry-pick it to our shenandoah-8u repo, while we wait for it to
> arrive from upstream.
>
> Andrew, any objections?
We have to think about the criteria we use to decide such things. It
seems to me that this is a very low-risk patch, but on the other hand
the gains are slight. On the gripping hand, if we allow in many small
such patches we have a significant divergence from upstream. Each
patch on its own is no big deal, but they all add up.
So, I'm on the horns of a dilemma. (Ouch!)
Andrew.
From shade at redhat.com Tue May 23 13:45:55 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 23 May 2017 15:45:55 +0200
Subject: RFR 8u: Cherry-pick 8140584: nmethod::oops_do_marking_epilogue
always runs verification code
In-Reply-To: <04da6dce-2742-a23a-d850-04e882334110@redhat.com>
References: <2a8035f6-3934-fac2-a9f5-5244e67eaceb@redhat.com>
<04da6dce-2742-a23a-d850-04e882334110@redhat.com>
Message-ID: <7bf4d1cd-b60a-b9ba-e54e-f777835fdb65@redhat.com>
On 05/23/2017 03:41 PM, Andrew Haley wrote:
> On 23/05/17 13:18, Aleksey Shipilev wrote:
>
>> Shenandoah-8u runs into the serious performance problem with code
>> cache scan -- we are wasting several milliseconds per pause -- and
>> it seems to be fixed in 8u152:
>> https://bugs.openjdk.java.net/browse/JDK-8140584
>>
>> I propose we cherry-pick it to our shenandoah-8u repo, while we wait for it to
>> arrive from upstream.
>>
>> Andrew, any objections?
>
> We have to think about the criteria we use to decide such things. It
> seems to me that this is a very low-risk patch, but on the other hand
> the gains are slight.
The gains are slight for STW GC, where 5ms is a tiny drop in a large pause. For
Shenandoah, it is more than a half of the pause :)
> On the gripping hand, if we allow in many small
> such patches we have a significant divergence from upstream. Each
> patch on its own is no big deal, but they all add up.
>
> So, I'm on the horns of a dilemma. (Ouch!)
Yeah. In this particular case, we are not diverging from upstream, for some
notion of "upstream". Since we are planning to pull 8b152 once released anyway,
what we do here is fast-forwarding to the future today. I guess simplicity of
the patch + already being in upstream is enough to qualify for cherry-pick?
-Aleksey
From aph at redhat.com Tue May 23 14:00:04 2017
From: aph at redhat.com (Andrew Haley)
Date: Tue, 23 May 2017 15:00:04 +0100
Subject: RFR 8u: Cherry-pick 8140584: nmethod::oops_do_marking_epilogue
always runs verification code
In-Reply-To: <7bf4d1cd-b60a-b9ba-e54e-f777835fdb65@redhat.com>
References: <2a8035f6-3934-fac2-a9f5-5244e67eaceb@redhat.com>
<04da6dce-2742-a23a-d850-04e882334110@redhat.com>
<7bf4d1cd-b60a-b9ba-e54e-f777835fdb65@redhat.com>
Message-ID:
On 23/05/17 14:45, Aleksey Shipilev wrote:
> Yeah. In this particular case, we are not diverging from upstream, for some
> notion of "upstream". Since we are planning to pull 8b152 once released anyway,
> what we do here is fast-forwarding to the future today. I guess simplicity of
> the patch + already being in upstream is enough to qualify for cherry-pick?
Yes, I think this one is OK. But we must default to "First, do no
harm." It would be awful if users in production who neither know nor
care about Shenandoah got hit by Shenandoah-related changes.
Andrew.
From ashipile at redhat.com Tue May 23 14:17:55 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 23 May 2017 14:17:55 +0000
Subject: hg: shenandoah/jdk8u/hotspot: Cherry-pick JDK-8140584:
nmethod::oops_do_marking_epilogue always runs verification code
Message-ID: <201705231417.v4NEHtmR009404@aojmv0008.oracle.com>
Changeset: 87d0934dcb67
Author: shade
Date: 2017-05-23 16:15 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/87d0934dcb67
Cherry-pick JDK-8140584: nmethod::oops_do_marking_epilogue always runs verification code
! src/cpu/ppc/vm/relocInfo_ppc.cpp
! src/cpu/sparc/vm/nativeInst_sparc.cpp
! src/cpu/sparc/vm/relocInfo_sparc.cpp
! src/cpu/x86/vm/relocInfo_x86.cpp
! src/share/vm/code/nmethod.cpp
From rkennke at redhat.com Tue May 23 17:28:47 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 23 May 2017 19:28:47 +0200
Subject: RFR: Parallel safepoint cleaning
Message-ID: <7a8dff14-13a8-43c0-69d6-414118cd30b1@redhat.com>
I realized that my former attempt to parallelize safepoint cleaning (or
rather, idle monitor deflation) was a complete fail (have you seen a
workers->run_task() call anywhere?). Also, I realized that we can't
(ab)use GC worker threads either: SP cleaning can kick in in the middle
of conc marking/evac/uprefs, and we can't use GC workers when they're
working (and no, we don't stop our GC workers at non-GC safepoints, as
opposed to all other GCs).
So I completely rewrote the whole thing. I gave SafepointSynchronize its
own worker pool with default size 8 (just a guess). I added a flag
-XX:+ParallelSPCleanup to enable parallel SP cleaning and
-XX:ParallelSPCleanupThreads=X to specify number of threads.
I also added some hooks to let the GC tell the safepoint machinery that
it would like to take over monitor deflation and/or nmethod marking.
This makes sense because both of those cleanup passes iterate+scan over
the thread stacks, and if the GC is scanning it anyway, we can just as
well piggy-back on it and benefit from better caching, parallelization,
etc. This can be enabled separately by -XX:+ShenandoahSPCleanup (and can
be mixed with or without parallel cleanup).
Piggybacking deflation and nmethod-marking should always be benefitial
or at least not adversarial.
Parallelizing cleanup work in general is only benefitial with large
numbers of threads and/or excessive inflated monitors. I have seen quite
some overhead to spin up the parallel fluff, and need to investigate it
a little more (watch out for changes in the init-UR pause, this is
basically a no-op and bound by SP cleanup work).
http://cr.openjdk.java.net/~rkennke/par-sp-cleaning/webrev.01/
I intend to upstream the non-Shenandoah parts soon.
Testing: hotspot_gc_shenandoah, specjvm
Ok?
Roman
From ashipile at redhat.com Tue May 23 17:30:53 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 23 May 2017 17:30:53 +0000
Subject: hg: shenandoah/jdk8u/hotspot: [backport] Lazy parallel code cache
iterator
Message-ID: <201705231730.v4NHUrmk019541@aojmv0008.oracle.com>
Changeset: 739e71e3708f
Author: shade
Date: 2017-05-23 16:32 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/739e71e3708f
[backport] Lazy parallel code cache iterator
! src/share/vm/code/codeCache.cpp
! src/share/vm/code/codeCache.hpp
From shade at redhat.com Tue May 23 17:49:01 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 23 May 2017 19:49:01 +0200
Subject: RFR: Parallel safepoint cleaning
In-Reply-To: <7a8dff14-13a8-43c0-69d6-414118cd30b1@redhat.com>
References: <7a8dff14-13a8-43c0-69d6-414118cd30b1@redhat.com>
Message-ID: <31034bd5-b2e5-fac3-0278-092db618ca6a@redhat.com>
On 05/23/2017 07:28 PM, Roman Kennke wrote:
> http://cr.openjdk.java.net/~rkennke/par-sp-cleaning/webrev.01/
Cursory review:
s/ShenandoahSPCleanup/ShenandoahMergeSafepointCleanup/g ?
s/ParallelSPCleanup/ParallelSafepointCleanup/g ?
vm_operations_shenandoah.hpp:
*) Methods can reside in VM_ShenandoahOperation super-class, no?
synchronizer.cpp:
*) Better name: deflate_tl?
1689 void ObjectSynchronizer::deflate_idle_monitors(bool deflate_tl) {
Interesting how the parallel safepoint cleanup would get accepted upstream.
-Aleksey
From rkennke at redhat.com Tue May 23 17:52:44 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 23 May 2017 19:52:44 +0200
Subject: RFR: Parallel safepoint cleaning
In-Reply-To: <31034bd5-b2e5-fac3-0278-092db618ca6a@redhat.com>
References: <7a8dff14-13a8-43c0-69d6-414118cd30b1@redhat.com>
<31034bd5-b2e5-fac3-0278-092db618ca6a@redhat.com>
Message-ID: <1038cf77-3d32-bdff-9ef4-7f09f1fdae93@redhat.com>
Am 23.05.2017 um 19:49 schrieb Aleksey Shipilev:
> On 05/23/2017 07:28 PM, Roman Kennke wrote:
>> http://cr.openjdk.java.net/~rkennke/par-sp-cleaning/webrev.01/
> Cursory review:
>
> s/ShenandoahSPCleanup/ShenandoahMergeSafepointCleanup/g ?
> s/ParallelSPCleanup/ParallelSafepointCleanup/g ?
Ok, those are better names ;-)
> vm_operations_shenandoah.hpp:
> *) Methods can reside in VM_ShenandoahOperation super-class, no?
Not really. Some VM_Ops (e.g. init-ur) cannot take over sp cleanup. I
could do it in superclass, and only override those who cannot to return
false though.
> synchronizer.cpp:
> *) Better name: deflate_tl?
> 1689 void ObjectSynchronizer::deflate_idle_monitors(bool deflate_tl) {
deflate_thread_local_monitors ?
I also found a bug:
# guarantee(result == NULL || !result->is_zombie() ||
result->is_locked_by_vm() || is_error_reported()) failed: unsafe access
to zombie method
This seems to happen only with -XX:+ParallelSPCleanup
-XX:-ShenandoahSPCleanup (i.e. parallel processing enabled, but
shenandoah takeover disabled). Curious. Will debug this and send another
webrev when done.
Roman
From rkennke at redhat.com Tue May 23 20:50:27 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 23 May 2017 22:50:27 +0200
Subject: RFR: Parallel safepoint cleaning
In-Reply-To: <31034bd5-b2e5-fac3-0278-092db618ca6a@redhat.com>
References: <7a8dff14-13a8-43c0-69d6-414118cd30b1@redhat.com>
<31034bd5-b2e5-fac3-0278-092db618ca6a@redhat.com>
Message-ID:
Am 23.05.2017 um 19:49 schrieb Aleksey Shipilev:
> On 05/23/2017 07:28 PM, Roman Kennke wrote:
>> http://cr.openjdk.java.net/~rkennke/par-sp-cleaning/webrev.01/
> Cursory review:
>
> s/ShenandoahSPCleanup/ShenandoahMergeSafepointCleanup/g ?
> s/ParallelSPCleanup/ParallelSafepointCleanup/g ?
>
> vm_operations_shenandoah.hpp:
> *) Methods can reside in VM_ShenandoahOperation super-class, no?
>
> synchronizer.cpp:
> *) Better name: deflate_tl?
> 1689 void ObjectSynchronizer::deflate_idle_monitors(bool deflate_tl) {
I implemented all your suggested changes.
I also found the cause for the crash: we need to initialize nmethod
marking once, and not once-per-worker thread, otherwise we corrupt
internal structures.
I also found the cause for the massive slowdown when running
parallelized: we need to call needs_rehashing() on StringTable and
SymbolTable before rehashing, otherwise we'd be rehashing them all the
time. This takes ~10ms here and fully explains the slowdown. Note: if we
want to improve safepoint cleanup even more, we might want to look into
those two cleanup passes and see if we can fold them into GC processing too.
http://cr.openjdk.java.net/~rkennke/par-sp-cleaning/webrev.02/
Performance doesn't suffer in my measurements with
+parallel_safepoint_cleanup and/or +shenandoah_safepoint_cleanup, I even
see a slight but consistent improvement (but then again, on my miniscule
workloads it doesn't weight much...)
ok now?
From shade at redhat.com Wed May 24 07:19:27 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 24 May 2017 09:19:27 +0200
Subject: RFR: Parallel safepoint cleaning
In-Reply-To:
References: <7a8dff14-13a8-43c0-69d6-414118cd30b1@redhat.com>
<31034bd5-b2e5-fac3-0278-092db618ca6a@redhat.com>
Message-ID: <5c5cd27c-4ff1-96f3-5159-55d5bef35a21@redhat.com>
On 05/23/2017 10:50 PM, Roman Kennke wrote:
> http://cr.openjdk.java.net/~rkennke/par-sp-cleaning/webrev.02/
Leftover:
594 double start = os::elapsedTime();
...
600 double end = os::elapsedTime();
601 tty->print_cr("vmthread took: %f ms for symbol table rehash", (end -
start) * 1000.0);
Empty condition?
4397 VM_Operation* op = VMThread::vm_operation();
4398 if (op != NULL && op->marks_nmethods()) {
4399 }
Otherwise seems fine.
-Aleksey
From roman at kennke.org Wed May 24 08:24:33 2017
From: roman at kennke.org (roman at kennke.org)
Date: Wed, 24 May 2017 08:24:33 +0000
Subject: hg: shenandoah/jdk9/hotspot: Parallel safepoint cleaning
Message-ID: <201705240824.v4O8OXid005740@aojmv0008.oracle.com>
Changeset: 1c4038f4603f
Author: rkennke
Date: 2017-05-24 10:22 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1c4038f4603f
Parallel safepoint cleaning
! src/share/vm/gc/shared/collectedHeap.cpp
! src/share/vm/gc/shared/collectedHeap.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp
! src/share/vm/gc/shenandoah/shenandoahRootProcessor.hpp
! src/share/vm/gc/shenandoah/shenandoah_globals.hpp
! src/share/vm/gc/shenandoah/vm_operations_shenandoah.hpp
! src/share/vm/runtime/globals.hpp
! src/share/vm/runtime/safepoint.cpp
! src/share/vm/runtime/safepoint.hpp
! src/share/vm/runtime/sweeper.cpp
! src/share/vm/runtime/sweeper.hpp
! src/share/vm/runtime/synchronizer.cpp
! src/share/vm/runtime/synchronizer.hpp
! src/share/vm/runtime/thread.cpp
! src/share/vm/runtime/thread.hpp
! src/share/vm/runtime/vm_operations.hpp
From shade at redhat.com Wed May 24 08:33:44 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 24 May 2017 10:33:44 +0200
Subject: RFR: "Allocation failure" cause should not be overwritten
Message-ID:
http://cr.openjdk.java.net/~shade/shenandoah/fullgc-alloc-overwrite/webrev.02/
This matters because allocation failure may coincide with System.gc() call, that
can be disabled with -XX:+DisableExplicitGC. Which makes our full GC ignored,
even if we have to do it due to allocation failure.
-Aleksey
From rkennke at redhat.com Wed May 24 08:37:26 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 24 May 2017 10:37:26 +0200
Subject: RFR: "Allocation failure" cause should not be overwritten
In-Reply-To:
References:
Message-ID:
Am 24.05.2017 um 10:33 schrieb Aleksey Shipilev:
> http://cr.openjdk.java.net/~shade/shenandoah/fullgc-alloc-overwrite/webrev.02/
>
> This matters because allocation failure may coincide with System.gc() call, that
> can be disabled with -XX:+DisableExplicitGC. Which makes our full GC ignored,
> even if we have to do it due to allocation failure.
>
> -Aleksey
>
Ok
From ashipile at redhat.com Wed May 24 08:44:20 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 24 May 2017 08:44:20 +0000
Subject: hg: shenandoah/jdk9/hotspot: "Allocation failure" cause should not be
overwritten
Message-ID: <201705240844.v4O8iKR8011248@aojmv0008.oracle.com>
Changeset: b67661c7315a
Author: shade
Date: 2017-05-24 10:41 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/b67661c7315a
"Allocation failure" cause should not be overwritten
! src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
From cflood at redhat.com Wed May 24 13:32:28 2017
From: cflood at redhat.com (Christine Flood)
Date: Wed, 24 May 2017 09:32:28 -0400
Subject: RFR: More Partial Heuristics
Message-ID:
http://cr.openjdk.java.net/~chf/heuristics/webrev.00/
This patch implements LRU and generational partial heuristics.
We save the timestamp at the first and last allocations in a region.
When performing generational heuristics we only chose regions which had
their first allocation after the last gc cycle. When performing LRU
heuristics we only chose regions which had their last allocation before the
last gc cycle. This prevents us from ever having doubly forwarded objects
when partial and major concurrent collections interleave.
Added two new global flags
product_rw(uintx, ShenandoahGenerationalYoungGenPercentage, 20, \
"Percentage of the heap designated as young")
\
range(0,100)
\
\
product_rw(uintx, ShenandoahLRUOldGenPercentage, 20,
\
"Percentage of the heap designated as old")
\
range(0,100)
\
Which allow the user to specify how much of the heap they would like to
consider young or old for that particular heuristic.
This patch forbids the reuse of partially filled heap regions in its
current form.
I tested LRU, generational, partial, and default heuristics on several
benchmarks.
Christine
From rkennke at redhat.com Wed May 24 15:36:25 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 24 May 2017 17:36:25 +0200
Subject: RFR: More Partial Heuristics
In-Reply-To:
References:
Message-ID: <353dc46c-89e7-f73a-ef1b-efa615db1108@redhat.com>
Am 24.05.2017 um 15:32 schrieb Christine Flood:
> http://cr.openjdk.java.net/~chf/heuristics/webrev.00/
>
>
> This patch implements LRU and generational partial heuristics.
>
> We save the timestamp at the first and last allocations in a region.
>
> When performing generational heuristics we only chose regions which had
> their first allocation after the last gc cycle. When performing LRU
> heuristics we only chose regions which had their last allocation before the
> last gc cycle. This prevents us from ever having doubly forwarded objects
> when partial and major concurrent collections interleave.
>
> Added two new global flags
>
> product_rw(uintx, ShenandoahGenerationalYoungGenPercentage, 20, \
> "Percentage of the heap designated as young")
> \
> range(0,100)
> \
>
> \
> product_rw(uintx, ShenandoahLRUOldGenPercentage, 20,
> \
> "Percentage of the heap designated as old")
> \
> range(0,100)
> \
>
> Which allow the user to specify how much of the heap they would like to
> consider young or old for that particular heuristic.
>
> This patch forbids the reuse of partially filled heap regions in its
> current form.
>
> I tested LRU, generational, partial, and default heuristics on several
> benchmarks.
- I see no reason to explicitely pass in the matrix to heuristics, only
for one or a few that needs them. You can always get it through
ShenandoahHeap::heap()->connection_matrix() if you need it.
- _timestamp_at_last_gc_start,_timestamp_at_last_gc_end,
_used_at_last_gc better go into heuristics or policy? We already have
hooks there that get called on gc start/end, phase start/end etc.
-what makes you think that? // I think we aren't resetting top properly
- why are you setting the time stamps of regions in the iterator? is
that sane?
Roman
From shade at redhat.com Wed May 24 16:44:21 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 24 May 2017 18:44:21 +0200
Subject: RFR: More Partial Heuristics
In-Reply-To:
References:
Message-ID:
On 05/24/2017 03:32 PM, Christine Flood wrote:
> http://cr.openjdk.java.net/~chf/heuristics/webrev.00/
General:
*) I see new heuristics code does not make use of
ShMatrix::enumerate_connected_to, as ShPartialGC::prepare did, which might cost
5-10 ms per cycle, as we measured during ShPartialGC::prepare optimization. It
seems that the block from partial can be transplanted directly into new code?
*) ShenandoahCollectorPolicy already has record_cycle_{start|end} -- are those
the same as the new timestamp_at_last_gc_{start_end} methods?
*) Re:
254 // Is this ever called, or do we always do deferred recycles when
255 // using the matrix?
256 _heap->connection_matrix()->clear_region(region_number());
...we don't call recycle() now, but it should be safe to call without deferred
recycling, so matrix is cleaned on that path too
Code quality:
*) Replace:
ShenandoahHeap* heap = (ShenandoahHeap*)Universe::heap();
...with:
ShenandoahHeap* heap = ShenandoahHeap::heap();
*) Braces:
842 for (size_t i = 0; i < active; i++)
843 sorted_regions.add_region(regions->get(i));
1216 if (minor)
1217 _minor_heuristics->choose_collection_set(collection_set, matrix);
1218 else
1219 _heuristics->choose_collection_set(collection_set, matrix);
1446 if (_minor_heuristics != NULL)
1447 return _minor_heuristics->should_start_partial_gc();
1448 else return false;
*) Can reuse "heap":
913 ShenandoahHeap* heap = ShenandoahHeap::heap();
914 // For now don't start until we are 50% full
915 size_t threshold = ShenandoahHeap::heap()->regions()->active_regions() *
916 percentage_old / 100 *
917 ShenandoahHeapRegion::region_size_bytes();
918 size_t minimum = ShenandoahHeap::heap()->regions()->active_regions() *
919 0.5 *
920 ShenandoahHeapRegion::region_size_bytes();
*) "\n" are not needed in log_info(...) statements
Thanks,
-Aleksey
From shade at redhat.com Wed May 24 18:33:26 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 24 May 2017 20:33:26 +0200
Subject: RFR: More Partial Heuristics
In-Reply-To:
References:
Message-ID: <648e34e3-507e-bb70-bdb0-d4d5045e22bb@redhat.com>
On 05/24/2017 06:44 PM, Aleksey Shipilev wrote:
> On 05/24/2017 03:32 PM, Christine Flood wrote:
>> http://cr.openjdk.java.net/~chf/heuristics/webrev.00/
A few more, after running with it:
*) log_info(gc) in should_start_partial_gc() is noisy. I think it should be
log_info(gc,ergo), and only print if it returns "true".
*) Current patch SEGVs on SPECjbb, because _partial_gc now initializes lazily,
and you need at least this:
bool ShenandoahCollectorPolicy::can_do_partial_gc() {
return _heuristics->can_do_partial_gc() ||
_minor_heuristics->can_do_partial_gc();
}
-Aleksey
From shade at redhat.com Mon May 29 12:07:29 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 29 May 2017 14:07:29 +0200
Subject: RFR: Root processors SEGV when executed outside VM operation
Message-ID: <046e3b24-6875-b459-9ca5-8543656b53f8@redhat.com>
Parallel safepoint cleanup makes our build SEGV when verification is turned on.
This is because "vm_operation()" can be NULL on those paths.
Fix:
$ hg diff
diff -r b67661c7315a src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp Wed May 24 10:41:56
2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp Mon May 29 14:06:06
2017 +0200
@@ -49,7 +49,7 @@
{
heap->shenandoahPolicy()->record_workers_start(_phase);
VM_ShenandoahOperation* op = (VM_ShenandoahOperation*) VMThread::vm_operation();
- if (! op->_safepoint_cleanup_done) {
+ if (op == NULL || !op->_safepoint_cleanup_done) {
_threads_nmethods_cl = NMethodSweeper::prepare_mark_active_nmethods();
}
}
@@ -58,7 +58,9 @@
delete _process_strong_tasks;
ShenandoahHeap::heap()->shenandoahPolicy()->record_workers_end(_phase);
VM_ShenandoahOperation* op = (VM_ShenandoahOperation*) VMThread::vm_operation();
- op->_safepoint_cleanup_done = true;
+ if (op != NULL) {
+ op->_safepoint_cleanup_done = true;
+ }
}
void ShenandoahRootProcessor::process_strong_roots(OopClosure* oops,
@@ -185,7 +187,7 @@
{
heap->shenandoahPolicy()->record_workers_start(_phase);
VM_ShenandoahOperation* op = (VM_ShenandoahOperation*) VMThread::vm_operation();
- if (! op->_safepoint_cleanup_done) {
+ if (op == NULL || !op->_safepoint_cleanup_done) {
_threads_nmethods_cl = NMethodSweeper::prepare_mark_active_nmethods();
}
}
@@ -194,7 +196,9 @@
delete _process_strong_tasks;
ShenandoahHeap::heap()->shenandoahPolicy()->record_workers_end(_phase);
VM_ShenandoahOperation* op = (VM_ShenandoahOperation*) VMThread::vm_operation();
- op->_safepoint_cleanup_done = true;
+ if (op != NULL) {
+ op->_safepoint_cleanup_done = true;
+ }
}
void ShenandoahRootEvacuator::process_evacuate_roots(OopClosure* oops,
Testing: hotspot_gc_shenandoah
-Aleksey
From rkennke at redhat.com Mon May 29 12:12:01 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 29 May 2017 14:12:01 +0200
Subject: RFR: Root processors SEGV when executed outside VM operation
In-Reply-To: <046e3b24-6875-b459-9ca5-8543656b53f8@redhat.com>
References: <046e3b24-6875-b459-9ca5-8543656b53f8@redhat.com>
Message-ID: <3BAC54B6-C416-4187-8B95-D14928DA4808@redhat.com>
Ugh. Yes!
Am 29. Mai 2017 14:07:29 MESZ schrieb Aleksey Shipilev :
>Parallel safepoint cleanup makes our build SEGV when verification is
>turned on.
>This is because "vm_operation()" can be NULL on those paths.
>
>Fix:
>
>$ hg diff
>diff -r b67661c7315a
>src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp
>--- a/src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp Wed May 24
>10:41:56
>2017 +0200
>+++ b/src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp Mon May 29
>14:06:06
>2017 +0200
>@@ -49,7 +49,7 @@
> {
> heap->shenandoahPolicy()->record_workers_start(_phase);
>VM_ShenandoahOperation* op = (VM_ShenandoahOperation*)
>VMThread::vm_operation();
>- if (! op->_safepoint_cleanup_done) {
>+ if (op == NULL || !op->_safepoint_cleanup_done) {
> _threads_nmethods_cl = NMethodSweeper::prepare_mark_active_nmethods();
> }
> }
>@@ -58,7 +58,9 @@
> delete _process_strong_tasks;
>ShenandoahHeap::heap()->shenandoahPolicy()->record_workers_end(_phase);
>VM_ShenandoahOperation* op = (VM_ShenandoahOperation*)
>VMThread::vm_operation();
>- op->_safepoint_cleanup_done = true;
>+ if (op != NULL) {
>+ op->_safepoint_cleanup_done = true;
>+ }
> }
>
> void ShenandoahRootProcessor::process_strong_roots(OopClosure* oops,
>@@ -185,7 +187,7 @@
> {
> heap->shenandoahPolicy()->record_workers_start(_phase);
>VM_ShenandoahOperation* op = (VM_ShenandoahOperation*)
>VMThread::vm_operation();
>- if (! op->_safepoint_cleanup_done) {
>+ if (op == NULL || !op->_safepoint_cleanup_done) {
> _threads_nmethods_cl = NMethodSweeper::prepare_mark_active_nmethods();
> }
> }
>@@ -194,7 +196,9 @@
> delete _process_strong_tasks;
>ShenandoahHeap::heap()->shenandoahPolicy()->record_workers_end(_phase);
>VM_ShenandoahOperation* op = (VM_ShenandoahOperation*)
>VMThread::vm_operation();
>- op->_safepoint_cleanup_done = true;
>+ if (op != NULL) {
>+ op->_safepoint_cleanup_done = true;
>+ }
> }
>
> void ShenandoahRootEvacuator::process_evacuate_roots(OopClosure* oops,
>
>
>Testing: hotspot_gc_shenandoah
>
>-Aleksey
--
Sent from my FairPhone
From ashipile at redhat.com Mon May 29 12:17:59 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 29 May 2017 12:17:59 +0000
Subject: hg: shenandoah/jdk9/hotspot: Root processors SEGV when executed
outside of VM operation
Message-ID: <201705291217.v4TCHxWD019254@aojmv0008.oracle.com>
Changeset: c5b6e9932852
Author: shade
Date: 2017-05-29 14:15 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/c5b6e9932852
Root processors SEGV when executed outside of VM operation
! src/share/vm/gc/shenandoah/shenandoahRootProcessor.cpp
From shade at redhat.com Mon May 29 15:14:31 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 29 May 2017 17:14:31 +0200
Subject: RFR: Reference processors might use non-forwarded alive checks
Message-ID: <48e69433-36aa-3170-b406-f591eeab0129@redhat.com>
Hi,
Current RPs are using ShenandoahIsForwardedAliveClosure, which always go via
fwdptr, assuming there could be a forwarded copy. However, with update-refs
phase, this is excessive.
Therefore, it makes sense to specialize for this case:
http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/webrev.01/
Improves concmark times, class unloading and weak refs a bit:
http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/before.txt
http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/after.txt
Testing: hotspot_gc_shenandoah
-Aleksey
From roman at kennke.org Mon May 29 15:18:38 2017
From: roman at kennke.org (Roman Kennke)
Date: Mon, 29 May 2017 17:18:38 +0200
Subject: RFR: Reference processors might use non-forwarded alive checks
In-Reply-To: <48e69433-36aa-3170-b406-f591eeab0129@redhat.com>
References: <48e69433-36aa-3170-b406-f591eeab0129@redhat.com>
Message-ID: <346abec1-d046-716c-385c-af0619940447@kennke.org>
Am 29.05.2017 um 17:14 schrieb Aleksey Shipilev:
> Hi,
>
> Current RPs are using ShenandoahIsForwardedAliveClosure, which always go via
> fwdptr, assuming there could be a forwarded copy. However, with update-refs
> phase, this is excessive.
>
> Therefore, it makes sense to specialize for this case:
> http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/webrev.01/
>
> Improves concmark times, class unloading and weak refs a bit:
> http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/before.txt
> http://cr.openjdk.java.net/~shade/shenandoah/refproc-isalive/after.txt
>
> Testing: hotspot_gc_shenandoah
>
> -Aleksey
>
>
Ok
From ashipile at redhat.com Mon May 29 15:22:14 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 29 May 2017 15:22:14 +0000
Subject: hg: shenandoah/jdk9/hotspot: Reference processors might use
non-forwarded alive checks
Message-ID: <201705291522.v4TFMENH009007@aojmv0008.oracle.com>
Changeset: 4d6a830dfa8a
Author: shade
Date: 2017-05-29 17:20 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/4d6a830dfa8a
Reference processors might use non-forwarded alive checks
! src/share/vm/gc/shared/referenceProcessor.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
From shade at redhat.com Mon May 29 16:54:20 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 29 May 2017 18:54:20 +0200
Subject: RFR: Print more detailed final UR stats
Message-ID: <6a36e777-7494-0c49-11ca-60737225f782@redhat.com>
This adds "Finish Work" and "Recycle" to Final Update Refs phase.
http://cr.openjdk.java.net/~shade/shenandoah/stats-final-ur-detail/webrev.01/
-Aleksey
From roman at kennke.org Mon May 29 16:55:21 2017
From: roman at kennke.org (Roman Kennke)
Date: Mon, 29 May 2017 18:55:21 +0200
Subject: RFR: Print more detailed final UR stats
In-Reply-To: <6a36e777-7494-0c49-11ca-60737225f782@redhat.com>
References: <6a36e777-7494-0c49-11ca-60737225f782@redhat.com>
Message-ID: <6292FF31-2E3B-4662-9388-F3C1D5AE43E6@kennke.org>
Great! Just what I was missing ;-)
Go!
Am 29. Mai 2017 18:54:20 MESZ schrieb Aleksey Shipilev :
>This adds "Finish Work" and "Recycle" to Final Update Refs phase.
>
>http://cr.openjdk.java.net/~shade/shenandoah/stats-final-ur-detail/webrev.01/
>
>-Aleksey
--
Sent from my FairPhone
From ashipile at redhat.com Mon May 29 17:07:38 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 29 May 2017 17:07:38 +0000
Subject: hg: shenandoah/jdk9/hotspot: Print more detailed final UR stats
Message-ID: <201705291707.v4TH7cUL008999@aojmv0008.oracle.com>
Changeset: fbdc982717e2
Author: shade
Date: 2017-05-29 19:05 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/fbdc982717e2
Print more detailed final UR stats
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From shade at redhat.com Mon May 29 18:12:38 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Mon, 29 May 2017 20:12:38 +0200
Subject: RFR: Print more details for weak ref and class unloading stats
Message-ID: <053b00d5-a618-d8a4-c1f0-333b4bf44412@redhat.com>
I would like to have more insight into "Weak References" and "Class Unloading"
phases:
http://cr.openjdk.java.net/~shade/shenandoah/stats-purge-weakrefs/webrev.01/
Sample report:
http://cr.openjdk.java.net/~shade/shenandoah/stats-purge-weakrefs/gcstats.txt
Testing: hotspot_gc_shenandoah
-Aleksey
From rkennke at redhat.com Mon May 29 18:14:26 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Mon, 29 May 2017 20:14:26 +0200
Subject: RFR: Print more details for weak ref and class unloading stats
In-Reply-To: <053b00d5-a618-d8a4-c1f0-333b4bf44412@redhat.com>
References: <053b00d5-a618-d8a4-c1f0-333b4bf44412@redhat.com>
Message-ID: <78bed9a2-a4e0-b396-ba20-e3a2f60fd738@redhat.com>
Am 29.05.2017 um 20:12 schrieb Aleksey Shipilev:
> I would like to have more insight into "Weak References" and "Class Unloading"
> phases:
> http://cr.openjdk.java.net/~shade/shenandoah/stats-purge-weakrefs/webrev.01/
>
> Sample report:
> http://cr.openjdk.java.net/~shade/shenandoah/stats-purge-weakrefs/gcstats.txt
>
> Testing: hotspot_gc_shenandoah
>
> -Aleksey
>
>
Looks useful! Yes!
From ashipile at redhat.com Mon May 29 18:36:42 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Mon, 29 May 2017 18:36:42 +0000
Subject: hg: shenandoah/jdk9/hotspot: Print more details for weak ref and
class unloading stats
Message-ID: <201705291836.v4TIagxq004670@aojmv0008.oracle.com>
Changeset: 300d4921e9db
Author: shade
Date: 2017-05-29 20:35 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/300d4921e9db
Print more details for weak ref and class unloading stats
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
From shade at redhat.com Tue May 30 07:31:43 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 09:31:43 +0200
Subject: RFR: Properly react on -ClassUnloading
Message-ID: <9953f059-6d5e-f300-67cf-9d9f622024c9@redhat.com>
Hi,
Let Shenandoah properly react on disabled class unloading:
$ hg diff
diff -r 300d4921e9db src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Mon May 29
20:35:00 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Tue May 30
09:23:57 2017 +0200
@@ -436,6 +436,7 @@
}
virtual bool unload_classes() {
+ if (ShenandoahUnloadClassesFrequency == 0) return false;
// Randomly unload classes with 50% chance.
return (os::random() & 1) == 1;
}
@@ -460,6 +461,7 @@
}
virtual bool unload_classes() {
+ if (ShenandoahUnloadClassesFrequency == 0) return false;
// Randomly unload classes with 50% chance.
return (os::random() & 1) == 1;
}
diff -r 300d4921e9db src/share/vm/runtime/arguments.cpp
--- a/src/share/vm/runtime/arguments.cpp Mon May 29 20:35:00 2017 +0200
+++ b/src/share/vm/runtime/arguments.cpp Tue May 30 09:23:57 2017 +0200
@@ -2137,6 +2137,7 @@
FLAG_SET_CMDLINE(bool, CMSClassUnloadingEnabled, false);
FLAG_SET_CMDLINE(bool, ClassUnloadingWithConcurrentMark, false);
FLAG_SET_CMDLINE(bool, ExplicitGCInvokesConcurrentAndUnloadsClasses, false);
+ FLAG_SET_CMDLINE(uintx, ShenandoahUnloadClassesFrequency, 0);
}
#endif // INCLUDE_ALL_GCS
}
Thanks,
-Aleksey
From shade at redhat.com Tue May 30 07:59:50 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 09:59:50 +0200
Subject: RFR: Passive heuristics should consistently process refs and unload
classes
Message-ID: <387d011d-c17e-ca2b-722d-058f0bd9a4f7@redhat.com>
We have copied the random block from Aggressive policy to Passive one. The goal
for random selection in Aggressive is to exercise all paths. For Passive, we are
better off being consistent:
$ hg diff
diff -r 1d44a55dc2c9 src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Tue May 30
09:45:47 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Tue May 30
09:56:58 2017 +0200
@@ -431,14 +431,14 @@
}
virtual bool process_references() {
- // Randomly process refs with 50% chance.
- return (os::random() & 1) == 1;
+ // Always process references.
+ return true;
}
virtual bool unload_classes() {
if (ShenandoahUnloadClassesFrequency == 0) return false;
- // Randomly unload classes with 50% chance.
- return (os::random() & 1) == 1;
+ // Always unload classes.
+ return true;
}
};
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From rkennke at redhat.com Tue May 30 08:25:49 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 30 May 2017 10:25:49 +0200
Subject: RFR: Properly react on -ClassUnloading
In-Reply-To: <9953f059-6d5e-f300-67cf-9d9f622024c9@redhat.com>
References: <9953f059-6d5e-f300-67cf-9d9f622024c9@redhat.com>
Message-ID: <8FFF85C9-41A5-465A-B431-7CA3129960BA@redhat.com>
Looks good
Am 30. Mai 2017 09:31:43 MESZ schrieb Aleksey Shipilev :
>Hi,
>
>Let Shenandoah properly react on disabled class unloading:
>
>$ hg diff
>diff -r 300d4921e9db
>src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
>--- a/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Mon May
>29
>20:35:00 2017 +0200
>+++ b/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Tue May
>30
>09:23:57 2017 +0200
>@@ -436,6 +436,7 @@
> }
>
> virtual bool unload_classes() {
>+ if (ShenandoahUnloadClassesFrequency == 0) return false;
> // Randomly unload classes with 50% chance.
> return (os::random() & 1) == 1;
> }
>@@ -460,6 +461,7 @@
> }
>
> virtual bool unload_classes() {
>+ if (ShenandoahUnloadClassesFrequency == 0) return false;
> // Randomly unload classes with 50% chance.
> return (os::random() & 1) == 1;
> }
>diff -r 300d4921e9db src/share/vm/runtime/arguments.cpp
>--- a/src/share/vm/runtime/arguments.cpp Mon May 29 20:35:00 2017 +0200
>+++ b/src/share/vm/runtime/arguments.cpp Tue May 30 09:23:57 2017 +0200
>@@ -2137,6 +2137,7 @@
> FLAG_SET_CMDLINE(bool, CMSClassUnloadingEnabled, false);
> FLAG_SET_CMDLINE(bool, ClassUnloadingWithConcurrentMark, false);
>FLAG_SET_CMDLINE(bool, ExplicitGCInvokesConcurrentAndUnloadsClasses,
>false);
>+ FLAG_SET_CMDLINE(uintx, ShenandoahUnloadClassesFrequency, 0);
> }
> #endif // INCLUDE_ALL_GCS
> }
>
>
>Thanks,
>-Aleksey
--
Sent from my FairPhone
From rkennke at redhat.com Tue May 30 08:26:36 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 30 May 2017 10:26:36 +0200
Subject: RFR: Passive heuristics should consistently process refs and
unload classes
In-Reply-To: <387d011d-c17e-ca2b-722d-058f0bd9a4f7@redhat.com>
References: <387d011d-c17e-ca2b-722d-058f0bd9a4f7@redhat.com>
Message-ID: <597B7698-DFA5-48C1-A3F3-C0C4B62897D3@redhat.com>
Ok
Am 30. Mai 2017 09:59:50 MESZ schrieb Aleksey Shipilev :
>We have copied the random block from Aggressive policy to Passive one.
>The goal
>for random selection in Aggressive is to exercise all paths. For
>Passive, we are
>better off being consistent:
>
>$ hg diff
>diff -r 1d44a55dc2c9
>src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
>--- a/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Tue May
>30
>09:45:47 2017 +0200
>+++ b/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Tue May
>30
>09:56:58 2017 +0200
>@@ -431,14 +431,14 @@
> }
>
> virtual bool process_references() {
>- // Randomly process refs with 50% chance.
>- return (os::random() & 1) == 1;
>+ // Always process references.
>+ return true;
> }
>
> virtual bool unload_classes() {
> if (ShenandoahUnloadClassesFrequency == 0) return false;
>- // Randomly unload classes with 50% chance.
>- return (os::random() & 1) == 1;
>+ // Always unload classes.
>+ return true;
> }
> };
>
>
>Testing: hotspot_gc_shenandoah
>
>Thanks,
>-Aleksey
--
Sent from my FairPhone
From shade at redhat.com Tue May 30 08:28:24 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 10:28:24 +0200
Subject: RFR: Mark-compact and heuristics should consistently process refs and
unload classes
In-Reply-To: <387d011d-c17e-ca2b-722d-058f0bd9a4f7@redhat.com>
References: <387d011d-c17e-ca2b-722d-058f0bd9a4f7@redhat.com>
Message-ID: <23eb9cb5-7a3c-5cb4-b952-6e87a0815a55@redhat.com>
On 05/30/2017 09:59 AM, Aleksey Shipilev wrote:
> We have copied the random block from Aggressive policy to Passive one. The goal
> for random selection in Aggressive is to exercise all paths. For Passive, we are
> better off being consistent:
Actually, let's also cover mark-compact parts:
http://cr.openjdk.java.net/~shade/shenandoah/passive-ur-cu/webrev.01/
-Aleksey
From rkennke at redhat.com Tue May 30 08:43:45 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 30 May 2017 10:43:45 +0200
Subject: RFR: Mark-compact and heuristics should consistently process refs
and unload classes
In-Reply-To: <23eb9cb5-7a3c-5cb4-b952-6e87a0815a55@redhat.com>
References: <387d011d-c17e-ca2b-722d-058f0bd9a4f7@redhat.com>
<23eb9cb5-7a3c-5cb4-b952-6e87a0815a55@redhat.com>
Message-ID: <536fcee7-d19d-c6e8-5159-08695c1dad8d@redhat.com>
Am 30.05.2017 um 10:28 schrieb Aleksey Shipilev:
> On 05/30/2017 09:59 AM, Aleksey Shipilev wrote:
>> We have copied the random block from Aggressive policy to Passive one. The goal
>> for random selection in Aggressive is to exercise all paths. For Passive, we are
>> better off being consistent:
> Actually, let's also cover mark-compact parts:
> http://cr.openjdk.java.net/~shade/shenandoah/passive-ur-cu/webrev.01/
>
> -Aleksey
>
I am not sure about this. I think the intention of the flags controlling
ref processing and class unloading were meant to affect regular GC
cycles. Mark-compact is our last-ditch collection and should always
process refs and unload classes. What would be a good reason to not do that?
Roman
From shade at redhat.com Tue May 30 08:48:06 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 10:48:06 +0200
Subject: RFR: Mark-compact and heuristics should consistently process refs
and unload classes
In-Reply-To: <536fcee7-d19d-c6e8-5159-08695c1dad8d@redhat.com>
References: <387d011d-c17e-ca2b-722d-058f0bd9a4f7@redhat.com>
<23eb9cb5-7a3c-5cb4-b952-6e87a0815a55@redhat.com>
<536fcee7-d19d-c6e8-5159-08695c1dad8d@redhat.com>
Message-ID:
On 05/30/2017 10:43 AM, Roman Kennke wrote:
> Am 30.05.2017 um 10:28 schrieb Aleksey Shipilev:
>> On 05/30/2017 09:59 AM, Aleksey Shipilev wrote:
>>> We have copied the random block from Aggressive policy to Passive one. The goal
>>> for random selection in Aggressive is to exercise all paths. For Passive, we are
>>> better off being consistent:
>> Actually, let's also cover mark-compact parts:
>> http://cr.openjdk.java.net/~shade/shenandoah/passive-ur-cu/webrev.01/
>>
>> -Aleksey
>>
> I am not sure about this. I think the intention of the flags controlling
> ref processing and class unloading were meant to affect regular GC
> cycles. Mark-compact is our last-ditch collection and should always
> process refs and unload classes. What would be a good reason to not do that?
I think that -ClassUnloading should disable class unloading even for last ditch
collections. It is a configuration error if disabling class unloading disallows
to reclaim needed space, but we should really honor that command. This is why
mark-compact cares only about it explicitly disabled.
Process weak refs is a bit similar, but this is mostly for internal work:
disabling ref processing should disable it everywhere, including last ditch
collection. This covers for the case when there is an accidental last ditch
collection in the middle of performance experiment.
-Aleksey
From rkennke at redhat.com Tue May 30 08:52:31 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 30 May 2017 10:52:31 +0200
Subject: RFR: Mark-compact and heuristics should consistently process refs
and unload classes
In-Reply-To:
References: <387d011d-c17e-ca2b-722d-058f0bd9a4f7@redhat.com>
<23eb9cb5-7a3c-5cb4-b952-6e87a0815a55@redhat.com>
<536fcee7-d19d-c6e8-5159-08695c1dad8d@redhat.com>
Message-ID: <90f3942c-fcd8-2ff4-1131-f92b3306e482@redhat.com>
Am 30.05.2017 um 10:48 schrieb Aleksey Shipilev:
> On 05/30/2017 10:43 AM, Roman Kennke wrote:
>> Am 30.05.2017 um 10:28 schrieb Aleksey Shipilev:
>>> On 05/30/2017 09:59 AM, Aleksey Shipilev wrote:
>>>> We have copied the random block from Aggressive policy to Passive one. The goal
>>>> for random selection in Aggressive is to exercise all paths. For Passive, we are
>>>> better off being consistent:
>>> Actually, let's also cover mark-compact parts:
>>> http://cr.openjdk.java.net/~shade/shenandoah/passive-ur-cu/webrev.01/
>>>
>>> -Aleksey
>>>
>> I am not sure about this. I think the intention of the flags controlling
>> ref processing and class unloading were meant to affect regular GC
>> cycles. Mark-compact is our last-ditch collection and should always
>> process refs and unload classes. What would be a good reason to not do that?
> I think that -ClassUnloading should disable class unloading even for last ditch
> collections. It is a configuration error if disabling class unloading disallows
> to reclaim needed space, but we should really honor that command. This is why
> mark-compact cares only about it explicitly disabled.
>
> Process weak refs is a bit similar, but this is mostly for internal work:
> disabling ref processing should disable it everywhere, including last ditch
> collection. This covers for the case when there is an accidental last ditch
> collection in the middle of performance experiment.
Ok fine then.
Roman
From ashipile at redhat.com Tue May 30 08:56:17 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 30 May 2017 08:56:17 +0000
Subject: hg: shenandoah/jdk9/hotspot: 3 new changesets
Message-ID: <201705300856.v4U8uH3J010809@aojmv0008.oracle.com>
Changeset: 1d44a55dc2c9
Author: shade
Date: 2017-05-30 09:45 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1d44a55dc2c9
Properly react on -ClassUnloading
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/runtime/arguments.cpp
Changeset: c9ba4c1addfe
Author: shade
Date: 2017-05-30 10:05 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/c9ba4c1addfe
Passive heuristics should consistently process refs and unload classes
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
Changeset: 350fec3079bb
Author: shade
Date: 2017-05-30 10:53 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/350fec3079bb
Mark-compact and heuristics should consistently process refs and unload classes
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
From shade at redhat.com Tue May 30 10:12:03 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 12:12:03 +0200
Subject: RFR: Update roots should always handle derived pointers
Message-ID:
Hi,
Follow my logic here.
It looks to me that every root modification needs to be wrapped with DPT::clear
and DPT::update_pointers to capture the rare stack-alloced beasts. However, we
are missing this pair for Final Update Refs. Therefore, this is the valid
fix/cleanup:
http://cr.openjdk.java.net/~shade/shenandoah/update-roots-dpt/webrev.01/
(Also checked all usages of ShenandoahRootEvacuator)
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From rkennke at redhat.com Tue May 30 10:50:01 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 30 May 2017 12:50:01 +0200
Subject: RFR: Update roots should always handle derived pointers
In-Reply-To:
References:
Message-ID:
Am 30.05.2017 um 12:12 schrieb Aleksey Shipilev:
> Hi,
>
> Follow my logic here.
>
> It looks to me that every root modification needs to be wrapped with DPT::clear
> and DPT::update_pointers to capture the rare stack-alloced beasts. However, we
> are missing this pair for Final Update Refs. Therefore, this is the valid
> fix/cleanup:
> http://cr.openjdk.java.net/~shade/shenandoah/update-roots-dpt/webrev.01/
>
> (Also checked all usages of ShenandoahRootEvacuator)
>
> Testing: hotspot_gc_shenandoah
Ugh. Lucky that it hasn't crashed on us yet.
Good to go!
Roman
From shade at redhat.com Tue May 30 10:55:24 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 12:55:24 +0200
Subject: RFR: Make statistics gathering span more operations
Message-ID: <19485d47-ca90-8067-113c-7ba690a853c0@redhat.com>
We seem to be doing some work in shadows, without GC stats recording it. I
scanned the code for all our VM ops, and this change moves the phase_(start|end)
statements around to capture the timings better:
http://cr.openjdk.java.net/~shade/shenandoah/stats-closer/webrev.01/
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From roman at kennke.org Tue May 30 10:58:23 2017
From: roman at kennke.org (Roman Kennke)
Date: Tue, 30 May 2017 12:58:23 +0200
Subject: RFR: Make statistics gathering span more operations
In-Reply-To: <19485d47-ca90-8067-113c-7ba690a853c0@redhat.com>
References: <19485d47-ca90-8067-113c-7ba690a853c0@redhat.com>
Message-ID: <9ab6950c-ce6c-0de0-0ad8-ba8bed87b452@kennke.org>
Am 30.05.2017 um 12:55 schrieb Aleksey Shipilev:
> We seem to be doing some work in shadows, without GC stats recording it. I
> scanned the code for all our VM ops, and this change moves the phase_(start|end)
> statements around to capture the timings better:
> http://cr.openjdk.java.net/~shade/shenandoah/stats-closer/webrev.01/
>
> Testing: hotspot_gc_shenandoah
Ok.
clear-matrix probably warrants its own measurement? Up to you.
Roman
From shade at redhat.com Tue May 30 11:00:06 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 13:00:06 +0200
Subject: RFR: Make statistics gathering span more operations
In-Reply-To: <9ab6950c-ce6c-0de0-0ad8-ba8bed87b452@kennke.org>
References: <19485d47-ca90-8067-113c-7ba690a853c0@redhat.com>
<9ab6950c-ce6c-0de0-0ad8-ba8bed87b452@kennke.org>
Message-ID:
On 05/30/2017 12:58 PM, Roman Kennke wrote:
> clear-matrix probably warrants its own measurement? Up to you.
I am not even sure it belongs there, because we clear the matrix in Init UR too.
Need to look through how matrix updates are handled in concmark.
-Aleksey
From ashipile at redhat.com Tue May 30 11:03:06 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 30 May 2017 11:03:06 +0000
Subject: hg: shenandoah/jdk9/hotspot: 2 new changesets
Message-ID: <201705301103.v4UB36pS017439@aojmv0008.oracle.com>
Changeset: fa254a9c4b1c
Author: shade
Date: 2017-05-30 12:17 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/fa254a9c4b1c
Update roots should always handle derived pointers
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
Changeset: 48b6de495475
Author: shade
Date: 2017-05-30 13:00 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/48b6de495475
Make statistics gathering span more operations
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/vm_operations_shenandoah.cpp
From shade at redhat.com Tue May 30 18:33:01 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 20:33:01 +0200
Subject: RFR: Remove matrix operations from concurrent mark
Message-ID:
We have discussed this before: matrix is needed for partial collections, partial
collections force update-refs phase, and update-refs rebuilds the matrix.
Therefore, matrix rebuild is not needed during concurrent mark. Moreover, we now
do double work: we first rebuild matrix during concmark, and then do it again
during update-refs! This is excessive.
This removes matrix operations from concurrent mark:
http://cr.openjdk.java.net/~shade/shenandoah/matrix-remove-cm/webrev.01/
Testing: hotspot_gc_shenandoah
Thanks,
-Aleksey
From rkennke at redhat.com Tue May 30 19:27:10 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 30 May 2017 21:27:10 +0200
Subject: RFR: Remove matrix operations from concurrent mark
In-Reply-To:
References:
Message-ID: <80155b42-c846-e224-10cf-e138e4b8b47d@redhat.com>
Am 30.05.2017 um 20:33 schrieb Aleksey Shipilev:
> We have discussed this before: matrix is needed for partial collections, partial
> collections force update-refs phase, and update-refs rebuilds the matrix.
> Therefore, matrix rebuild is not needed during concurrent mark. Moreover, we now
> do double work: we first rebuild matrix during concmark, and then do it again
> during update-refs! This is excessive.
>
> This removes matrix operations from concurrent mark:
> http://cr.openjdk.java.net/~shade/shenandoah/matrix-remove-cm/webrev.01/
>
> Testing: hotspot_gc_shenandoah
>
> Thanks,
> -Aleksey
>
Very good, yes!
Roman
From ashipile at redhat.com Tue May 30 19:32:53 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 30 May 2017 19:32:53 +0000
Subject: hg: shenandoah/jdk9/hotspot: Remove matrix operations from concurrent
mark
Message-ID: <201705301932.v4UJWrYG010818@aojmv0008.oracle.com>
Changeset: 1d2abaee9c79
Author: shade
Date: 2017-05-30 21:31 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1d2abaee9c79
Remove matrix operations from concurrent mark
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.inline.hpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahOopClosures.hpp
! src/share/vm/gc/shenandoah/shenandoahOopClosures.inline.hpp
! src/share/vm/gc/shenandoah/shenandoah_specialized_oop_closures.hpp
From shade at redhat.com Tue May 30 20:05:19 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 22:05:19 +0200
Subject: RFR: [8u] Increase timeout for EvilSyncBug test
Message-ID: <7d0613a4-33e3-2113-f6bd-977669bb8b39@redhat.com>
8u seems significantly slower in fastdebug than 9, and this test timeouts
intermittently. I propose we increase the timeout from 120 to 240 seconds.
$ hg diff
diff -r 6ee2dcaf8e98 test/gc/shenandoah/EvilSyncBug.java
--- a/test/gc/shenandoah/EvilSyncBug.java Tue May 30 22:00:06 2017 +0200
+++ b/test/gc/shenandoah/EvilSyncBug.java Tue May 30 22:01:10 2017 +0200
@@ -28,7 +28,7 @@
* @library /testlibrary
* @modules java.base/jdk.internal.misc
* java.management
- * @run driver EvilSyncBug
+ * @run driver/timeout=240 EvilSyncBug
*/
import java.util.*;
-Aleksey
From rkennke at redhat.com Tue May 30 20:15:58 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 30 May 2017 22:15:58 +0200
Subject: RFR: [8u] Increase timeout for EvilSyncBug test
In-Reply-To: <7d0613a4-33e3-2113-f6bd-977669bb8b39@redhat.com>
References: <7d0613a4-33e3-2113-f6bd-977669bb8b39@redhat.com>
Message-ID: <741a81e2-66f0-cd8f-df29-989a3d5c4f14@redhat.com>
Am 30.05.2017 um 22:05 schrieb Aleksey Shipilev:
> 8u seems significantly slower in fastdebug than 9, and this test timeouts
> intermittently. I propose we increase the timeout from 120 to 240 seconds.
>
> $ hg diff
> diff -r 6ee2dcaf8e98 test/gc/shenandoah/EvilSyncBug.java
> --- a/test/gc/shenandoah/EvilSyncBug.java Tue May 30 22:00:06 2017 +0200
> +++ b/test/gc/shenandoah/EvilSyncBug.java Tue May 30 22:01:10 2017 +0200
> @@ -28,7 +28,7 @@
> * @library /testlibrary
> * @modules java.base/jdk.internal.misc
> * java.management
> - * @run driver EvilSyncBug
> + * @run driver/timeout=240 EvilSyncBug
> */
>
> import java.util.*;
>
>
> -Aleksey
>
Yes please. I am running into this frequently. Can you also do this for
jdk9?
Roman
From shade at redhat.com Tue May 30 20:16:49 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Tue, 30 May 2017 22:16:49 +0200
Subject: RFR: [8u] Increase timeout for EvilSyncBug test
In-Reply-To: <741a81e2-66f0-cd8f-df29-989a3d5c4f14@redhat.com>
References: <7d0613a4-33e3-2113-f6bd-977669bb8b39@redhat.com>
<741a81e2-66f0-cd8f-df29-989a3d5c4f14@redhat.com>
Message-ID: <6085f556-cfa4-5cd2-9bac-ca18ac42e491@redhat.com>
On 05/30/2017 10:15 PM, Roman Kennke wrote:
> Am 30.05.2017 um 22:05 schrieb Aleksey Shipilev:
>> 8u seems significantly slower in fastdebug than 9, and this test timeouts
>> intermittently. I propose we increase the timeout from 120 to 240 seconds.
>>
>> $ hg diff
>> diff -r 6ee2dcaf8e98 test/gc/shenandoah/EvilSyncBug.java
>> --- a/test/gc/shenandoah/EvilSyncBug.java Tue May 30 22:00:06 2017 +0200
>> +++ b/test/gc/shenandoah/EvilSyncBug.java Tue May 30 22:01:10 2017 +0200
>> @@ -28,7 +28,7 @@
>> * @library /testlibrary
>> * @modules java.base/jdk.internal.misc
>> * java.management
>> - * @run driver EvilSyncBug
>> + * @run driver/timeout=240 EvilSyncBug
>> */
>>
>> import java.util.*;
>>
>>
>> -Aleksey
>>
> Yes please. I am running into this frequently. Can you also do this for
> jdk9?
I had never run into it in jdk9. Have you?
-Aleksey
From ashipile at redhat.com Tue May 30 20:23:53 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 30 May 2017 20:23:53 +0000
Subject: hg: shenandoah/jdk9/hotspot: Increase timeout for EvilSyncBug test
Message-ID: <201705302023.v4UKNsmB029185@aojmv0008.oracle.com>
Changeset: fa7fc20d6830
Author: shade
Date: 2017-05-30 22:21 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/fa7fc20d6830
Increase timeout for EvilSyncBug test
! test/gc/shenandoah/EvilSyncBug.java
From rkennke at redhat.com Tue May 30 20:23:11 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Tue, 30 May 2017 22:23:11 +0200
Subject: RFR: [8u] Increase timeout for EvilSyncBug test
In-Reply-To: <6085f556-cfa4-5cd2-9bac-ca18ac42e491@redhat.com>
References: <7d0613a4-33e3-2113-f6bd-977669bb8b39@redhat.com>
<741a81e2-66f0-cd8f-df29-989a3d5c4f14@redhat.com>
<6085f556-cfa4-5cd2-9bac-ca18ac42e491@redhat.com>
Message-ID:
Am 30.05.2017 um 22:16 schrieb Aleksey Shipilev:
> On 05/30/2017 10:15 PM, Roman Kennke wrote:
>> Am 30.05.2017 um 22:05 schrieb Aleksey Shipilev:
>>> 8u seems significantly slower in fastdebug than 9, and this test timeouts
>>> intermittently. I propose we increase the timeout from 120 to 240 seconds.
>>>
>>> $ hg diff
>>> diff -r 6ee2dcaf8e98 test/gc/shenandoah/EvilSyncBug.java
>>> --- a/test/gc/shenandoah/EvilSyncBug.java Tue May 30 22:00:06 2017 +0200
>>> +++ b/test/gc/shenandoah/EvilSyncBug.java Tue May 30 22:01:10 2017 +0200
>>> @@ -28,7 +28,7 @@
>>> * @library /testlibrary
>>> * @modules java.base/jdk.internal.misc
>>> * java.management
>>> - * @run driver EvilSyncBug
>>> + * @run driver/timeout=240 EvilSyncBug
>>> */
>>>
>>> import java.util.*;
>>>
>>>
>>> -Aleksey
>>>
>> Yes please. I am running into this frequently. Can you also do this for
>> jdk9?
> I had never run into it in jdk9. Have you?
>
> -Aleksey
>
>
Yes
Roman
From ashipile at redhat.com Tue May 30 20:31:55 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Tue, 30 May 2017 20:31:55 +0000
Subject: hg: shenandoah/jdk8u/hotspot: 9 new changesets
Message-ID: <201705302031.v4UKVtLV001740@aojmv0008.oracle.com>
Changeset: 7b7333e1e690
Author: shade
Date: 2017-05-30 21:07 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/7b7333e1e690
[backport] "Allocation failure" cause should not be overwritten
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentThread.cpp
Changeset: ac228f432b1c
Author: shade
Date: 2017-05-30 21:18 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/ac228f432b1c
[backport] Reference processors might use non-forwarded alive checks
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
! src/share/vm/memory/referenceProcessor.hpp
Changeset: 35acb4f34e46
Author: shade
Date: 2017-05-30 21:24 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/35acb4f34e46
[backport] Print more detailed final UR stats
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
Changeset: 41eaa057925b
Author: shade
Date: 2017-05-30 21:29 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/41eaa057925b
[backport] Print more details for weak ref and class unloading stats
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahHeap.hpp
Changeset: c677c87c1dd8
Author: shade
Date: 2017-05-30 21:33 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/c677c87c1dd8
[backport] Properly react on -ClassUnloading
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/runtime/arguments.cpp
Changeset: a89527c8bf52
Author: shade
Date: 2017-05-30 21:38 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/a89527c8bf52
[backport] Mark-compact and heuristics should consistently process refs and unload classes
! src/share/vm/gc_implementation/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.cpp
Changeset: 1ed298447f11
Author: shade
Date: 2017-05-30 21:45 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/1ed298447f11
[backport] Update roots should always handle derived pointers
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc_implementation/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc_implementation/shenandoah/shenandoahMarkCompact.cpp
Changeset: 6ee2dcaf8e98
Author: shade
Date: 2017-05-30 22:00 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/6ee2dcaf8e98
[backport] Make statistics gathering span more operations
! src/share/vm/gc_implementation/shenandoah/vm_operations_shenandoah.cpp
Changeset: 1e24af43f934
Author: shade
Date: 2017-05-30 22:21 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk8u/hotspot/rev/1e24af43f934
[backport] Increase timeout for EvilSyncBug test
! test/gc/shenandoah/EvilSyncBug.java
From shade at redhat.com Wed May 31 11:48:21 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 13:48:21 +0200
Subject: RFR: Concurrent preclean
Message-ID: <4a141dba-33c4-54fd-c449-683e873b55ac@redhat.com>
Hi,
Lots of weak references is hard. Processing them during the pause is also hard.
For some applications I've tried, the pause is very long. While studying
reference processing code I realized we can do something that CMS already does
-- concurrently precleaning before diving into STW.
See:
http://cr.openjdk.java.net/~shade/shenandoah/preclean/webrev.01/
For example, retaining a 10M WeakHashMap, before/after:
http://cr.openjdk.java.net/~shade/shenandoah/preclean/before.txt
http://cr.openjdk.java.net/~shade/shenandoah/preclean/after.txt
So the positive thing is that it moves a substantial part of pause to concurrent
mode. The downside is that it is in the middle between concmark and final mark,
which may accumulate more cruft in SATBs. But, with small reference count, the
new phase takes just a bit of time, and with lots of references, we still have
the net win. We can consider draining SATB during preclean later.
Testing: hotspot_gc_shenandoah, jcstress -m quick
-Aleksey
From rkennke at redhat.com Wed May 31 11:59:34 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 31 May 2017 13:59:34 +0200
Subject: RFR: Concurrent preclean
In-Reply-To: <4a141dba-33c4-54fd-c449-683e873b55ac@redhat.com>
References: <4a141dba-33c4-54fd-c449-683e873b55ac@redhat.com>
Message-ID: <0edc4b6a-260a-8f00-4fb0-1ea294ae986a@redhat.com>
Am 31.05.2017 um 13:48 schrieb Aleksey Shipilev:
> Hi,
>
> Lots of weak references is hard. Processing them during the pause is also hard.
> For some applications I've tried, the pause is very long. While studying
> reference processing code I realized we can do something that CMS already does
> -- concurrently precleaning before diving into STW.
>
> See:
> http://cr.openjdk.java.net/~shade/shenandoah/preclean/webrev.01/
>
> For example, retaining a 10M WeakHashMap, before/after:
> http://cr.openjdk.java.net/~shade/shenandoah/preclean/before.txt
> http://cr.openjdk.java.net/~shade/shenandoah/preclean/after.txt
>
> So the positive thing is that it moves a substantial part of pause to concurrent
> mode. The downside is that it is in the middle between concmark and final mark,
> which may accumulate more cruft in SATBs. But, with small reference count, the
> new phase takes just a bit of time, and with lots of references, we still have
> the net win. We can consider draining SATB during preclean later.
>
> Testing: hotspot_gc_shenandoah, jcstress -m quick
>
> -Aleksey
>
Sounds good.
- what's that commented part in referenceProcessor.cpp ?
- is precleaning single-threaded? if yes, can it be made multithreaded?
- isn't experimental flag defaulting to true pointless? shouldn't it be
diagnostic-> default true, experimental -> default false? (not very
important to me...)
Roman
From shade at redhat.com Wed May 31 12:20:22 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 14:20:22 +0200
Subject: RFR: Concurrent preclean
In-Reply-To: <0edc4b6a-260a-8f00-4fb0-1ea294ae986a@redhat.com>
References: <4a141dba-33c4-54fd-c449-683e873b55ac@redhat.com>
<0edc4b6a-260a-8f00-4fb0-1ea294ae986a@redhat.com>
Message-ID: <62f93fa0-1c35-9c4a-55b8-76f988ad2953@redhat.com>
On 05/31/2017 01:59 PM, Roman Kennke wrote:
> - what's that commented part in referenceProcessor.cpp ?
Ah, leftover I had from performance experiments that exacerbate the issue to
extreme. That commented block is the initial filtering on reference discovery.
Removed:
http://cr.openjdk.java.net/~shade/shenandoah/preclean/webrev.02/
> - is precleaning single-threaded? if yes, can it be made multithreaded?
RP has only single-threaded precleaning. But it can be multi-threaded if RP
supported it, like it supports MT reference processing. Trying to do this
outside of RP would be incorrect.
> - isn't experimental flag defaulting to true pointless? shouldn't it be
> diagnostic-> default true, experimental -> default false? (not very
> important to me...)
I thought we mark all our kill-switches "experimental", regardless of their
default value. Kept as is.
-Aleksey
From rkennke at redhat.com Wed May 31 12:25:13 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 31 May 2017 14:25:13 +0200
Subject: RFR: Concurrent preclean
In-Reply-To: <62f93fa0-1c35-9c4a-55b8-76f988ad2953@redhat.com>
References: <4a141dba-33c4-54fd-c449-683e873b55ac@redhat.com>
<0edc4b6a-260a-8f00-4fb0-1ea294ae986a@redhat.com>
<62f93fa0-1c35-9c4a-55b8-76f988ad2953@redhat.com>
Message-ID:
Am 31.05.2017 um 14:20 schrieb Aleksey Shipilev:
> On 05/31/2017 01:59 PM, Roman Kennke wrote:
>> - what's that commented part in referenceProcessor.cpp ?
> Ah, leftover I had from performance experiments that exacerbate the issue to
> extreme. That commented block is the initial filtering on reference discovery.
>
> Removed:
> http://cr.openjdk.java.net/~shade/shenandoah/preclean/webrev.02/
>
>
>> - is precleaning single-threaded? if yes, can it be made multithreaded?
> RP has only single-threaded precleaning. But it can be multi-threaded if RP
> supported it, like it supports MT reference processing. Trying to do this
> outside of RP would be incorrect.
>
>> - isn't experimental flag defaulting to true pointless? shouldn't it be
>> diagnostic-> default true, experimental -> default false? (not very
>> important to me...)
> I thought we mark all our kill-switches "experimental", regardless of their
> default value. Kept as is.
>
> -Aleksey
>
Ok good to go.
Just out of curiousity: would MT precleaning win us anything significant?
Roman
From shade at redhat.com Wed May 31 12:27:52 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 14:27:52 +0200
Subject: RFR: Concurrent preclean
In-Reply-To:
References: <4a141dba-33c4-54fd-c449-683e873b55ac@redhat.com>
<0edc4b6a-260a-8f00-4fb0-1ea294ae986a@redhat.com>
<62f93fa0-1c35-9c4a-55b8-76f988ad2953@redhat.com>
Message-ID:
On 05/31/2017 02:25 PM, Roman Kennke wrote:
> Just out of curiousity: would MT precleaning win us anything significant?
It probably would make the cycle shorter in wall time, which is better for
heuristics. But that's a second order effect, and probably does not worth
considering right now. The other thing is shorter gap to final mark, but that
again can be solved by draining SATB along the way. Let's see if that is
problematic in workloads.
-Aleksey
From ashipile at redhat.com Wed May 31 12:48:08 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 31 May 2017 12:48:08 +0000
Subject: hg: shenandoah/jdk9/hotspot: Concurrent preclean.
Message-ID: <201705311248.v4VCm9N4013389@aojmv0008.oracle.com>
Changeset: add34cede0df
Author: shade
Date: 2017-05-31 14:46 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/add34cede0df
Concurrent preclean.
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.hpp
! src/share/vm/gc/shenandoah/shenandoahConcurrentThread.cpp
! src/share/vm/gc/shenandoah/shenandoah_globals.hpp
From shade at redhat.com Wed May 31 16:23:57 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 18:23:57 +0200
Subject: RFR: Dense ShHeapRegion printout
Message-ID:
Hi,
G1-style heap region printout (e.g. in hs_err_*) is nice and compact, let
Shenandoah do the same:
http://cr.openjdk.java.net/~shade/shenandoah/shr-print-line/webrev.01/
Sample hs_err:
http://cr.openjdk.java.net/~shade/shenandoah/shr-print-line/hs_err_pid31766.log
Thanks,
-Aleksey
From zgu at redhat.com Wed May 31 17:45:53 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 13:45:53 -0400
Subject: RFR: Dense ShHeapRegion printout
In-Reply-To:
References:
Message-ID: <43aecd04-dea1-032e-7ffa-bf49c67dc6c7@redhat.com>
Looks great and very useful.
Thanks,
-Zhengyu
On 05/31/2017 12:23 PM, Aleksey Shipilev wrote:
> Hi,
>
> G1-style heap region printout (e.g. in hs_err_*) is nice and compact, let
> Shenandoah do the same:
> http://cr.openjdk.java.net/~shade/shenandoah/shr-print-line/webrev.01/
>
> Sample hs_err:
> http://cr.openjdk.java.net/~shade/shenandoah/shr-print-line/hs_err_pid31766.log
>
> Thanks,
> -Aleksey
>
From ashipile at redhat.com Wed May 31 17:51:48 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 31 May 2017 17:51:48 +0000
Subject: hg: shenandoah/jdk9/hotspot: Dense ShenandoahHeapRegion printout
Message-ID: <201705311751.v4VHpmMo020526@aojmv0008.oracle.com>
Changeset: 7f114a445de8
Author: shade
Date: 2017-05-31 19:48 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/7f114a445de8
Dense ShenandoahHeapRegion printout
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegion.cpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegion.hpp
From rkennke at redhat.com Wed May 31 17:59:30 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 31 May 2017 19:59:30 +0200
Subject: RFR: Fix weakref precleaning
Message-ID:
Weakref precleaning does infact need to do something in the
keepalive-closure:
- It must update internal refs in j.l.r.Reference instances. I.e. make
referent point to to-space
- It must mark through the next field for references that are enqueued
And therefore the complete_gc closure also needs to process stuff on the
marking stack.
The patch fixes those issues plus also drains SATB buffers, and adds a
ResourceMark for -Xlog:gc+ref logging.
http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.00/
Testing: hotspot_gc_shenandoah and some specjvm
From zgu at redhat.com Wed May 31 18:04:01 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 14:04:01 -0400
Subject: RFR(S): Ensure collection set and cset map are consistent, and a few
cleanup
Message-ID: <86cf8598-6b2f-e274-dc61-04cd073a6030@redhat.com>
Added collection set/cset fast test verification code, and restricting
access to cset fast test map to ensure they are consistent.
Also, eliminated unused parameters in ShenandoahPolicy code, plus a few
cleanup.
We might want to get rid of region cache in collection set. instead,
just have collection set to wrap around cset fast test. I will
experiment this later.
Webrev:
http://cr.openjdk.java.net/~zgu/shenandoah/cset_cleanup/webrev.00/index.html
Thanks,
-Zhengyu
From shade at redhat.com Wed May 31 18:05:38 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 20:05:38 +0200
Subject: RFR: Fix weakref precleaning
In-Reply-To:
References:
Message-ID: <5fd87199-2397-7263-efe2-3670c5eb3a85@redhat.com>
On 05/31/2017 07:59 PM, Roman Kennke wrote:
> Weakref precleaning does infact need to do something in the
> keepalive-closure:
>
> - It must update internal refs in j.l.r.Reference instances. I.e. make
> referent point to to-space
> - It must mark through the next field for references that are enqueued
>
> And therefore the complete_gc closure also needs to process stuff on the
> marking stack.
>
> The patch fixes those issues plus also drains SATB buffers, and adds a
> ResourceMark for -Xlog:gc+ref logging.
>
> http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.00/
Thanks for doing this.
Comments:
*) ShenandoahPrecleanKeepAliveUpdateClosure is not used. Seems like a bug! It
should be used on need_update_refs() path, right?
*) Can use ReferenceProcessorIsAliveMutator, because RP is not null there
*) Double ";"
819 ReferenceProcessor* rp = sh->ref_processor();;
*) Misleading comment:
825 true, // do not drain SATBs
*) Leftovers:
872 tty->print_cr("need update refs");
...
880 tty->print_cr("don't need update refs");
Thanks,
-Aleksey
From shade at redhat.com Wed May 31 18:12:52 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 20:12:52 +0200
Subject: RFR(S): Ensure collection set and cset map are consistent, and a
few cleanup
In-Reply-To: <86cf8598-6b2f-e274-dc61-04cd073a6030@redhat.com>
References: <86cf8598-6b2f-e274-dc61-04cd073a6030@redhat.com>
Message-ID: <2b00ea6b-9096-3713-066b-097073003967@redhat.com>
On 05/31/2017 08:04 PM, Zhengyu Gu wrote:
> Added collection set/cset fast test verification code, and restricting access to
> cset fast test map to ensure they are consistent.
>
> Also, eliminated unused parameters in ShenandoahPolicy code, plus a few cleanup.
>
> We might want to get rid of region cache in collection set. instead, just have
> collection set to wrap around cset fast test. I will experiment this later.
>
> Webrev:
> http://cr.openjdk.java.net/~zgu/shenandoah/cset_cleanup/webrev.00/index.html
Excellent, this always disturbed me.
*) This looks okay, but chf's partial would trade that "int* connections"
parameter for "ShConnMatrix*". I think that leaving this cleanup alone helps chf
to not to rebase much:
189 virtual void choose_collection_set(ShenandoahCollectionSet*
collection_set, int* connections=NULL);
*) Is removal of this branch meaningful? It was supposed to avoid some stores:
228 if (!r->is_root()) {
229 r->set_root(true);
230 }
*) I don't think looped partial GC belongs in this change. Split it out?
Thanks,
-Aleksey
From zgu at redhat.com Wed May 31 18:25:42 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 14:25:42 -0400
Subject: RFR(S): Ensure collection set and cset map are consistent, and a
few cleanup
In-Reply-To: <2b00ea6b-9096-3713-066b-097073003967@redhat.com>
References: <86cf8598-6b2f-e274-dc61-04cd073a6030@redhat.com>
<2b00ea6b-9096-3713-066b-097073003967@redhat.com>
Message-ID: <0e8e9ce3-da40-9ed6-d019-b59ca95b333f@redhat.com>
On 05/31/2017 02:12 PM, Aleksey Shipilev wrote:
> On 05/31/2017 08:04 PM, Zhengyu Gu wrote:
>> Added collection set/cset fast test verification code, and restricting access to
>> cset fast test map to ensure they are consistent.
>>
>> Also, eliminated unused parameters in ShenandoahPolicy code, plus a few cleanup.
>>
>> We might want to get rid of region cache in collection set. instead, just have
>> collection set to wrap around cset fast test. I will experiment this later.
>>
>> Webrev:
>> http://cr.openjdk.java.net/~zgu/shenandoah/cset_cleanup/webrev.00/index.html
>
> Excellent, this always disturbed me.
>
> *) This looks okay, but chf's partial would trade that "int* connections"
> parameter for "ShConnMatrix*". I think that leaving this cleanup alone helps chf
> to not to rebase much:
>
> 189 virtual void choose_collection_set(ShenandoahCollectionSet*
> collection_set, int* connections=NULL);
>
OK, I will revert this.
> *) Is removal of this branch meaningful? It was supposed to avoid some stores:
>
> 228 if (!r->is_root()) {
> 229 r->set_root(true);
> 230 }
Just a bit awkward. Do those stores matter? It is at a safepoint, and
you have region in cache anyway.
>
> *) I don't think looped partial GC belongs in this change. Split it out?
>
I will split this out.
Thanks,
-Zhengyu
> Thanks,
> -Aleksey
>
From shade at redhat.com Wed May 31 18:27:52 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 20:27:52 +0200
Subject: RFR(S): Ensure collection set and cset map are consistent, and a
few cleanup
In-Reply-To: <0e8e9ce3-da40-9ed6-d019-b59ca95b333f@redhat.com>
References: <86cf8598-6b2f-e274-dc61-04cd073a6030@redhat.com>
<2b00ea6b-9096-3713-066b-097073003967@redhat.com>
<0e8e9ce3-da40-9ed6-d019-b59ca95b333f@redhat.com>
Message-ID:
On 05/31/2017 08:25 PM, Zhengyu Gu wrote:
>> *) Is removal of this branch meaningful? It was supposed to avoid some stores:
>>
>> 228 if (!r->is_root()) {
>> 229 r->set_root(true);
>> 230 }
>
> Just a bit awkward. Do those stores matter? It is at a safepoint, and you have
> region in cache anyway.
Yes it does. Trading write for branch is a profitable microoptimization,
especially if you are looking into doing Threshold*NumRegions of writes ;)
-Aleksey
From shade at redhat.com Wed May 31 18:35:32 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 20:35:32 +0200
Subject: RFR: "String/Symbol/CodeCache" -> "Str/Sym, Code Cache"
Message-ID: <63a08566-2013-396e-c0df-fbd08b71ee59@redhat.com>
This trims down the largest label in our gc+stats, ensuring proper alignment:
$ hg diff
diff -r 7f114a445de8 src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Wed May 31
19:48:09 2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Wed May 31
20:32:15 2017 +0200
@@ -800,7 +800,7 @@
_phase_names[weakrefs_enqueue] = " Enqueue";
_phase_names[purge] = " System Purge";
_phase_names[purge_class_unload] = " Unload Classes";
- _phase_names[purge_tables_cc] = " String/Symbol/CodeCache";
+ _phase_names[purge_tables_cc] = " Str/Sym, Code Cache";
_phase_names[purge_cldg] = " CLDG";
_phase_names[prepare_evac] = " Prepare Evacuation";
@@ -873,7 +873,7 @@
_phase_names[full_gc_weakrefs_enqueue] = " Enqueue";
_phase_names[full_gc_purge] = " System Purge";
_phase_names[full_gc_purge_class_unload] = " Unload Classes";
- _phase_names[full_gc_purge_tables_cc] = " String/Symbol/CodeCache";
+ _phase_names[full_gc_purge_tables_cc] = " Str/Sym, Code Cache";
_phase_names[full_gc_purge_cldg] = " CLDG";
_phase_names[full_gc_calculate_addresses] = " Calculate Addresses";
_phase_names[full_gc_adjust_pointers] = " Adjust Pointers";
Thanks,
-Aleksey
From zgu at redhat.com Wed May 31 19:01:03 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 15:01:03 -0400
Subject: RFR(S): Ensure collection set and cset map are consistent, and a
few cleanup
In-Reply-To:
References: <86cf8598-6b2f-e274-dc61-04cd073a6030@redhat.com>
<2b00ea6b-9096-3713-066b-097073003967@redhat.com>
<0e8e9ce3-da40-9ed6-d019-b59ca95b333f@redhat.com>
Message-ID: <0f79b302-d286-78a1-843f-ccb799b2f786@redhat.com>
Webrev updated:
http://cr.openjdk.java.net/~zgu/shenandoah/cset_cleanup/webrev.01/index.html
Thanks,
-Zhengyu
On 05/31/2017 02:27 PM, Aleksey Shipilev wrote:
> On 05/31/2017 08:25 PM, Zhengyu Gu wrote:
>>> *) Is removal of this branch meaningful? It was supposed to avoid some stores:
>>>
>>> 228 if (!r->is_root()) {
>>> 229 r->set_root(true);
>>> 230 }
>>
>> Just a bit awkward. Do those stores matter? It is at a safepoint, and you have
>> region in cache anyway.
>
> Yes it does. Trading write for branch is a profitable microoptimization,
> especially if you are looking into doing Threshold*NumRegions of writes ;)
>
> -Aleksey
>
>
From rkennke at redhat.com Wed May 31 19:02:10 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 31 May 2017 21:02:10 +0200
Subject: RFR: Fix weakref precleaning
In-Reply-To: <5fd87199-2397-7263-efe2-3670c5eb3a85@redhat.com>
References:
<5fd87199-2397-7263-efe2-3670c5eb3a85@redhat.com>
Message-ID:
Am 31.05.2017 um 20:05 schrieb Aleksey Shipilev:
> On 05/31/2017 07:59 PM, Roman Kennke wrote:
>> Weakref precleaning does infact need to do something in the
>> keepalive-closure:
>>
>> - It must update internal refs in j.l.r.Reference instances. I.e. make
>> referent point to to-space
>> - It must mark through the next field for references that are enqueued
>>
>> And therefore the complete_gc closure also needs to process stuff on the
>> marking stack.
>>
>> The patch fixes those issues plus also drains SATB buffers, and adds a
>> ResourceMark for -Xlog:gc+ref logging.
>>
>> http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.00/
> Thanks for doing this.
>
> Comments:
>
> *) ShenandoahPrecleanKeepAliveUpdateClosure is not used. Seems like a bug! It
> should be used on need_update_refs() path, right?
>
> *) Can use ReferenceProcessorIsAliveMutator, because RP is not null there
>
> *) Double ";"
>
> 819 ReferenceProcessor* rp = sh->ref_processor();;
>
> *) Misleading comment:
>
> 825 true, // do not drain SATBs
>
> *) Leftovers:
>
> 872 tty->print_cr("need update refs");
> ...
> 880 tty->print_cr("don't need update refs");
>
Oops. Shouldn't do stuff in a rush.
http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.01/
Ok now?
Roman
From shade at redhat.com Wed May 31 19:03:15 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 21:03:15 +0200
Subject: RFR(S): Ensure collection set and cset map are consistent, and a
few cleanup
In-Reply-To: <0f79b302-d286-78a1-843f-ccb799b2f786@redhat.com>
References: <86cf8598-6b2f-e274-dc61-04cd073a6030@redhat.com>
<2b00ea6b-9096-3713-066b-097073003967@redhat.com>
<0e8e9ce3-da40-9ed6-d019-b59ca95b333f@redhat.com>
<0f79b302-d286-78a1-843f-ccb799b2f786@redhat.com>
Message-ID: <03a1ba78-e943-77d9-5659-d8fa151c185f@redhat.com>
On 05/31/2017 09:01 PM, Zhengyu Gu wrote:
> Webrev updated:
> http://cr.openjdk.java.net/~zgu/shenandoah/cset_cleanup/webrev.01/index.html
Looks good to me.
-Aleksey
From shade at redhat.com Wed May 31 19:08:32 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 21:08:32 +0200
Subject: RFR: Fix weakref precleaning
In-Reply-To:
References:
<5fd87199-2397-7263-efe2-3670c5eb3a85@redhat.com>
Message-ID: <6a4edb05-a990-c60c-eb1d-bd89365e837d@redhat.com>
On 05/31/2017 09:02 PM, Roman Kennke wrote:
> Oops. Shouldn't do stuff in a rush.
> http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.01/
Remaining nits:
*) Since you removed the branch that made rp possibly NULL, you can use
ReferenceProcessorIsAliveMutator again:
600 ReferenceProcessor* rp = sh->ref_processor();;
601
602 ReferenceProcessorMaybeNullIsAliveMutator fix_alive(rp,
ShenandoahHeap::heap()->is_alive_closure());
*) Also notice ";;" above
Other than that looks good.
-Aleksey
From rkennke at redhat.com Wed May 31 19:10:47 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 31 May 2017 21:10:47 +0200
Subject: RFR: Fix weakref precleaning
In-Reply-To: <6a4edb05-a990-c60c-eb1d-bd89365e837d@redhat.com>
References:
<5fd87199-2397-7263-efe2-3670c5eb3a85@redhat.com>
<6a4edb05-a990-c60c-eb1d-bd89365e837d@redhat.com>
Message-ID: <6f7611db-bc82-c54e-f485-fb34adfe2cd8@redhat.com>
Am 31.05.2017 um 21:08 schrieb Aleksey Shipilev:
> On 05/31/2017 09:02 PM, Roman Kennke wrote:
>> Oops. Shouldn't do stuff in a rush.
>> http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.01/
> Remaining nits:
>
> *) Since you removed the branch that made rp possibly NULL, you can use
> ReferenceProcessorIsAliveMutator again:
>
> 600 ReferenceProcessor* rp = sh->ref_processor();;
> 601
> 602 ReferenceProcessorMaybeNullIsAliveMutator fix_alive(rp,
> ShenandoahHeap::heap()->is_alive_closure());
>
> *) Also notice ";;" above
>
> Other than that looks good.
Duh.
http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.02/
Roman
From shade at redhat.com Wed May 31 19:12:03 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 21:12:03 +0200
Subject: RFR: Fix weakref precleaning
In-Reply-To: <6f7611db-bc82-c54e-f485-fb34adfe2cd8@redhat.com>
References:
<5fd87199-2397-7263-efe2-3670c5eb3a85@redhat.com>
<6a4edb05-a990-c60c-eb1d-bd89365e837d@redhat.com>
<6f7611db-bc82-c54e-f485-fb34adfe2cd8@redhat.com>
Message-ID: <04f0d0e5-5bbf-4f06-ea78-2d0990b2e3b5@redhat.com>
On 05/31/2017 09:10 PM, Roman Kennke wrote:
> Am 31.05.2017 um 21:08 schrieb Aleksey Shipilev:
>> On 05/31/2017 09:02 PM, Roman Kennke wrote:
>>> Oops. Shouldn't do stuff in a rush.
>>> http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.01/
>> Remaining nits:
>>
>> *) Since you removed the branch that made rp possibly NULL, you can use
>> ReferenceProcessorIsAliveMutator again:
>>
>> 600 ReferenceProcessor* rp = sh->ref_processor();;
>> 601
>> 602 ReferenceProcessorMaybeNullIsAliveMutator fix_alive(rp,
>> ShenandoahHeap::heap()->is_alive_closure());
>>
>> *) Also notice ";;" above
>>
>> Other than that looks good.
>
> Duh.
>
> http://cr.openjdk.java.net/~rkennke/fixpreclean/webrev.02/
Yup, go.
-Aleksey
From roman at kennke.org Wed May 31 19:14:48 2017
From: roman at kennke.org (roman at kennke.org)
Date: Wed, 31 May 2017 19:14:48 +0000
Subject: hg: shenandoah/jdk9/hotspot: Fix weakref precleaning
Message-ID: <201705311914.v4VJEn8D022138@aojmv0008.oracle.com>
Changeset: de1d145d1fc1
Author: rkennke
Date: 2017-05-31 21:13 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/de1d145d1fc1
Fix weakref precleaning
! src/share/vm/gc/shenandoah/shenandoahConcurrentMark.cpp
From zgu at redhat.com Wed May 31 19:25:18 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 15:25:18 -0400
Subject: RFR(XS) Early return results imbalanced time partition
Message-ID: <2174c6a8-5f52-21a8-ba59-8d25ef7691e8@redhat.com>
Imbalanced time partition results assertion failure in debug build.
Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/tp_unbalance/webrev.00/
Test:
hotspot_gc_shenandoah: fastdebug
Thanks,
-Zhengyu
From shade at redhat.com Wed May 31 19:27:21 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 21:27:21 +0200
Subject: RFR(XS) Early return results imbalanced time partition
In-Reply-To: <2174c6a8-5f52-21a8-ba59-8d25ef7691e8@redhat.com>
References: <2174c6a8-5f52-21a8-ba59-8d25ef7691e8@redhat.com>
Message-ID:
On 05/31/2017 09:25 PM, Zhengyu Gu wrote:
> Imbalanced time partition results assertion failure in debug build.
Can you explain a little more?
-Aleksey
From zgu at redhat.com Wed May 31 19:30:03 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 15:30:03 -0400
Subject: RFR(XS) Early return results imbalanced time partition
In-Reply-To:
References: <2174c6a8-5f52-21a8-ba59-8d25ef7691e8@redhat.com>
Message-ID: <61c33ed5-a139-7c3f-26b5-bba5572e0754@redhat.com>
In early return case, calling _heap->gc_timer()->register_gc_end()
before GCTraceTime destructor, result an assertion in GCTimer code.
-Zhengyu
On 05/31/2017 03:27 PM, Aleksey Shipilev wrote:
> On 05/31/2017 09:25 PM, Zhengyu Gu wrote:
>> Imbalanced time partition results assertion failure in debug build.
>
> Can you explain a little more?
>
> -Aleksey
>
From zgu at redhat.com Wed May 31 19:34:34 2017
From: zgu at redhat.com (zgu at redhat.com)
Date: Wed, 31 May 2017 19:34:34 +0000
Subject: hg: shenandoah/jdk9/hotspot: Ensure collection set and cset map are
consistent
Message-ID: <201705311934.v4VJYY8R000266@aojmv0008.oracle.com>
Changeset: 2732d513a136
Author: zgu
Date: 2017-05-31 15:32 -0400
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/2732d513a136
Ensure collection set and cset map are consistent
! src/share/vm/gc/shenandoah/shenandoahCollectionSet.cpp
! src/share/vm/gc/shenandoah/shenandoahCollectionSet.hpp
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
! src/share/vm/gc/shenandoah/shenandoahHeap.hpp
! src/share/vm/gc/shenandoah/shenandoahHeapRegionSet.hpp
! src/share/vm/gc/shenandoah/shenandoahMarkCompact.cpp
! src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
From shade at redhat.com Wed May 31 19:33:43 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 21:33:43 +0200
Subject: RFR(XS) Early return results imbalanced time partition
In-Reply-To: <61c33ed5-a139-7c3f-26b5-bba5572e0754@redhat.com>
References: <2174c6a8-5f52-21a8-ba59-8d25ef7691e8@redhat.com>
<61c33ed5-a139-7c3f-26b5-bba5572e0754@redhat.com>
Message-ID: <52d4ad82-1f73-ff5b-7663-66d52071a1ee@redhat.com>
Ah! So while loop is meant to be the scope which you can break from. Using goto
would be less cryptic, no?
diff -r de1d145d1fc1 src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
--- a/src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp Wed May 31 21:13:12
2017 +0200
+++ b/src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp Wed May 31 21:33:19
2017 +0200
@@ -296,8 +296,7 @@
if (!has_work) {
reset();
- _heap->gc_timer()->register_gc_end();
- return;
+ goto end;
}
policy->record_phase_start(ShenandoahCollectorPolicy::partial_gc_work);
@@ -369,6 +368,7 @@
}
}
+ end:
_heap->gc_timer()->register_gc_end();
}
-Aleksey
On 05/31/2017 09:30 PM, Zhengyu Gu wrote:
> In early return case, calling _heap->gc_timer()->register_gc_end() before
> GCTraceTime destructor, result an assertion in GCTimer code.
>
> -Zhengyu
>
> On 05/31/2017 03:27 PM, Aleksey Shipilev wrote:
>> On 05/31/2017 09:25 PM, Zhengyu Gu wrote:
>>> Imbalanced time partition results assertion failure in debug build.
>>
>> Can you explain a little more?
>>
>> -Aleksey
>>
From zgu at redhat.com Wed May 31 19:36:50 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 15:36:50 -0400
Subject: RFR(XS) Early return results imbalanced time partition
In-Reply-To: <52d4ad82-1f73-ff5b-7663-66d52071a1ee@redhat.com>
References: <2174c6a8-5f52-21a8-ba59-8d25ef7691e8@redhat.com>
<61c33ed5-a139-7c3f-26b5-bba5572e0754@redhat.com>
<52d4ad82-1f73-ff5b-7663-66d52071a1ee@redhat.com>
Message-ID: <7dbc0f16-7100-de4a-33bf-18eb98dc070a@redhat.com>
People hates/avoid goto, no?
-Zhengyu
On 05/31/2017 03:33 PM, Aleksey Shipilev wrote:
> Ah! So while loop is meant to be the scope which you can break from. Using goto
> would be less cryptic, no?
>
> diff -r de1d145d1fc1 src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp Wed May 31 21:13:12
> 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp Wed May 31 21:33:19
> 2017 +0200
> @@ -296,8 +296,7 @@
>
> if (!has_work) {
> reset();
> - _heap->gc_timer()->register_gc_end();
> - return;
> + goto end;
> }
>
> policy->record_phase_start(ShenandoahCollectorPolicy::partial_gc_work);
> @@ -369,6 +368,7 @@
> }
> }
>
> + end:
> _heap->gc_timer()->register_gc_end();
> }
>
>
> -Aleksey
>
> On 05/31/2017 09:30 PM, Zhengyu Gu wrote:
>> In early return case, calling _heap->gc_timer()->register_gc_end() before
>> GCTraceTime destructor, result an assertion in GCTimer code.
>>
>> -Zhengyu
>>
>> On 05/31/2017 03:27 PM, Aleksey Shipilev wrote:
>>> On 05/31/2017 09:25 PM, Zhengyu Gu wrote:
>>>> Imbalanced time partition results assertion failure in debug build.
>>>
>>> Can you explain a little more?
>>>
>>> -Aleksey
>>>
>
>
From shade at redhat.com Wed May 31 19:38:27 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 21:38:27 +0200
Subject: RFR(XS) Early return results imbalanced time partition
In-Reply-To: <7dbc0f16-7100-de4a-33bf-18eb98dc070a@redhat.com>
References: <2174c6a8-5f52-21a8-ba59-8d25ef7691e8@redhat.com>
<61c33ed5-a139-7c3f-26b5-bba5572e0754@redhat.com>
<52d4ad82-1f73-ff5b-7663-66d52071a1ee@redhat.com>
<7dbc0f16-7100-de4a-33bf-18eb98dc070a@redhat.com>
Message-ID: <507f94a5-6ad4-f7c8-2e6f-b1aebcac0204@redhat.com>
Irrationally. Sometimes goto is cleaner than anything else, like in this case.
-Aleksey
On 05/31/2017 09:36 PM, Zhengyu Gu wrote:
> People hates/avoid goto, no?
>
> -Zhengyu
>
> On 05/31/2017 03:33 PM, Aleksey Shipilev wrote:
>> Ah! So while loop is meant to be the scope which you can break from. Using goto
>> would be less cryptic, no?
>>
>> diff -r de1d145d1fc1 src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
>> --- a/src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp Wed May 31 21:13:12
>> 2017 +0200
>> +++ b/src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp Wed May 31 21:33:19
>> 2017 +0200
>> @@ -296,8 +296,7 @@
>>
>> if (!has_work) {
>> reset();
>> - _heap->gc_timer()->register_gc_end();
>> - return;
>> + goto end;
>> }
>>
>> policy->record_phase_start(ShenandoahCollectorPolicy::partial_gc_work);
>> @@ -369,6 +368,7 @@
>> }
>> }
>>
>> + end:
>> _heap->gc_timer()->register_gc_end();
>> }
>>
>>
>> -Aleksey
>>
>> On 05/31/2017 09:30 PM, Zhengyu Gu wrote:
>>> In early return case, calling _heap->gc_timer()->register_gc_end() before
>>> GCTraceTime destructor, result an assertion in GCTimer code.
>>>
>>> -Zhengyu
>>>
>>> On 05/31/2017 03:27 PM, Aleksey Shipilev wrote:
>>>> On 05/31/2017 09:25 PM, Zhengyu Gu wrote:
>>>>> Imbalanced time partition results assertion failure in debug build.
>>>>
>>>> Can you explain a little more?
>>>>
>>>> -Aleksey
>>>>
>>
>>
From zgu at redhat.com Wed May 31 19:47:00 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 15:47:00 -0400
Subject: RFR: "String/Symbol/CodeCache" -> "Str/Sym, Code Cache"
In-Reply-To: <63a08566-2013-396e-c0df-fbd08b71ee59@redhat.com>
References: <63a08566-2013-396e-c0df-fbd08b71ee59@redhat.com>
Message-ID:
Okay
-Zhengyu
On 05/31/2017 02:35 PM, Aleksey Shipilev wrote:
> This trims down the largest label in our gc+stats, ensuring proper alignment:
>
> $ hg diff
> diff -r 7f114a445de8 src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
> --- a/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Wed May 31
> 19:48:09 2017 +0200
> +++ b/src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp Wed May 31
> 20:32:15 2017 +0200
> @@ -800,7 +800,7 @@
> _phase_names[weakrefs_enqueue] = " Enqueue";
> _phase_names[purge] = " System Purge";
> _phase_names[purge_class_unload] = " Unload Classes";
> - _phase_names[purge_tables_cc] = " String/Symbol/CodeCache";
> + _phase_names[purge_tables_cc] = " Str/Sym, Code Cache";
> _phase_names[purge_cldg] = " CLDG";
> _phase_names[prepare_evac] = " Prepare Evacuation";
>
> @@ -873,7 +873,7 @@
> _phase_names[full_gc_weakrefs_enqueue] = " Enqueue";
> _phase_names[full_gc_purge] = " System Purge";
> _phase_names[full_gc_purge_class_unload] = " Unload Classes";
> - _phase_names[full_gc_purge_tables_cc] = " String/Symbol/CodeCache";
> + _phase_names[full_gc_purge_tables_cc] = " Str/Sym, Code Cache";
> _phase_names[full_gc_purge_cldg] = " CLDG";
> _phase_names[full_gc_calculate_addresses] = " Calculate Addresses";
> _phase_names[full_gc_adjust_pointers] = " Adjust Pointers";
>
>
>
> Thanks,
> -Aleksey
>
>
From shade at redhat.com Wed May 31 19:53:57 2017
From: shade at redhat.com (Aleksey Shipilev)
Date: Wed, 31 May 2017 21:53:57 +0200
Subject: RFR: Rehash ShenandoahHeap section in hs_err
Message-ID: <7a3b6c2b-e76e-ae8f-b9aa-07e21b4b8308@redhat.com>
Turns out, recent heap region formatting change omitted printing out the header
ShenandoahHeap data in hs_err. Fixed that, plus added a few more missing things:
http://cr.openjdk.java.net/~shade/shenandoah/hserr-printout/webrev.01/
Sample hs_err:
http://cr.openjdk.java.net/~shade/shenandoah/hserr-printout/hs_err_pid4475.log
Thanks,
-Aleksey
From zgu at redhat.com Wed May 31 19:57:07 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 15:57:07 -0400
Subject: RFR: Rehash ShenandoahHeap section in hs_err
In-Reply-To: <7a3b6c2b-e76e-ae8f-b9aa-07e21b4b8308@redhat.com>
References: <7a3b6c2b-e76e-ae8f-b9aa-07e21b4b8308@redhat.com>
Message-ID: <9d0c7114-8cff-1ae3-4607-39006675ae30@redhat.com>
okay
-Zhengyu
On 05/31/2017 03:53 PM, Aleksey Shipilev wrote:
> Turns out, recent heap region formatting change omitted printing out the header
> ShenandoahHeap data in hs_err. Fixed that, plus added a few more missing things:
> http://cr.openjdk.java.net/~shade/shenandoah/hserr-printout/webrev.01/
>
> Sample hs_err:
> http://cr.openjdk.java.net/~shade/shenandoah/hserr-printout/hs_err_pid4475.log
>
> Thanks,
> -Aleksey
>
From ashipile at redhat.com Wed May 31 20:04:18 2017
From: ashipile at redhat.com (ashipile at redhat.com)
Date: Wed, 31 May 2017 20:04:18 +0000
Subject: hg: shenandoah/jdk9/hotspot: 2 new changesets
Message-ID: <201705312004.v4VK4InI011924@aojmv0008.oracle.com>
Changeset: 1d12c549a5ff
Author: shade
Date: 2017-05-31 21:48 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1d12c549a5ff
"String/Symbol/CodeCache" -> "Str/Sym, Code Cache"
! src/share/vm/gc/shenandoah/shenandoahCollectorPolicy.cpp
Changeset: 1b6d33c71e07
Author: shade
Date: 2017-05-31 21:59 +0200
URL: http://hg.openjdk.java.net/shenandoah/jdk9/hotspot/rev/1b6d33c71e07
Rehash ShenandoahHeap section in hs_err
! src/share/vm/gc/shenandoah/shenandoahHeap.cpp
From rkennke at redhat.com Wed May 31 20:30:01 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 31 May 2017 22:30:01 +0200
Subject: RFR: Safepooint suspendible worker threads
Message-ID: <2e8114a3-59c4-5042-738c-28cd92eff3e6@redhat.com>
Currently, our GC workers are unaffected by (non-GC) safepoints: they
happily carry on working their stuff. This is usually not a problem.
However, lately we found that concurrent code cache marking sometimes
barfs between the nmethod marking/sweeping sometimes steps in between
(during a non-GC safepoint). Also, heapdump seems to rely on the heap
holding still (naturally). We don't really know what other VM_Ops might
depend on the heap/GC holding still and the general assumption is that
nothing moves at a safepoint except the VMThread and the workers it spawns.
This change makes Shenandoah's GC worker threads suspend at safepoints.
It uses G1's (not G1-specific) SuspendibleThreadSet.
It requires some extra magic to coordinate with full-gc. Specifically,
when we check for cancelled heap, we must not yield when being
cancelled. In order to do so, we first CAS _cancelled_gc to
NOT_CANCELLED (prevents cancelling threads to bump it to CANCELLED while
we yield()), then yield() (check for safepoint and suspend).
I spared making ShenandoahConcurrentThread to take part in this dance.
I'll probably add that later, however it seems not important (and will
require some additional complicated co-ordination).
It's enabled by -XX:+ShenandoahSuspendibleWorkers and off by default.
Works like a charm for me on or off. We should check if/how it affects
performance.
Testing: hotspot_gc_shenandoah and specjvm
http://cr.openjdk.java.net/~rkennke/suspendibleworkers/webrev.00/
Roman
From rkennke at redhat.com Wed May 31 20:41:48 2017
From: rkennke at redhat.com (Roman Kennke)
Date: Wed, 31 May 2017 22:41:48 +0200
Subject: RFR: Safepooint suspendible worker threads
In-Reply-To: <2e8114a3-59c4-5042-738c-28cd92eff3e6@redhat.com>
References: <2e8114a3-59c4-5042-738c-28cd92eff3e6@redhat.com>
Message-ID: <40472237-ee91-7631-5281-415a9f0ab2ec@redhat.com>
Am 31.05.2017 um 22:30 schrieb Roman Kennke:
> Currently, our GC workers are unaffected by (non-GC) safepoints: they
> happily carry on working their stuff. This is usually not a problem.
> However, lately we found that concurrent code cache marking sometimes
> barfs between the nmethod marking/sweeping sometimes steps in between
> (during a non-GC safepoint). Also, heapdump seems to rely on the heap
> holding still (naturally). We don't really know what other VM_Ops might
> depend on the heap/GC holding still and the general assumption is that
> nothing moves at a safepoint except the VMThread and the workers it spawns.
>
> This change makes Shenandoah's GC worker threads suspend at safepoints.
>
> It uses G1's (not G1-specific) SuspendibleThreadSet.
>
> It requires some extra magic to coordinate with full-gc. Specifically,
> when we check for cancelled heap, we must not yield when being
> cancelled. In order to do so, we first CAS _cancelled_gc to
> NOT_CANCELLED (prevents cancelling threads to bump it to CANCELLED while
> we yield()), then yield() (check for safepoint and suspend).
>
> I spared making ShenandoahConcurrentThread to take part in this dance.
> I'll probably add that later, however it seems not important (and will
> require some additional complicated co-ordination).
>
> It's enabled by -XX:+ShenandoahSuspendibleWorkers and off by default.
> Works like a charm for me on or off. We should check if/how it affects
> performance.
>
> Testing: hotspot_gc_shenandoah and specjvm
>
> http://cr.openjdk.java.net/~rkennke/suspendibleworkers/webrev.00/
>
>
> Roman
>
Need to suspend (no pun!!) this RFR. Found a deadlock.
Roman
From zgu at redhat.com Wed May 31 21:05:04 2017
From: zgu at redhat.com (Zhengyu Gu)
Date: Wed, 31 May 2017 17:05:04 -0400
Subject: RFR(XS) Early return results imbalanced time partition
In-Reply-To: <507f94a5-6ad4-f7c8-2e6f-b1aebcac0204@redhat.com>
References: <2174c6a8-5f52-21a8-ba59-8d25ef7691e8@redhat.com>
<61c33ed5-a139-7c3f-26b5-bba5572e0754@redhat.com>
<52d4ad82-1f73-ff5b-7663-66d52071a1ee@redhat.com>
<7dbc0f16-7100-de4a-33bf-18eb98dc070a@redhat.com>
<507f94a5-6ad4-f7c8-2e6f-b1aebcac0204@redhat.com>
Message-ID:
Okay, then:
http://cr.openjdk.java.net/~zgu/shenandoah/tp_unbalance/webrev.01/
-Zhengyu
On 05/31/2017 03:38 PM, Aleksey Shipilev wrote:
> Irrationally. Sometimes goto is cleaner than anything else, like in this case.
>
> -Aleksey
>
> On 05/31/2017 09:36 PM, Zhengyu Gu wrote:
>> People hates/avoid goto, no?
>>
>> -Zhengyu
>>
>> On 05/31/2017 03:33 PM, Aleksey Shipilev wrote:
>>> Ah! So while loop is meant to be the scope which you can break from. Using goto
>>> would be less cryptic, no?
>>>
>>> diff -r de1d145d1fc1 src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp
>>> --- a/src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp Wed May 31 21:13:12
>>> 2017 +0200
>>> +++ b/src/share/vm/gc/shenandoah/shenandoahPartialGC.cpp Wed May 31 21:33:19
>>> 2017 +0200
>>> @@ -296,8 +296,7 @@
>>>
>>> if (!has_work) {
>>> reset();
>>> - _heap->gc_timer()->register_gc_end();
>>> - return;
>>> + goto end;
>>> }
>>>
>>> policy->record_phase_start(ShenandoahCollectorPolicy::partial_gc_work);
>>> @@ -369,6 +368,7 @@
>>> }
>>> }
>>>
>>> + end:
>>> _heap->gc_timer()->register_gc_end();
>>> }
>>>
>>>
>>> -Aleksey
>>>
>>> On 05/31/2017 09:30 PM, Zhengyu Gu wrote:
>>>> In early return case, calling _heap->gc_timer()->register_gc_end() before
>>>> GCTraceTime destructor, result an assertion in GCTimer code.
>>>>
>>>> -Zhengyu
>>>>
>>>> On 05/31/2017 03:27 PM, Aleksey Shipilev wrote:
>>>>> On 05/31/2017 09:25 PM, Zhengyu Gu wrote:
>>>>>> Imbalanced time partition results assertion failure in debug build.
>>>>>
>>>>> Can you explain a little more?
>>>>>
>>>>> -Aleksey
>>>>>
>>>
>>>
>
>
From mart.magi at outlook.com Wed May 10 15:37:50 2017
From: mart.magi at outlook.com (=?iso-8859-1?Q?Mart_M=E4gi?=)
Date: Wed, 10 May 2017 15:37:50 -0000
Subject: Shenandoah general availability release
Message-ID:
Hello,
When will Shenandoah be released to general availability?
Thanks in advance,
Mart M?gi