From rwestrel at redhat.com Mon Jun 3 07:54:48 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Mon, 03 Jun 2019 09:54:48 +0200 Subject: RFR (11): Streamline CAS barriers, C2 ideal graph generation and matching In-Reply-To: References: Message-ID: <87o93f9k8n.fsf@redhat.com> > http://cr.openjdk.java.net/~rkennke/jdk11-streamline-cas-c2/webrev.00/ Looks ok to me. Roland. From shade at redhat.com Mon Jun 3 09:15:37 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Mon, 3 Jun 2019 11:15:37 +0200 Subject: RFR (S) 8225046: Shenandoah metrics logs refactoring Message-ID: <6b0bf928-2750-a01b-07f4-4c5d2a3853af@redhat.com> RFE: https://bugs.openjdk.java.net/browse/JDK-8225046 Shenandoah uses internal metrics to gauge progress in degenerated and full GC. The logging there can be refactored a bit: it should clearly show the progress decisions made. Also, there is a bug in displaying the external fragmentation. Fix: http://cr.openjdk.java.net/~shade/8225046/webrev.01/ Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From rkennke at redhat.com Mon Jun 3 09:28:44 2019 From: rkennke at redhat.com (rkennke at redhat.com) Date: Mon, 03 Jun 2019 09:28:44 +0000 Subject: hg: shenandoah/jdk11: Streamline CAS barriers, C2 ideal graph generation and matching Message-ID: <201906030928.x539SjJo009705@aojmv0008.oracle.com> Changeset: 674ff4da0611 Author: rkennke Date: 2019-05-30 12:53 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/674ff4da0611 Streamline CAS barriers, C2 ideal graph generation and matching Reviewed-by: shade, roland ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/adlc/formssel.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.hpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.hpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/escape.cpp ! src/hotspot/share/opto/matcher.cpp From rkennke at redhat.com Mon Jun 3 09:30:54 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 3 Jun 2019 11:30:54 +0200 Subject: RFR (S) 8225046: Shenandoah metrics logs refactoring In-Reply-To: <6b0bf928-2750-a01b-07f4-4c5d2a3853af@redhat.com> References: <6b0bf928-2750-a01b-07f4-4c5d2a3853af@redhat.com> Message-ID: <0a6a550c-96ed-29b0-d501-748545b7b158@redhat.com> > RFE: > https://bugs.openjdk.java.net/browse/JDK-8225046 > > Shenandoah uses internal metrics to gauge progress in degenerated and full GC. The logging there can > be refactored a bit: it should clearly show the progress decisions made. Also, there is a bug in > displaying the external fragmentation. > > Fix: > http://cr.openjdk.java.net/~shade/8225046/webrev.01/ > > Testing: hotspot_gc_shenandoah > Looks good to me. Thanks, Roman From rkennke at redhat.com Mon Jun 3 10:23:27 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 3 Jun 2019 12:23:27 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> Message-ID: <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> Hi Aleksey, > First look: > > *) src/hotspot/share/ci/ciObjectFactory.cpp > I don't see sh/jdk11 change that needs to be reverted... Fixed. > *) src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.cpp > This is needed why? I don't see it used in Shenandoah code anywhere. There is a definition in > src/hotspot/share/gc/shared/c1/barrierSetC1.cpp, though. > > 34 #ifndef PATCHED_ADDR > 35 #define PATCHED_ADDR (max_jint) > 36 #endif Filed: https://bugs.openjdk.java.net/browse/JDK-8225171 > *) src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.hpp > This breaks Solaris. (also, see other enums?) > > 47 ShenandoahNone, > 48 }; Fixed. I only found this one instance of the problem. > *) src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp > This thing looks like the accidental backport of pre-evac-ing all roots. As explained earlier, this was needed to get it to work correctly at all, because of different/missing non-heap-barriers. AFAICT, this is as close as possible to original LRB patch. > *) src/hotspot/share/opto/mulnode.cpp > This does not seem related to LRB all that much. We'd need to see if matcher still matches > fastpaths right. Yup. Reverted and adapted to LRB. http://cr.openjdk.java.net/~rkennke/backport-jdk11-JDK-8221766/webrev.01/ (give it a few minutes...) Roman From rkennke at redhat.com Mon Jun 3 13:23:15 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 3 Jun 2019 15:23:15 +0200 Subject: RFR (11): Backport LRB-related fixes Message-ID: <72e185ec-0664-1ac3-1a4a-d956aeb3f27f@redhat.com> This backports the bunch of bugfixes related to LRB, to sh/jdk11: - JDK-8222129: Shenandoah: Missing CompareAndSwapP/N case in get_barrier_strength() - JDK-8222786: Shenandoah get_barrier_strength should accept all shapes of (Weak)CAS reference barriers - JDK-8223448: Shenandoah disabled barriers blocks omit LRB - JDK-8224667: Shenandoah: Post-LRB cleanup http://cr.openjdk.java.net/~rkennke/backport-jdk11-lrb-fixes/webrev.00/ My plan is to push this together with the big LRB backport, once both are reviewed. Testing: hotspot_gc_shenandoah ok Roman From shade at redhat.com Mon Jun 3 13:24:51 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Mon, 3 Jun 2019 15:24:51 +0200 Subject: RFR (11): Backport LRB-related fixes In-Reply-To: <72e185ec-0664-1ac3-1a4a-d956aeb3f27f@redhat.com> References: <72e185ec-0664-1ac3-1a4a-d956aeb3f27f@redhat.com> Message-ID: On 6/3/19 3:23 PM, Roman Kennke wrote: > http://cr.openjdk.java.net/~rkennke/backport-jdk11-lrb-fixes/webrev.00/ Looks fine. -Aleksey From shade at redhat.com Mon Jun 3 13:37:51 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Mon, 3 Jun 2019 15:37:51 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> Message-ID: On 6/3/19 12:23 PM, Roman Kennke wrote: > http://cr.openjdk.java.net/~rkennke/backport-jdk11-JDK-8221766/webrev.01/ Looks okay to me. -- Thanks, -Aleksey From rkennke at redhat.com Mon Jun 3 18:28:27 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 3 Jun 2019 20:28:27 +0200 Subject: RFR: JDK-8225171: Remove leftovers in shenandoahBarrierSetC1.cpp Message-ID: <93a6c3c8-e7ef-2705-2d90-ad2574ef944b@redhat.com> In shenandoahBarrierSetC1.cpp, we have a few leftover #define PATCHED_ADDR, from pre-LRB. Bug: https://bugs.openjdk.java.net/browse/JDK-8225171 Webrev: http://cr.openjdk.java.net/~rkennke/JDK-8225171/webrev.00/ Testing: hotspot_gc_shenandoah Ok? Roman From shade at redhat.com Mon Jun 3 18:30:16 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Mon, 3 Jun 2019 20:30:16 +0200 Subject: RFR: JDK-8225171: Remove leftovers in shenandoahBarrierSetC1.cpp In-Reply-To: <93a6c3c8-e7ef-2705-2d90-ad2574ef944b@redhat.com> References: <93a6c3c8-e7ef-2705-2d90-ad2574ef944b@redhat.com> Message-ID: On 6/3/19 8:28 PM, Roman Kennke wrote: > In shenandoahBarrierSetC1.cpp, we have a few leftover #define > PATCHED_ADDR, from pre-LRB. > > Bug: > https://bugs.openjdk.java.net/browse/JDK-8225171 > Webrev: > http://cr.openjdk.java.net/~rkennke/JDK-8225171/webrev.00/ Looks good and trivial. -Aleksey From rkennke at redhat.com Tue Jun 4 09:31:34 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 4 Jun 2019 11:31:34 +0200 Subject: RFR(11): Add missing include after latest CAS streamlining Message-ID: <34599b17-4d0e-14dd-b104-2fe10de45ee5@redhat.com> -PCH exposes a problem with missing include in sh/jdk11. The include is present in jdk/jdk. Testing: build with -PCH Ok? diff -r 674ff4da0611 src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp --- a/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp Thu May 30 12:53:32 2019 +0200 +++ b/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp Tue Jun 04 11:29:52 2019 +0200 @@ -32,6 +32,7 @@ #include "opto/graphKit.hpp" #include "opto/idealKit.hpp" #include "opto/macro.hpp" +#include "opto/narrowptrnode.hpp" ShenandoahBarrierSetC2* ShenandoahBarrierSetC2::bsc2() { return reinterpret_cast(BarrierSet::barrier_set()->barrier_set_c2()); From shade at redhat.com Tue Jun 4 09:32:56 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Tue, 4 Jun 2019 11:32:56 +0200 Subject: RFR(11): Add missing include after latest CAS streamlining In-Reply-To: <34599b17-4d0e-14dd-b104-2fe10de45ee5@redhat.com> References: <34599b17-4d0e-14dd-b104-2fe10de45ee5@redhat.com> Message-ID: <2baaab0b-a9ad-f0f4-4146-24ca96bdd4e3@redhat.com> On 6/4/19 11:31 AM, Roman Kennke wrote: > -PCH exposes a problem with missing include in sh/jdk11. The include is > present in jdk/jdk. > > Testing: build with -PCH > > Ok? > > diff -r 674ff4da0611 > src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp > --- a/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp Thu > May 30 12:53:32 2019 +0200 > +++ b/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp Tue > Jun 04 11:29:52 2019 +0200 > @@ -32,6 +32,7 @@ > #include "opto/graphKit.hpp" > #include "opto/idealKit.hpp" > #include "opto/macro.hpp" > +#include "opto/narrowptrnode.hpp" > > ShenandoahBarrierSetC2* ShenandoahBarrierSetC2::bsc2() { > return > reinterpret_cast(BarrierSet::barrier_set()->barrier_set_c2()); Looks good. -- Thanks, -Aleksey From rkennke at redhat.com Tue Jun 4 09:34:00 2019 From: rkennke at redhat.com (rkennke at redhat.com) Date: Tue, 04 Jun 2019 09:34:00 +0000 Subject: hg: shenandoah/jdk11: Add missing include after latest CAS streamlining Message-ID: <201906040934.x549Y0A6018481@aojmv0008.oracle.com> Changeset: fd22d3a74ded Author: rkennke Date: 2019-06-04 11:31 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/fd22d3a74ded Add missing include after latest CAS streamlining ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp From shade at redhat.com Tue Jun 4 18:04:48 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Tue, 4 Jun 2019 20:04:48 +0200 Subject: RFR (S) 8225229: Shenandoah: trim down default number of GC threads Message-ID: RFE: https://bugs.openjdk.java.net/browse/JDK-8225229 We can trim down the default number of GC threads to make Shenandoah more cooperative with the application and OS scheduler. We routinely trim down concurrent threads when deploying, and better default would make deployment stories simpler. Various tests show that defaulting to 1/4*N_CPU concurrent and 1/2*N_CPU parallel threads hits the sweet spot. New test verifies boundary conditions. Patch: http://cr.openjdk.java.net/~shade/8225229/webrev.01/ Testing: hotspot_gc_shenandoah {fastdebug|release} -- Thanks, -Aleksey From rkennke at redhat.com Tue Jun 4 18:41:32 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 4 Jun 2019 20:41:32 +0200 Subject: RFR (S) 8225229: Shenandoah: trim down default number of GC threads In-Reply-To: References: Message-ID: That looks good to me! Yes, I also always trimmed GC threads ~like this. Roman > RFE: > https://bugs.openjdk.java.net/browse/JDK-8225229 > > We can trim down the default number of GC threads to make Shenandoah more cooperative with the > application and OS scheduler. We routinely trim down concurrent threads when deploying, and better > default would make deployment stories simpler. Various tests show that defaulting to 1/4*N_CPU > concurrent and 1/2*N_CPU parallel threads hits the sweet spot. New test verifies boundary conditions. > > Patch: > http://cr.openjdk.java.net/~shade/8225229/webrev.01/ > > Testing: hotspot_gc_shenandoah {fastdebug|release} > From rwestrel at redhat.com Wed Jun 5 11:22:04 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 05 Jun 2019 13:22:04 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> Message-ID: <877ea0ffab.fsf@redhat.com> >> http://cr.openjdk.java.net/~rkennke/backport-jdk11-JDK-8221766/webrev.01/ graphKit.cpp You pulled an unrelated change: 3892 store_to_memory(ctrl, basic_plus_adr(str, coder_offset), 3893 value, T_BYTE, coder_field_idx, MemNode::unordered); cfgnode.hpp That change doesn't seem needed Otherwise looks good. Roland. From rkennke at redhat.com Wed Jun 5 11:46:17 2019 From: rkennke at redhat.com (Roman Kennke) Date: Wed, 5 Jun 2019 13:46:17 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: <877ea0ffab.fsf@redhat.com> References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> <877ea0ffab.fsf@redhat.com> Message-ID: <47c8dae0-dd89-2d64-7c60-7ca7f1b97e35@redhat.com> >>> http://cr.openjdk.java.net/~rkennke/backport-jdk11-JDK-8221766/webrev.01/ > > graphKit.cpp > > You pulled an unrelated change: > > 3892 store_to_memory(ctrl, basic_plus_adr(str, coder_offset), > 3893 value, T_BYTE, coder_field_idx, MemNode::unordered); It reverts the part back to original jdk11 upstream because we no longer need to insert into the control flow there. Is that not ok? See: https://builds.shipilev.net/patch-openjdk-shenandoah-jdk11/src/hotspot/share/opto/cfgnode.cpp.udiff.html > cfgnode.hpp > > That change doesn't seem needed Are you sure? We do have a corresponding call to step_over_gc_barrier() in jdk/jdk too. http://hg.openjdk.java.net/jdk/jdk/file/ce8bab2c4185/src/hotspot/share/opto/cfgnode.cpp#l1451 Roman From rwestrel at redhat.com Wed Jun 5 12:25:44 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Wed, 05 Jun 2019 14:25:44 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: <47c8dae0-dd89-2d64-7c60-7ca7f1b97e35@redhat.com> References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> <877ea0ffab.fsf@redhat.com> <47c8dae0-dd89-2d64-7c60-7ca7f1b97e35@redhat.com> Message-ID: <874l54fcc7.fsf@redhat.com> > It reverts the part back to original jdk11 upstream because we no longer > need to insert into the control flow there. Is that not ok? Ah ok. That change is good. >> cfgnode.hpp >> >> That change doesn't seem needed > > Are you sure? We do have a corresponding call to step_over_gc_barrier() > in jdk/jdk too. > > http://hg.openjdk.java.net/jdk/jdk/file/ce8bab2c4185/src/hotspot/share/opto/cfgnode.cpp#l1451 cfgnode.*h*pp The following change which removes: 306 Node* dominated_by(Node* prev_dom, PhaseIterGVN* igvn); and adds it back: 393 Node* dominated_by(Node* prev_dom, PhaseIterGVN* igvn); Roland. From rkennke at redhat.com Wed Jun 5 12:37:07 2019 From: rkennke at redhat.com (Roman Kennke) Date: Wed, 5 Jun 2019 14:37:07 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: <874l54fcc7.fsf@redhat.com> References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> <877ea0ffab.fsf@redhat.com> <47c8dae0-dd89-2d64-7c60-7ca7f1b97e35@redhat.com> <874l54fcc7.fsf@redhat.com> Message-ID: >> It reverts the part back to original jdk11 upstream because we no longer >> need to insert into the control flow there. Is that not ok? > > Ah ok. That change is good. > >>> cfgnode.hpp >>> >>> That change doesn't seem needed >> >> Are you sure? We do have a corresponding call to step_over_gc_barrier() >> in jdk/jdk too. >> >> http://hg.openjdk.java.net/jdk/jdk/file/ce8bab2c4185/src/hotspot/share/opto/cfgnode.cpp#l1451 > > cfgnode.*h*pp > > The following change which removes: > > 306 Node* dominated_by(Node* prev_dom, PhaseIterGVN* igvn); > > and adds it back: > > 393 Node* dominated_by(Node* prev_dom, PhaseIterGVN* igvn); Right. This was there to make dominated_by() public, because we're using it in ShBSC2::ideal_node(). However, we don't actually use that code path and can remove it and revert the cfgnode.hpp change back: Incremental: http://cr.openjdk.java.net/~rkennke/backport-jdk11-JDK-8221766/webrev.02.diff/ Full: http://cr.openjdk.java.net/~rkennke/backport-jdk11-JDK-8221766/webrev.02/ (Give it a minute or so) Better? Roman From zgu at redhat.com Wed Jun 5 12:38:22 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 5 Jun 2019 08:38:22 -0400 Subject: RFR 8225341: Shenandoah: CM::update_thread_roots() needs to handle derived pointers Message-ID: <2930d5e6-3c9e-fe05-7d5b-368662818f7f@redhat.com> Update_thread_roots() may alter stack frames. Bug: https://bugs.openjdk.java.net/browse/JDK-8225341 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225341/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From shade at redhat.com Wed Jun 5 12:42:05 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 5 Jun 2019 14:42:05 +0200 Subject: RFR 8225341: Shenandoah: CM::update_thread_roots() needs to handle derived pointers In-Reply-To: <2930d5e6-3c9e-fe05-7d5b-368662818f7f@redhat.com> References: <2930d5e6-3c9e-fe05-7d5b-368662818f7f@redhat.com> Message-ID: <2b4cd542-8048-6103-2ee8-eecb840c9d17@redhat.com> On 6/5/19 2:38 PM, Zhengyu Gu wrote: > Update_thread_roots() may alter stack frames. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225341 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225341/webrev.00/ I think we should strive to use COMPILER2_OR_JVMCI macro, see ShenandoahMarkCompact::phase3_update_references. The remaining uses of older define should be cleaned up some time later. Otherwise looks good. -Aleksey From shade at redhat.com Wed Jun 5 12:57:13 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 5 Jun 2019 14:57:13 +0200 Subject: RFR (S) 8225342: Shenandoah: use COMPILER2_OR_JVMCI macro consistently Message-ID: <1b56f60e-488c-6175-d816-9103241321c8@redhat.com> RFE: https://bugs.openjdk.java.net/browse/JDK-8225342 Webrev: http://cr.openjdk.java.net/~shade/8225342/webrev.01/ This is cleaner and safer (in case COMPILER2 is actually globally defined but not available in current compilation unit). Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From zgu at redhat.com Wed Jun 5 12:59:23 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 5 Jun 2019 08:59:23 -0400 Subject: RFR (S) 8225342: Shenandoah: use COMPILER2_OR_JVMCI macro consistently In-Reply-To: <1b56f60e-488c-6175-d816-9103241321c8@redhat.com> References: <1b56f60e-488c-6175-d816-9103241321c8@redhat.com> Message-ID: <372b5ec7-8820-695a-bc44-fdef87a9b91e@redhat.com> Looks good to me. -Zhengyu On 6/5/19 8:57 AM, Aleksey Shipilev wrote: > RFE: > https://bugs.openjdk.java.net/browse/JDK-8225342 > > Webrev: > http://cr.openjdk.java.net/~shade/8225342/webrev.01/ > > This is cleaner and safer (in case COMPILER2 is actually globally defined but not available in > current compilation unit). > > Testing: hotspot_gc_shenandoah > From zgu at redhat.com Wed Jun 5 13:16:53 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 5 Jun 2019 09:16:53 -0400 Subject: RFR 8225341: Shenandoah: CM::update_thread_roots() needs to handle derived pointers In-Reply-To: <2b4cd542-8048-6103-2ee8-eecb840c9d17@redhat.com> References: <2930d5e6-3c9e-fe05-7d5b-368662818f7f@redhat.com> <2b4cd542-8048-6103-2ee8-eecb840c9d17@redhat.com> Message-ID: On 6/5/19 8:42 AM, Aleksey Shipilev wrote: > On 6/5/19 2:38 PM, Zhengyu Gu wrote: >> Update_thread_roots() may alter stack frames. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225341 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225341/webrev.00/ > > I think we should strive to use COMPILER2_OR_JVMCI macro, see > ShenandoahMarkCompact::phase3_update_references. The remaining uses of older define should be > cleaned up some time later. Updated, retested and pushed. Thanks, -Zhengyu > > Otherwise looks good. > > -Aleksey > > From shade at redhat.com Wed Jun 5 20:35:34 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 5 Jun 2019 22:35:34 +0200 Subject: RFC: Pick up 11.0.4+6 to sh/jdk11 Message-ID: Upstream published jdk-11.0.4+6, let's pick it up. It is just a handful of changes, so I would tag it shenandoah-jdk-11.0.4+6 immediately. Changesets: http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b6/changesets.txt Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From rkennke at redhat.com Wed Jun 5 21:12:32 2019 From: rkennke at redhat.com (Roman Kennke) Date: Wed, 5 Jun 2019 23:12:32 +0200 Subject: RFC: Pick up 11.0.4+6 to sh/jdk11 In-Reply-To: References: Message-ID: <5689946a-6739-6d42-25c8-7646e4aecf9f@redhat.com> Yep. Thanks! Roman > Upstream published jdk-11.0.4+6, let's pick it up. It is just a handful of changes, so I would tag > it shenandoah-jdk-11.0.4+6 immediately. > > Changesets: > http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b6/changesets.txt > > Testing: hotspot_gc_shenandoah > From shade at redhat.com Wed Jun 5 21:17:23 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 05 Jun 2019 21:17:23 +0000 Subject: hg: shenandoah/jdk11: 9 new changesets Message-ID: <201906052117.x55LHOva021143@aojmv0008.oracle.com> Changeset: cea7cd2e854e Author: rhalade Date: 2019-05-24 09:47 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/cea7cd2e854e 8202651: Test ComodoCA.java fails Reviewed-by: mullan ! test/jdk/security/infra/java/security/cert/CertPathValidator/certification/ComodoCA.java Changeset: 69564fa0a240 Author: clanger Date: 2019-05-25 10:54 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/69564fa0a240 8224727: Problem list test security/infra/java/security/cert/CertPathValidator/certification/ActalisCA.java Reviewed-by: rhalade ! test/jdk/ProblemList.txt Changeset: 7c2ef0a9068f Author: jjiang Date: 2018-10-17 22:06 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/7c2ef0a9068f 8212562: To remove lib/security from test/jdk/TEST.groups Summary: Remove lib/security from test group jdk_security3 Reviewed-by: coffeys ! test/jdk/TEST.groups Changeset: de190419d43b Author: erikj Date: 2018-10-31 13:14 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/de190419d43b 8210837: Add libXrandr-devel to the Linux devkits Reviewed-by: prr, mikael ! make/conf/jib-profiles.js ! make/devkit/Makefile ! make/devkit/Tools.gmk Changeset: defe40e29642 Author: rraghavan Date: 2019-05-01 22:02 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/defe40e29642 8202414: Unsafe write after primitive array creation may result in array length change Summary: Avoided collecting unaligned stores in Initialize node by making can_capture_store return false for same Reviewed-by: dlong, kvn, vlivanov ! src/hotspot/share/opto/memnode.cpp + test/hotspot/jtreg/compiler/c2/Test8202414.java Changeset: 9ab8738bf306 Author: mgronlun Date: 2019-05-21 20:53 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/9ab8738bf306 8220293: Deadlock in JFR string pool Reviewed-by: rehn, egahlin ! src/hotspot/share/jfr/recorder/checkpoint/jfrCheckpointManager.cpp ! src/hotspot/share/jfr/recorder/storage/jfrBuffer.cpp ! src/hotspot/share/jfr/recorder/storage/jfrBuffer.hpp ! src/hotspot/share/jfr/recorder/storage/jfrMemorySpace.inline.hpp ! src/hotspot/share/jfr/recorder/storage/jfrStorage.cpp ! src/hotspot/share/jfr/recorder/storage/jfrStorageUtils.hpp ! src/hotspot/share/jfr/recorder/storage/jfrStorageUtils.inline.hpp ! src/hotspot/share/jfr/recorder/stringpool/jfrStringPool.cpp ! src/hotspot/share/jfr/recorder/stringpool/jfrStringPoolBuffer.cpp Changeset: a5cedc08db03 Author: goetz Date: 2019-06-05 15:33 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/a5cedc08db03 Added tag jdk-11.0.4+6 for changeset 9ab8738bf306 ! .hgtags Changeset: d26aaa8c3375 Author: shade Date: 2019-06-05 20:56 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/d26aaa8c3375 Merge ! .hgtags ! src/hotspot/share/opto/memnode.cpp Changeset: daeea5733f12 Author: shade Date: 2019-06-05 22:33 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/daeea5733f12 Added tag shenandoah-jdk-11.0.4+6 for changeset d26aaa8c3375 ! .hgtags From shade at redhat.com Thu Jun 6 09:19:00 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 6 Jun 2019 11:19:00 +0200 Subject: RFC: Pick up jdk-13+24 -> sh/jdk Message-ID: <66dc677d-999c-5a94-61f0-e9855f7d0543@redhat.com> It looks that jdk/jdk is stable enough to pick up to sh/jdk. This makes sh/jdk almost exact replica of jdk/jdk again, and allows us to stage more features there. Changesets: http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk-13%2b24/changesets.txt Testing: hotspot_gc_shenandoah {fastdebug|release} -- Thanks, -Aleksey From rkennke at redhat.com Thu Jun 6 11:01:27 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 6 Jun 2019 13:01:27 +0200 Subject: RFC: Pick up jdk-13+24 -> sh/jdk In-Reply-To: <66dc677d-999c-5a94-61f0-e9855f7d0543@redhat.com> References: <66dc677d-999c-5a94-61f0-e9855f7d0543@redhat.com> Message-ID: <9b31642a-b2f2-4818-c5d2-98509fa85751@redhat.com> Very good, thanks! Roman > It looks that jdk/jdk is stable enough to pick up to sh/jdk. This makes sh/jdk almost exact replica > of jdk/jdk again, and allows us to stage more features there. > > Changesets: > http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk-13%2b24/changesets.txt > > Testing: hotspot_gc_shenandoah {fastdebug|release} > From rwestrel at redhat.com Thu Jun 6 11:51:38 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jun 2019 13:51:38 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> <877ea0ffab.fsf@redhat.com> <47c8dae0-dd89-2d64-7c60-7ca7f1b97e35@redhat.com> <874l54fcc7.fsf@redhat.com> Message-ID: <87v9xjdj91.fsf@redhat.com> > Right. This was there to make dominated_by() public, because we're using > it in ShBSC2::ideal_node(). However, we don't actually use that code Ah. Right. > path and can remove it and revert the cfgnode.hpp change back: Why don't we use that code anymore? Roland. From rkennke at redhat.com Thu Jun 6 11:55:00 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 6 Jun 2019 13:55:00 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: <87v9xjdj91.fsf@redhat.com> References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> <877ea0ffab.fsf@redhat.com> <47c8dae0-dd89-2d64-7c60-7ca7f1b97e35@redhat.com> <874l54fcc7.fsf@redhat.com> <87v9xjdj91.fsf@redhat.com> Message-ID: <2c9e1251-70b3-f23d-4102-655964c88d46@redhat.com> >> Right. This was there to make dominated_by() public, because we're using >> it in ShBSC2::ideal_node(). However, we don't actually use that code > > Ah. Right. > >> path and can remove it and revert the cfgnode.hpp change back: > > Why don't we use that code anymore? In jdk11, we don't use it *not yet*. We have sprinkled a bunch of code over Ideal() calls to do the things that we do via BSC2::ideal_node() in jdk12 and up. I believe the corresponding code in sh/jdk11 is in ifnode.cpp: https://builds.shipilev.net/patch-openjdk-shenandoah-jdk11/src/hotspot/share/opto/ifnode.cpp.udiff.html Roman From rwestrel at redhat.com Thu Jun 6 11:59:45 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 06 Jun 2019 13:59:45 +0200 Subject: RFR (11): [backport] 8221766: Load-reference barriers for Shenandoah In-Reply-To: <2c9e1251-70b3-f23d-4102-655964c88d46@redhat.com> References: <714958c7-635c-f9a7-5804-fc58892d193e@redhat.com> <5fb48ec6-6d6f-115d-5f8b-f83801ebbc8d@redhat.com> <0bfda0fe-26a8-2010-e1b7-53252849d840@redhat.com> <877ea0ffab.fsf@redhat.com> <47c8dae0-dd89-2d64-7c60-7ca7f1b97e35@redhat.com> <874l54fcc7.fsf@redhat.com> <87v9xjdj91.fsf@redhat.com> <2c9e1251-70b3-f23d-4102-655964c88d46@redhat.com> Message-ID: <87sgsmexfy.fsf@redhat.com> > In jdk11, we don't use it *not yet*. We have sprinkled a bunch of code > over Ideal() calls to do the things that we do via BSC2::ideal_node() in > jdk12 and up. > > I believe the corresponding code in sh/jdk11 is in ifnode.cpp: > > https://builds.shipilev.net/patch-openjdk-shenandoah-jdk11/src/hotspot/share/opto/ifnode.cpp.udiff.html Ok. Looks good then. Roland. From shade at redhat.com Thu Jun 6 15:19:14 2019 From: shade at redhat.com (shade at redhat.com) Date: Thu, 06 Jun 2019 15:19:14 +0000 Subject: hg: shenandoah/jdk: 150 new changesets Message-ID: <201906061519.x56FJP0Z010075@aojmv0008.oracle.com> Changeset: b7ac60035a28 Author: aeubanks Date: 2019-05-16 15:58 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b7ac60035a28 8224081: SOCKS v4 doesn't work with IPv6 Reviewed-by: chegar, dfuchs, mullan, vtewari Contributed-by: aeubanks at google.com ! test/jdk/java/net/Socks/SocksProxyVersion.java ! test/jdk/sun/security/x509/URICertStore/SocksProxy.java Changeset: 80dd2b549354 Author: dlong Date: 2019-05-29 13:31 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/80dd2b549354 8224931: disable JAOTC invokedynamic support until 8223533 is fixed Reviewed-by: kvn, never ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/Main.java Changeset: 3e5dba06a663 Author: xuelei Date: 2019-05-29 13:39 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3e5dba06a663 8224991: Problemlist javax/net/ssl/ServerName/SSLEngineExplorerMatchedSNI.java Reviewed-by: mullan ! test/jdk/ProblemList.txt Changeset: 234673929e0a Author: igerasim Date: 2019-05-29 13:44 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/234673929e0a 8224789: Parsing repetition count in regex does not detect numeric overflow Reviewed-by: rriggs, bchristi ! src/java.base/share/classes/java/util/regex/Pattern.java ! test/jdk/java/util/regex/RegExTest.java Changeset: ae908641e726 Author: clanger Date: 2019-05-29 22:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ae908641e726 8224729: Cleanups in sun/security/provider/certpath/ldap/LDAPCertStoreImpl.java Reviewed-by: mullan ! src/java.naming/share/classes/sun/security/provider/certpath/ldap/LDAPCertStoreImpl.java Changeset: 609dc5c60c06 Author: erikj Date: 2019-05-29 15:29 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/609dc5c60c06 8224011: Failure handling in ExecuteWithLog fails in run-test-prebuilt Reviewed-by: tbell ! make/RunTests.gmk ! make/RunTestsPrebuilt.gmk Changeset: a29fa5133004 Author: dcubed Date: 2019-05-29 19:25 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a29fa5133004 8225022: Put compiler/graalunit/JttThreadsTest.java on ProblemList-graal.txt Reviewed-by: kvn ! test/hotspot/jtreg/ProblemList-graal.txt Changeset: 8df9bb8d2023 Author: jwilhelm Date: 2019-05-30 03:15 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8df9bb8d2023 Added tag jdk-13+23 for changeset b034d2dee5fc ! .hgtags Changeset: c41783eb76eb Author: dholmes Date: 2019-05-29 22:17 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c41783eb76eb 8224790: Remove Xusage.txt file Reviewed-by: alanb, dcubed, erikj, mchung ! make/hotspot/gensrc/GenerateSources.gmk - src/hotspot/share/Xusage.txt Changeset: 59567035d279 Author: alanb Date: 2019-05-30 07:19 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/59567035d279 8221481: Reimplement the Legacy Socket API Reviewed-by: michaelm, chegar ! src/java.base/share/classes/java/net/SocketImpl.java + src/java.base/share/classes/sun/nio/ch/NioSocketImpl.java ! test/jdk/ProblemList.txt ! test/jdk/com/sun/net/httpserver/Test1.java ! test/jdk/java/net/ServerSocket/AcceptCauseFileDescriptorLeak.java ! test/jdk/java/net/ServerSocket/UnreferencedSockets.java ! test/jdk/java/net/Socket/ConnectionReset.java ! test/jdk/java/net/Socket/Timeouts.java ! test/jdk/java/net/Socket/UdpSocket.java ! test/jdk/java/net/Socket/asyncClose/AsyncClose.java + test/jdk/java/net/SocketImpl/BadUsages.java + test/jdk/java/net/SocketImpl/CompareSocketOptions.java + test/jdk/java/net/SocketImpl/java.base/java/net/PlatformSocketImpl.java ! test/jdk/java/net/SocketOption/OptionsTest.java ! test/jdk/java/net/ipv6tests/TcpTest.java ! test/jdk/sun/security/ssl/SSLSocketImpl/NewSocketMethods.java Changeset: 8a1095447ae6 Author: shade Date: 2019-05-30 10:21 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8a1095447ae6 8225017: [TESTBUG] gc/shenandoah/oom/TestThreadFailure.java takes too long Reviewed-by: rkennke ! test/hotspot/jtreg/gc/shenandoah/oom/TestThreadFailure.java Changeset: a72e187adb54 Author: mgronlun Date: 2019-05-30 11:42 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a72e187adb54 8224172: assert(jfr_is_event_enabled(id)) failed: invariant Reviewed-by: dcubed, dholmes ! src/hotspot/share/jfr/support/jfrFlush.cpp Changeset: 9ad765641e8f Author: vlivanov Date: 2019-05-30 13:39 +0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9ad765641e8f 8223213: Implement fast class initialization checks on x86-64 Reviewed-by: kvn, redestad, dholmes, mdoerr, coleenp ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/arm/c1_LIRAssembler_arm.cpp ! src/hotspot/cpu/ppc/c1_LIRAssembler_ppc.cpp ! src/hotspot/cpu/s390/c1_LIRAssembler_s390.cpp ! src/hotspot/cpu/sparc/c1_LIRAssembler_sparc.cpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.cpp ! src/hotspot/cpu/x86/interp_masm_x86.hpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/cpu/x86/templateTable_x86.cpp ! src/hotspot/cpu/x86/vm_version_x86.hpp ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/c1/c1_LIRAssembler.cpp ! src/hotspot/share/c1/c1_LIRAssembler.hpp ! src/hotspot/share/ci/ciMethod.cpp ! src/hotspot/share/ci/ciMethod.hpp ! src/hotspot/share/oops/cpCache.cpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/oops/methodData.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp ! src/hotspot/share/opto/parse.hpp ! src/hotspot/share/opto/parse1.cpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/deoptimization.hpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/vmStructs.cpp ! src/hotspot/share/runtime/vm_version.hpp + test/hotspot/jtreg/runtime/clinit/ClassInitBarrier.java + test/hotspot/jtreg/runtime/clinit/libClassInitBarrier.cpp Changeset: ebc4e5a625e2 Author: chegar Date: 2019-05-30 12:36 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ebc4e5a625e2 8224730: java.net.ServerSocket::toString not invoking checkConnect Reviewed-by: alanb ! src/java.base/share/classes/java/net/ServerSocket.java + test/jdk/java/net/ServerSocket/TestLocalAddress.java Changeset: 931a4d5367a6 Author: sundar Date: 2019-05-30 17:30 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/931a4d5367a6 8224946: jrtfs URI to Path and Path to URI conversions are wrong Reviewed-by: alanb ! src/java.base/share/classes/jdk/internal/jrtfs/JrtFileSystemProvider.java ! src/java.base/share/classes/jdk/internal/jrtfs/JrtPath.java ! test/jdk/jdk/internal/jrtfs/Basic.java ! test/jdk/tools/jlink/plugins/ExcludeVMPluginTest.java ! test/jdk/tools/jlink/plugins/SystemModuleDescriptors/ModuleTargetHelper.java ! test/langtools/tools/lib/toolbox/JarTask.java Changeset: 430da9dcfcb2 Author: bobv Date: 2019-05-30 07:07 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/430da9dcfcb2 8222252: Java ergonomics limits heap to 128GB with disabled compressed oops Reviewed-by: dholmes ! src/hotspot/share/runtime/arguments.cpp Changeset: 31f43d8e7afb Author: mullan Date: 2019-05-30 09:24 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/31f43d8e7afb 8224767: Add String constants for Canonical XML 1.1 URIs Reviewed-by: xuelei ! src/java.xml.crypto/share/classes/javax/xml/crypto/dsig/CanonicalizationMethod.java ! src/java.xml.crypto/share/classes/javax/xml/crypto/dsig/TransformService.java Changeset: 17f85a8780d5 Author: vlivanov Date: 2019-05-30 19:12 +0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/17f85a8780d5 8223216: C2: Unify class initialization checks between new, getstatic, and putstatic Reviewed-by: kvn, dlong ! src/hotspot/share/opto/bytecodeInfo.cpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/graphKit.hpp ! src/hotspot/share/opto/parse.hpp ! src/hotspot/share/opto/parse1.cpp ! src/hotspot/share/opto/parse3.cpp ! src/hotspot/share/opto/parseHelper.cpp Changeset: 63fa55abb6d2 Author: chegar Date: 2019-05-30 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/63fa55abb6d2 8225060: java.net.DefaultInterface invokes NetworkInterface::getInetAddresses without doPriv Reviewed-by: alanb ! src/java.base/macosx/classes/java/net/DefaultInterface.java Changeset: ad4285992012 Author: jjg Date: 2019-05-30 10:37 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ad4285992012 8224257: fix issues in files generated by pandoc Reviewed-by: tbell, jjg, erikj Contributed-by: jonathan.gibbons at oracle.com, erik.joelsson at oracle.com ! make/Docs.gmk ! make/Main.gmk ! make/ToolsJdk.gmk Changeset: a41029c383bf Author: jjg Date: 2019-05-30 11:00 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a41029c383bf 8225066: Add missing file Reviewed-by: mchung + make/jdk/src/classes/build/tools/fixuppandoc/Main.java Changeset: 6515a96809a1 Author: fyang Date: 2019-05-30 10:29 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6515a96809a1 8224828: aarch64: rflags is not correct after safepoint poll Reviewed-by: aph, adinn Contributed-by: Xiang Yuan ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp Changeset: a0d4e61acb6b Author: skuksenko Date: 2019-05-30 12:45 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a0d4e61acb6b 8223504: Improve performance of forall loops by better inlining of "iterator()" methods Reviewed-by: vlivanov, shade ! src/hotspot/share/classfile/systemDictionary.hpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/opto/bytecodeInfo.cpp Changeset: 5212c250f9a8 Author: jjg Date: 2019-05-30 13:45 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5212c250f9a8 8225077: fix references to broken link in java.compiler module Reviewed-by: darcy, lancea ! src/java.compiler/share/classes/javax/annotation/processing/Filer.java Changeset: b6418e5aad70 Author: sspitsyn Date: 2019-05-30 15:55 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b6418e5aad70 8223718: Checks in check_slot_type_no_lvt() should be always executed Summary: Call check_slot_type_no_lvt() even if the LVT is present Reviewed-by: kvn, gadams, amenkov ! src/hotspot/share/prims/jvmtiImpl.cpp ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/unit/GetLocalVariable/getlocal003/getlocal003.cpp Changeset: 9ea55cb79d77 Author: darcy Date: 2019-05-30 16:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9ea55cb79d77 8224687: Add clarifying overrides of Element.asType to more specific subinterfaces Reviewed-by: jjg ! src/java.compiler/share/classes/javax/lang/model/element/Element.java ! src/java.compiler/share/classes/javax/lang/model/element/ExecutableElement.java ! src/java.compiler/share/classes/javax/lang/model/element/ModuleElement.java ! src/java.compiler/share/classes/javax/lang/model/element/PackageElement.java ! src/java.compiler/share/classes/javax/lang/model/element/TypeElement.java ! src/java.compiler/share/classes/javax/lang/model/element/TypeParameterElement.java ! src/java.compiler/share/classes/javax/lang/model/element/VariableElement.java + test/langtools/tools/javac/processing/model/element/TestElementAsType.java Changeset: 04ff1e00635a Author: zgu Date: 2019-05-29 11:55 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/04ff1e00635a 8224978: Shenandoah: Allows root verifier to verify some roots outside safepoints with proper locks Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp ! src/hotspot/share/gc/shenandoah/shenandoahAsserts.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahVerifier.cpp Changeset: b0513c833960 Author: jjg Date: 2019-05-30 17:28 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b0513c833960 8220251: fix headings in java.management Reviewed-by: lancea ! src/java.management.rmi/share/classes/javax/management/remote/rmi/package.html ! src/java.management/share/classes/java/lang/management/LockInfo.java ! src/java.management/share/classes/java/lang/management/ManagementFactory.java ! src/java.management/share/classes/java/lang/management/MemoryMXBean.java ! src/java.management/share/classes/java/lang/management/MemoryPoolMXBean.java ! src/java.management/share/classes/java/lang/management/MemoryUsage.java ! src/java.management/share/classes/java/lang/management/MonitorInfo.java ! src/java.management/share/classes/java/lang/management/ThreadInfo.java ! src/java.management/share/classes/java/lang/management/ThreadMXBean.java ! src/java.management/share/classes/java/lang/management/package.html ! src/java.management/share/classes/javax/management/MXBean.java ! src/java.management/share/classes/javax/management/NotificationBroadcaster.java ! src/java.management/share/classes/javax/management/NotificationEmitter.java ! src/java.management/share/classes/javax/management/remote/package.html ! src/jdk.management.jfr/share/classes/jdk/management/jfr/FlightRecorderMXBean.java ! src/jdk.management/share/classes/com/sun/management/GcInfo.java Changeset: f19a728d576d Author: zgu Date: 2019-05-30 21:12 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f19a728d576d 8225014: Separate ShenandoahRootScanner method for object_iterate Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp + test/hotspot/jtreg/gc/shenandoah/TestObjItrWithHeapDump.java Changeset: d4475420fb9a Author: sundar Date: 2019-05-31 08:27 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d4475420fb9a 8216535: tools/jimage/JImageExtractTest.java timed out Reviewed-by: jlaskey ! test/jdk/tools/jimage/JImageExtractTest.java Changeset: 7b70f269fe0d Author: neliasso Date: 2019-05-31 10:13 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7b70f269fe0d 8224538: LoadBarrierNode::common_barrier must check address Reviewed-by: thartmann, kvn ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp Changeset: f91999057a5a Author: redestad Date: 2019-05-31 12:20 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f91999057a5a 8224986: (str) optimize StringBuilder.append(CharSequence, int, int) for String arguments Reviewed-by: jlaskey, rriggs ! src/java.base/share/classes/java/lang/AbstractStringBuilder.java ! src/java.base/share/classes/java/lang/String.java ! test/micro/org/openjdk/bench/java/lang/StringBuilders.java Changeset: 89ac8ad48ac6 Author: phedlin Date: 2019-05-16 17:09 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/89ac8ad48ac6 8225110: IGV build definition uses non-secure transport Reviewed-by: neliasso ! src/utils/IdealGraphVisualizer/nbproject/platform.properties Changeset: d2bc284803bc Author: chegar Date: 2019-05-31 15:02 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d2bc284803bc 8224973: URLStreamHandler.openConnection(URL,Proxy) - spec and implementation mismatch Reviewed-by: alanb, dfuchs ! src/java.base/share/classes/java/net/URLStreamHandler.java + test/jdk/java/net/URLStreamHandler/TestDefaultBehavior.java Changeset: f0ef081cb15d Author: azeller Date: 2019-05-28 20:12 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f0ef081cb15d 8194231: java/net/DatagramSocket/ReuseAddressTest.java failed with java.net.BindException: Address already in use: Cannot bind Summary: Changed test to no longer use hardcoded ports. Reviewed-by: chegar, clanger ! test/jdk/java/net/DatagramSocket/ReuseAddressTest.java Changeset: 35192d9c2b76 Author: pchilanomate Date: 2019-05-31 11:17 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/35192d9c2b76 8225016: Dead code due to VMOperationQueue::add() always returning true Summary: Removed dead code in vmThread.cpp Reviewed-by: coleenp, hseigel, dholmes ! src/hotspot/share/runtime/vmThread.cpp ! src/hotspot/share/runtime/vmThread.hpp Changeset: baad58d0cbfe Author: jjg Date: 2019-05-31 09:26 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/baad58d0cbfe 8225094: Fix minor HTML issues in jdk.zipfs Reviewed-by: clanger, mchung, lancea ! src/jdk.zipfs/share/classes/module-info.java Changeset: e6e4de80e058 Author: hseigel Date: 2019-05-31 13:09 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e6e4de80e058 8222936: mlvm/anonloader/stress/randomBytecodes/Test.java fails due to "ERROR: There were 1 hangups during parsing." Summary: Prevent false failures by blocking the test until either it times out or the loading thread finishes Reviewed-by: dholmes, coleenp ! test/hotspot/jtreg/vmTestbase/vm/mlvm/anonloader/share/StressClassLoadingTest.java Changeset: 9889f5e3ba00 Author: jjg Date: 2019-05-31 10:59 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9889f5e3ba00 8225129: Fix minor HTML issues in java.naming Reviewed-by: mchung, lancea ! 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/InitialLdapContext.java ! 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: 4c1b0b71c629 Author: bpb Date: 2019-05-31 11:13 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4c1b0b71c629 8225117: java/math/BigInteger/SymmetricRangeTests.java fails with ParseException Reviewed-by: darcy ! test/jdk/java/math/BigInteger/StringConstructorOverflow.java ! test/jdk/java/math/BigInteger/SymmetricRangeTests.java Changeset: 3f2f89737be5 Author: kbarrett Date: 2019-05-31 14:42 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3f2f89737be5 8219149: ProcessTools.ProcessBuilder should print timing info for subprocesses Summary: Add some timestamped logging messages to OutputBuffer. Reviewed-by: rriggs, dcubed, lmesnik, dholmes ! test/lib/jdk/test/lib/process/OutputBuffer.java Changeset: 72474808e305 Author: iklam Date: 2019-05-31 12:51 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/72474808e305 8224692: runtime/appcds tests crash in "HotSpotJVMCI::compute_offset" when running in Graal as JIT mode Reviewed-by: ccheung ! src/hotspot/share/classfile/symbolTable.cpp ! src/hotspot/share/memory/dynamicArchive.cpp ! test/hotspot/jtreg/runtime/appcds/dynamicArchive/NoClassToArchive.java Changeset: 8b1f7d88746a Author: erikj Date: 2019-05-31 13:37 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8b1f7d88746a 8219788: Configure recommends JDK 8 Reviewed-by: tbell ! make/autoconf/help.m4 Changeset: a3596ce8de19 Author: naoto Date: 2019-05-31 13:49 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a3596ce8de19 8223773: DateTimeFormatter Fails to throw an Exception on Invalid CLOCK_HOUR_OF_AMPM and HOUR_OF_AMPM Reviewed-by: lancea, scolebourne, rriggs ! src/java.base/share/classes/java/time/format/Parsed.java ! test/jdk/java/time/test/java/time/format/TestDateTimeParsing.java Changeset: c40c3e5d7c7a Author: cushon Date: 2019-05-22 15:30 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c40c3e5d7c7a 8224629: Unnecessary cast in LambdaToMethod Reviewed-by: vromero Contributed-by: Alan Malloy ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/LambdaToMethod.java Changeset: b564f266dda0 Author: vromero Date: 2019-05-31 18:35 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b564f266dda0 8224083: javadoc Reporter generates warning for Kind.NOTE 8224082: NPE in javadoc Reporter Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/tool/Messager.java + test/langtools/jdk/javadoc/tool/reporter_generates_warnings/ReporterGeneratesWarningsInsteadOfNotes.java + test/langtools/jdk/javadoc/tool/reporter_generates_warnings/pkg/MyDoclet.java Changeset: 3ea18959a349 Author: ccheung Date: 2019-05-31 15:49 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3ea18959a349 8223336: Assert in VirtualMemoryTracker::remove_released_region when running the SharedArchiveConsistency.java test with -XX:NativeMemoryTracking=detail Summary: added the missing call MemTracker::record_virtual_memory_reserve_and_commit() Reviewed-by: jiangli, zgu ! src/hotspot/os/windows/os_windows.cpp ! test/hotspot/jtreg/ProblemList.txt Changeset: d4890c3721be Author: jjg Date: 2019-05-31 17:27 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d4890c3721be 8225134: Update man-page files Reviewed-by: erikj, mchung ! src/java.base/share/man/java.1 ! src/java.base/share/man/keytool.1 ! src/java.rmi/share/man/rmid.1 ! src/java.rmi/share/man/rmiregistry.1 ! src/java.scripting/share/man/jrunscript.1 ! src/jdk.compiler/share/man/javac.1 ! src/jdk.compiler/share/man/serialver.1 + src/jdk.hotspot.agent/share/man/jhsdb.1 ! src/jdk.jartool/share/man/jar.1 ! src/jdk.jartool/share/man/jarsigner.1 ! src/jdk.javadoc/share/man/javadoc.1 ! src/jdk.jcmd/share/man/jcmd.1 ! src/jdk.jcmd/share/man/jinfo.1 ! src/jdk.jcmd/share/man/jmap.1 ! src/jdk.jcmd/share/man/jps.1 ! src/jdk.jcmd/share/man/jstack.1 ! src/jdk.jcmd/share/man/jstat.1 ! src/jdk.jconsole/share/man/jconsole.1 ! src/jdk.jdeps/share/man/javap.1 + src/jdk.jdeps/share/man/jdeprscan.1 ! src/jdk.jdeps/share/man/jdeps.1 ! src/jdk.jdi/share/man/jdb.1 + src/jdk.jlink/share/man/jlink.1 + src/jdk.jlink/share/man/jmod.1 + src/jdk.jshell/share/man/jshell.1 ! src/jdk.jstatd/share/man/jstatd.1 ! src/jdk.pack/share/man/pack200.1 ! src/jdk.pack/share/man/unpack200.1 ! src/jdk.rmic/share/man/rmic.1 ! src/jdk.scripting.nashorn.shell/share/man/jjs.1 Changeset: db105c4c5776 Author: redestad Date: 2019-06-01 03:18 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/db105c4c5776 8225061: Performance regression in Regex Reviewed-by: naoto, alanb Contributed-by: claes.redestad at oracle.com, naoto.sato at oracle.com ! make/jdk/src/classes/build/tools/generateemojidata/GenerateEmojiData.java ! src/java.base/share/classes/java/util/regex/EmojiData.java.template ! src/java.base/share/classes/java/util/regex/Grapheme.java ! src/java.base/share/classes/java/util/regex/Pattern.java + test/micro/org/openjdk/bench/java/util/regex/PatternBench.java Changeset: e2dbcc6ed36d Author: rfield Date: 2019-06-01 13:41 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e2dbcc6ed36d 8080353: JShell: Better error message on attempting to add default method Summary: Special handling for errors with "default" modifier Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/jshell/Eval.java ! test/langtools/ProblemList.txt ! test/langtools/jdk/jshell/ExceptionsTest.java ! test/langtools/jdk/jshell/MethodsTest.java Changeset: 905b2a416250 Author: rfield Date: 2019-06-01 14:09 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/905b2a416250 8223688: JShell: crash on the instantiation of raw anonymous class Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/internal/jshell/tool/JShellTool.java ! test/langtools/jdk/jshell/ToolBasicTest.java Changeset: 65896ed82849 Author: shade Date: 2019-06-02 10:08 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/65896ed82849 8225104: 32-bit build failures after JDK-8222252 Reviewed-by: bobv, rkennke, dholmes ! src/hotspot/share/runtime/arguments.cpp Changeset: 249b2b4fcb7d Author: shade Date: 2019-06-02 10:08 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/249b2b4fcb7d 8225111: Make Shenandoah tests work with 32-bit VMs Reviewed-by: rkennke ! test/hotspot/jtreg/gc/TestHumongousReferenceObject.java ! test/hotspot/jtreg/gc/shenandoah/TestHeapUncommit.java ! test/hotspot/jtreg/gc/shenandoah/TestHumongousThreshold.java ! test/hotspot/jtreg/gc/shenandoah/TestLargeObjectAlignment.java ! test/hotspot/jtreg/gc/shenandoah/compiler/TestNullCheck.java ! test/hotspot/jtreg/gc/shenandoah/compiler/TestReferenceCAS.java ! test/hotspot/jtreg/gc/shenandoah/jvmti/TestHeapDump.java ! test/hotspot/jtreg/gc/shenandoah/options/TestObjectAlignment.java Changeset: aa5eeb1a9871 Author: shade Date: 2019-06-02 10:08 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/aa5eeb1a9871 8225048: Shenandoah x86_32 support Reviewed-by: erikj, rkennke ! make/autoconf/hotspot.m4 ! src/hotspot/cpu/x86/gc/shenandoah/c1/shenandoahBarrierSetC1_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp + src/hotspot/cpu/x86/gc/shenandoah/shenandoah_x86_32.ad ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/gc/shenandoah/shenandoahArguments.cpp Changeset: d22206f24d59 Author: lancea Date: 2019-06-02 17:13 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d22206f24d59 8212807: tools/jar/multiRelease/Basic.java times out Reviewed-by: bchristi ! test/jdk/tools/jar/multiRelease/Basic.java ! test/jdk/tools/jar/multiRelease/MRTestBase.java ! test/lib/jdk/test/lib/process/OutputAnalyzer.java Changeset: 0dab93cb3b0c Author: tschatzl Date: 2019-06-03 10:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0dab93cb3b0c 8223162: Improve ergonomics for Sparse PRT entry sizing Summary: Scale Sparse PRT table sizes exponentially according to region size. Reviewed-by: kbarrett, sangheki ! src/hotspot/share/gc/g1/heapRegionRemSet.cpp ! src/hotspot/share/gc/g1/heapRegionRemSet.hpp ! src/hotspot/share/gc/g1/sparsePRT.hpp Changeset: 00f7fce88e25 Author: tschatzl Date: 2019-06-03 10:51 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/00f7fce88e25 8223693: Memory wastage in size of per-region type buffers in GC Reviewed-by: kbarrett, sangheki ! src/hotspot/share/gc/g1/g1HeapRegionAttr.hpp ! src/hotspot/share/gc/g1/g1ParScanThreadState.cpp Changeset: ba171f871932 Author: phedlin Date: 2019-05-28 14:56 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ba171f871932 8223363: Bad node estimate assertion failure 8223502: Node estimate for loop unswitching is not correct: assert(delta <= 2 * required) failed: Bad node estimate 8224648: assert(!exceeding_node_budget()) failed: Too many NODES required! failure with ctw Summary: Tighten the node estimates. New est_loop_clone_sz() implementation that will compute a "fan-out" complexity estimate as part of the size estimate (to better estimate complex loop body size after cloning). New est_loop_unroll_sz() function, used to estimate the size of a loop body att full/maximal unrolling. Correction to node budget final tests and asserts. Reviewed-by: neliasso, kvn ! src/hotspot/share/opto/loopTransform.cpp ! src/hotspot/share/opto/loopUnswitch.cpp ! src/hotspot/share/opto/loopnode.cpp ! src/hotspot/share/opto/loopnode.hpp ! src/hotspot/share/opto/loopopts.cpp + test/hotspot/jtreg/compiler/loopopts/LoopUnswitchingBadNodeBudget.java Changeset: 9691a169f1dd Author: roland Date: 2019-05-21 15:46 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9691a169f1dd 8173196: [REDO] C2 does not optimize redundant memory operations with G1 Reviewed-by: thartmann, kvn ! src/hotspot/share/gc/g1/c2/g1BarrierSetC2.cpp ! src/hotspot/share/gc/shared/c2/cardTableBarrierSetC2.cpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/graphKit.hpp Changeset: 6c205bbdafd2 Author: shade Date: 2019-06-03 14:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6c205bbdafd2 8225046: Shenandoah metrics logs refactoring Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMetrics.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMetrics.hpp Changeset: 47d928ba8733 Author: eosterlund Date: 2019-06-03 13:35 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/47d928ba8733 8224814: Remove dead JNIHandleBlock freelist code Reviewed-by: stefank, tschatzl, kbarrett ! src/hotspot/share/runtime/jniHandles.cpp ! src/hotspot/share/runtime/jniHandles.hpp Changeset: fdddd05767ce Author: eosterlund Date: 2019-06-03 13:35 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fdddd05767ce 8224816: Provide os::processor_id() implementation for Mac OS Reviewed-by: rehn, pliden, kbarrett, gziemski ! src/hotspot/os/bsd/os_bsd.cpp Changeset: 4ffd6a955e92 Author: rfield Date: 2019-06-03 07:46 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4ffd6a955e92 8225151: JShell API: Fix position of @jls tag Reviewed-by: jjg ! src/jdk.jshell/share/classes/jdk/jshell/Snippet.java Changeset: 1c291d1c272c Author: rfield Date: 2019-06-03 08:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1c291d1c272c 8199623: JShell: corralling not restored on drop Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/jshell/Eval.java ! test/langtools/jdk/jshell/DropTest.java ! test/langtools/jdk/jshell/ToolSimpleTest.java Changeset: 1cccaaf46c7b Author: erikj Date: 2019-06-03 10:52 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1cccaaf46c7b 8225140: Build fails if directory contains 'unix' Reviewed-by: tbell ! make/common/JdkNativeCompilation.gmk ! make/lib/Awt2dLibraries.gmk Changeset: d3e404cc3972 Author: rkennke Date: 2019-06-03 21:28 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d3e404cc3972 8225171: Remove leftovers in shenandoahBarrierSetC1.cpp Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.cpp Changeset: a38132298eda Author: iveresov Date: 2019-06-03 13:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a38132298eda 8223320: [AOT] jck test api/javax_script/ScriptEngine/PutGet.html fails when test classes are AOTed Summary: Materialization of primitive boxes should use caches Reviewed-by: kvn, never ! src/hotspot/share/aot/aotLoader.cpp ! src/hotspot/share/aot/aotLoader.hpp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp ! src/hotspot/share/classfile/vmSymbols.hpp ! src/hotspot/share/code/debugInfo.cpp ! src/hotspot/share/code/debugInfo.hpp ! src/hotspot/share/jvmci/jvmciCodeInstaller.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/jvmci/jvmciJavaClasses.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/deoptimization.hpp ! src/hotspot/share/runtime/thread.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.code/src/jdk/vm/ci/code/VirtualObject.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotJVMCIRuntime.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.core/src/org/graalvm/compiler/core/gen/DebugInfoBuilder.java + src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot.test/src/org/graalvm/compiler/hotspot/test/BoxDeoptimizationTest.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.serviceprovider/src/org/graalvm/compiler/serviceprovider/GraalServices.java Changeset: a8ee59471f55 Author: iveresov Date: 2019-06-03 14:15 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a8ee59471f55 8225202: Add missing include after JDK-8223320 Reviewed-by: kvn ! src/hotspot/share/aot/aotLoader.cpp Changeset: 1a7f82c98eee Author: kkharbas Date: 2019-06-03 11:04 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1a7f82c98eee 8224247: AllocateOldGenAt fires assertion failure Summary: Split the heap_reserved_size_bytes() into two methods - one for use during heap initialization and other for at later stages. Reviewed-by: sangheki, tschatzl ! src/hotspot/share/gc/g1/g1Arguments.cpp ! src/hotspot/share/gc/g1/g1Arguments.hpp ! src/hotspot/share/gc/g1/heapRegionManager.cpp ! src/hotspot/share/gc/parallel/adjoiningGenerationsForHeteroHeap.cpp ! src/hotspot/share/gc/parallel/parallelArguments.cpp ! src/hotspot/share/gc/parallel/parallelArguments.hpp ! src/hotspot/share/prims/whitebox.cpp Changeset: 030c32236ba3 Author: jjg Date: 2019-06-03 16:16 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/030c32236ba3 8225207: redundant

in Instrumentation.java Reviewed-by: lancea ! src/java.instrument/share/classes/java/lang/instrument/Instrumentation.java Changeset: a03a2455fe3b Author: rfield Date: 2019-06-03 16:24 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a03a2455fe3b 8225208: Re-Problem list jdk/jshell/ExceptionsTest.java fails on windows Reviewed-by: jjg ! test/langtools/ProblemList.txt Changeset: 06d4100ebd32 Author: coleenp Date: 2019-06-03 19:42 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/06d4100ebd32 8225212: ProblemList gc/stress/TestReclaimStringsLeaksMemory.java Reviewed-by: dholmes ! test/hotspot/jtreg/ProblemList.txt Changeset: a82a367b2d8c Author: epavlova Date: 2019-06-03 17:14 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a82a367b2d8c 8225199: [Graal] compiler/jvmci/compilerToVM/IsMatureVsReprofileTest.java fails with -XX:CompileThresholdScaling=0.1 Reviewed-by: kvn ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/IsMatureVsReprofileTest.java Changeset: 2ae056696b15 Author: rwestberg Date: 2019-06-03 10:28 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/2ae056696b15 8223678: Add Visual Studio Code workspace generation support (for native code) Reviewed-by: erikj + doc/ide.html + doc/ide.md ! make/Main.gmk ! make/UpdateBuildDocs.gmk ! make/common/MakeBase.gmk ! make/common/Utils.gmk + make/vscode/CreateVSCodeProject.gmk + make/vscode/indexers/ccls-extensions.txt + make/vscode/indexers/ccls-notes.txt + make/vscode/indexers/ccls-settings.txt + make/vscode/indexers/clangd-extensions.txt + make/vscode/indexers/clangd-notes.txt + make/vscode/indexers/clangd-settings.txt + make/vscode/indexers/cpptools-extensions.txt + make/vscode/indexers/cpptools-settings.txt + make/vscode/indexers/rtags-extensions.txt + make/vscode/indexers/rtags-settings.txt + make/vscode/template-launch.jsonc + make/vscode/template-tasks.jsonc + make/vscode/template-workspace-folder.txt + make/vscode/template-workspace.jsonc ! test/make/TestMakeBase.gmk Changeset: b003077e495c Author: stuefe Date: 2019-06-04 07:49 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b003077e495c 8225178: [Solaris] os::signal() should call sigaction() with SA_SIGINFO Reviewed-by: dcubed, dholmes ! src/hotspot/os/solaris/os_solaris.cpp Changeset: cb2628a4f33f Author: psadhukhan Date: 2019-05-15 15:17 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/cb2628a4f33f 8223937: PIT: java/awt/Window/ShapedAndTranslucentWindows/StaticallyShaped.java listed twice in ProblemList Reviewed-by: jdv, pbansal ! test/jdk/ProblemList.txt Changeset: 256a5cbb4439 Author: prr Date: 2019-05-17 13:05 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/256a5cbb4439 8223804: [macos] remove obsoleted reference to security framework in launcher code Reviewed-by: rriggs, erikj ! make/lib/CoreLibraries.gmk ! src/java.base/macosx/native/libjava/java_props_macosx.c Changeset: d23707ad2b00 Author: serb Date: 2019-05-17 22:37 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d23707ad2b00 8224152: [macOS] ProblemList tests that leave rubbish on the screen Reviewed-by: prr ! test/jdk/ProblemList.txt Changeset: 9ee0b8733ee4 Author: serb Date: 2019-05-17 22:48 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9ee0b8733ee4 8223766: Remains of ancient code in AWT initialization Reviewed-by: jdv ! src/java.desktop/unix/native/libawt_xawt/awt/awt_AWTEvent.c - src/java.desktop/unix/native/libawt_xawt/awt/awt_AWTEvent.h ! src/java.desktop/unix/native/libawt_xawt/awt/awt_Event.c - src/java.desktop/unix/native/libawt_xawt/awt/awt_Event.h ! src/java.desktop/unix/native/libawt_xawt/awt/awt_Insets.c - src/java.desktop/unix/native/libawt_xawt/awt/awt_Insets.h ! src/java.desktop/unix/native/libawt_xawt/xawt/XWindow.c ! src/java.desktop/windows/native/libawt/windows/awt_Color.cpp - src/java.desktop/windows/native/libawt/windows/awt_Color.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_Rectangle.cpp - src/java.desktop/windows/native/libawt/windows/awt_Rectangle.h Changeset: 1a80806e7d15 Author: serb Date: 2019-05-18 23:35 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1a80806e7d15 6933331: (d3d/ogl) java.lang.IllegalStateException: Buffers have not been created Reviewed-by: prr ! src/java.desktop/share/classes/java/awt/Component.java + test/jdk/java/awt/image/BufferStrategy/ExceptionAfterComponentDispose.java Changeset: f36cee599800 Author: psadhukhan Date: 2019-05-20 11:03 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f36cee599800 8224096: Add relevant bugid to java/awt/Window/ShapedAndTranslucentWindows/StaticallyShaped.java in ProblemList Reviewed-by: jdv, serb ! test/jdk/ProblemList.txt Changeset: c53905e7dc57 Author: dmarkov Date: 2019-05-20 15:42 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c53905e7dc57 8214579: JFrame does not paint content in XVFB / X11vnc environment Reviewed-by: prr ! src/java.desktop/unix/classes/sun/java2d/xr/XRSurfaceData.java Changeset: e2a90479dfe5 Author: serb Date: 2019-05-20 12:17 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e2a90479dfe5 8213516: jck test api/javax_accessibility/AccessibleState/fields.html fails intermittent Reviewed-by: prr ! src/java.desktop/share/classes/javax/accessibility/AccessibleBundle.java - test/jdk/javax/accessibility/8197785/AccessibilityBundleMemoryLeakTest.java + test/jdk/javax/accessibility/AccessibleBundle/Basic.java Changeset: 3e0a90050182 Author: serb Date: 2019-04-26 23:32 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3e0a90050182 8222917: GraphicsEnvironment for Unix still have an unused dependency on Solaris Reviewed-by: prr ! src/java.desktop/share/classes/sun/java2d/SunGraphicsEnvironment.java Changeset: eba6a83dc23b Author: psadhukhan Date: 2019-05-21 14:41 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/eba6a83dc23b 8214702: Wrong text position for whitespaced string in printing Swing text Reviewed-by: prr, serb ! src/java.desktop/share/classes/sun/swing/SwingUtilities2.java + test/jdk/javax/swing/SwingUtilities/TestTextPosInPrint.java Changeset: e448d58051ab Author: psadhukhan Date: 2019-05-23 10:50 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e448d58051ab 8211703: JInternalFrame : java.lang.AssertionError: cannot find the internal frame Reviewed-by: prr, serb ! src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/Metacity.java ! test/jdk/sanity/client/SwingSet/src/InternalFrameDemoTest.java Changeset: d85b366bd8f4 Author: prr Date: 2019-05-23 15:02 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d85b366bd8f4 8223804: [macos] remove obsoleted reference to security framework in launcher code Reviewed-by: rriggs, erikj ! test/jdk/java/awt/dnd/RemoveDropTargetCrashTest/RemoveDropTargetCrashTest.java Changeset: f13dba72a5ea Author: prr Date: 2019-05-24 09:10 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f13dba72a5ea 8224705: Tests that need to be problem-listed or have printer resources Reviewed-by: serb, psadhukhan ! test/jdk/ProblemList.txt ! test/jdk/java/awt/PrintJob/PrinterException.java ! test/jdk/java/awt/print/PrinterJob/Margins.java Changeset: 0b1f4dafd492 Author: prr Date: 2019-05-24 13:50 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0b1f4dafd492 8224771: backout RemoveDropTargetCrashTest.java fix to re-push with correct bugid Reviewed-by: serb ! test/jdk/java/awt/dnd/RemoveDropTargetCrashTest/RemoveDropTargetCrashTest.java Changeset: 779a8d44523b Author: prr Date: 2019-05-24 13:52 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/779a8d44523b 8224632: testbug: java/awt/dnd/RemoveDropTargetCrashTest/RemoveDropTargetCrashTest.java fails on MacOS Reviewed-by: serb, psadhukhan ! test/jdk/java/awt/dnd/RemoveDropTargetCrashTest/RemoveDropTargetCrashTest.java Changeset: 4929c53ff29d Author: prr Date: 2019-05-27 12:24 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4929c53ff29d 8224778: test/jdk/demo/jfc/J2Ddemo/J2DdemoTest.java cannot find J2Ddemo.jar Reviewed-by: erikj, psadhukhan ! make/RunTests.gmk ! test/jdk/demo/jfc/J2Ddemo/J2DdemoTest.java Changeset: 8cddb14bb234 Author: psadhukhan Date: 2019-05-28 16:35 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8cddb14bb234 8224830: test/jdk/java/awt/Focus/ModalExcludedWindowClickTest/ModalExcludedWindowClickTest.java fails on linux-x64 Reviewed-by: jdv ! test/jdk/java/awt/Focus/ModalExcludedWindowClickTest/ModalExcludedWindowClickTest.java Changeset: f11d2e10a6e4 Author: psadhukhan Date: 2019-05-28 16:38 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f11d2e10a6e4 8224821: java/awt/Focus/NoAutotransferToDisabledCompTest/NoAutotransferToDisabledCompTest.java fails linux-x64 Reviewed-by: jdv ! test/jdk/java/awt/Focus/NoAutotransferToDisabledCompTest/NoAutotransferToDisabledCompTest.java Changeset: fb7954fde06e Author: psadhukhan Date: 2019-05-30 10:45 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fb7954fde06e 8224824: ProblemList java/awt/Color/AlphaColorTest failure in linux_x64 Reviewed-by: serb ! test/jdk/ProblemList.txt Changeset: 4c730a3b5dd9 Author: prr Date: 2019-05-30 09:16 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4c730a3b5dd9 8225020: Problem list some sanity test failures Reviewed-by: psadhukhan, akolarkunnu ! test/jdk/ProblemList.txt Changeset: e29c0c8ebd90 Author: prr Date: 2019-05-30 09:23 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e29c0c8ebd90 8225007: java/awt/print/PrinterJob/LandscapeStackOverflow.java may hang Reviewed-by: serb, jdv ! test/jdk/java/awt/print/PrinterJob/LandscapeStackOverflow.java ! test/jdk/java/awt/print/PrinterJob/PrintToDir.java Changeset: fdaf7287ea3a Author: prr Date: 2019-05-30 11:52 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fdaf7287ea3a 8223271: SplashScreen is still shown if defaulting to headless on MacOS Reviewed-by: bpb, serb, kcr ! make/lib/Awt2dLibraries.gmk ! src/java.base/share/native/libjli/java.c ! src/java.base/share/native/libjli/splashscreen.h ! src/java.base/share/native/libjli/splashscreen_stubs.c ! src/java.desktop/macosx/native/libsplashscreen/splashscreen_sys.m ! src/java.desktop/share/native/libsplashscreen/splashscreen_impl.c ! src/java.desktop/share/native/libsplashscreen/splashscreen_impl.h ! src/java.desktop/unix/native/libsplashscreen/splashscreen_sys.c ! src/java.desktop/windows/native/libsplashscreen/splashscreen_sys.c Changeset: 55dc1385d1b7 Author: serb Date: 2019-05-30 17:14 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/55dc1385d1b7 8225032: Fix some C++ conformance issues in AWT Windows code Reviewed-by: prr, serb Contributed-by: andrewluotechnologies at outlook.com ! src/java.desktop/windows/native/libawt/windows/awt.h ! src/java.desktop/windows/native/libawt/windows/awt_Component.h ! src/java.desktop/windows/native/libawt/windows/awt_PrintControl.cpp Changeset: feb860d41612 Author: prr Date: 2019-06-02 12:38 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/feb860d41612 8224056: Fix some assignments of string literals to LPSTR (instead of LPCSTR) Reviewed-by: prr Contributed-by: andrewluotechnologies at outlook.com ! src/java.desktop/windows/native/libjsound/PLATFORM_API_WinOS_DirectSound.cpp Changeset: 26dd6fdc4165 Author: tnakamura Date: 2019-06-02 16:59 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/26dd6fdc4165 8219901: Noto fonts for East Asian countries cannot belong to CompositeFont Reviewed-by: prr, jdv ! src/java.desktop/unix/classes/sun/awt/FcFontManager.java ! src/java.desktop/unix/classes/sun/font/FcFontConfiguration.java + test/jdk/java/awt/font/FontNames/FCCompositeTest.java Changeset: 5f9ef936707c Author: psadhukhan Date: 2019-06-03 11:06 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5f9ef936707c Merge ! make/RunTests.gmk ! make/lib/Awt2dLibraries.gmk - src/hotspot/share/Xusage.txt - src/hotspot/share/c1/c1_globals.cpp - src/hotspot/share/gc/shenandoah/shenandoahHeapLock.hpp - src/hotspot/share/opto/c2_globals.cpp - src/java.base/share/classes/sun/text/resources/nfc.icu - src/java.base/share/classes/sun/text/resources/nfkc.icu - src/java.base/share/classes/sun/text/resources/nfkc_cf.icu ! src/java.base/share/native/libjli/java.c - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jquery-3.3.1.js - src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/resources/script-dir/jquery-migrate-3.0.1.js - src/jdk.javadoc/share/legal/jquery-migrate.md - test/fmw/gtest/CHANGES - test/fmw/gtest/LICENSE - test/fmw/gtest/README - test/fmw/gtest/include/gtest/gtest-death-test.h - test/fmw/gtest/include/gtest/gtest-message.h - test/fmw/gtest/include/gtest/gtest-param-test.h - test/fmw/gtest/include/gtest/gtest-param-test.h.pump - test/fmw/gtest/include/gtest/gtest-printers.h - test/fmw/gtest/include/gtest/gtest-spi.h - test/fmw/gtest/include/gtest/gtest-test-part.h - test/fmw/gtest/include/gtest/gtest-typed-test.h - test/fmw/gtest/include/gtest/gtest.h - test/fmw/gtest/include/gtest/gtest_pred_impl.h - test/fmw/gtest/include/gtest/gtest_prod.h - test/fmw/gtest/include/gtest/internal/gtest-death-test-internal.h - test/fmw/gtest/include/gtest/internal/gtest-filepath.h - test/fmw/gtest/include/gtest/internal/gtest-internal.h - test/fmw/gtest/include/gtest/internal/gtest-linked_ptr.h - test/fmw/gtest/include/gtest/internal/gtest-param-util-generated.h - test/fmw/gtest/include/gtest/internal/gtest-param-util-generated.h.pump - test/fmw/gtest/include/gtest/internal/gtest-param-util.h - test/fmw/gtest/include/gtest/internal/gtest-port.h - test/fmw/gtest/include/gtest/internal/gtest-string.h - test/fmw/gtest/include/gtest/internal/gtest-tuple.h - test/fmw/gtest/include/gtest/internal/gtest-tuple.h.pump - test/fmw/gtest/include/gtest/internal/gtest-type-util.h - test/fmw/gtest/include/gtest/internal/gtest-type-util.h.pump - test/fmw/gtest/src/gtest-all.cc - test/fmw/gtest/src/gtest-death-test.cc - test/fmw/gtest/src/gtest-filepath.cc - test/fmw/gtest/src/gtest-internal-inl.h - test/fmw/gtest/src/gtest-port.cc - test/fmw/gtest/src/gtest-printers.cc - test/fmw/gtest/src/gtest-test-part.cc - test/fmw/gtest/src/gtest-typed-test.cc - test/fmw/gtest/src/gtest.cc - test/fmw/gtest/src/gtest_main.cc ! test/jdk/ProblemList.txt - test/jdk/com/sun/jdi/BasicJDWPConnectionTest.java - test/jdk/java/lang/Character/PropList.txt - test/jdk/java/lang/Character/PropertyValueAliases.txt - test/jdk/java/lang/Character/Scripts.txt - test/jdk/java/lang/Character/SpecialCasing.txt - test/jdk/java/lang/Character/UnicodeBlock/Blocks.txt - test/jdk/java/lang/Character/UnicodeData.txt - test/jdk/java/lang/Character/charprop00.bin - test/jdk/java/lang/Character/charprop01.bin - test/jdk/java/lang/Character/charprop02.bin - test/jdk/java/lang/Character/charprop03.bin - test/jdk/java/lang/Character/charprop0E.bin - test/jdk/java/lang/Character/charprop0F.bin - test/jdk/java/lang/Character/charprop10.bin - test/jdk/java/util/regex/GraphemeBreakProperty.txt - test/jdk/java/util/regex/GraphemeBreakTest.txt - test/jdk/sun/management/windows/revokeall.c - test/jdk/sun/management/windows/revokeall.exe Changeset: 4cfbcfac47aa Author: jdv Date: 2019-06-03 11:56 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4cfbcfac47aa 8225105: java/awt/Focus/ShowFrameCheckForegroundTest/ShowFrameCheckForegroundTest.java fails in Windows 10 Reviewed-by: prr, serb ! test/jdk/java/awt/Focus/ShowFrameCheckForegroundTest/ShowFrameCheckForegroundTest.java Changeset: 8b8d83cf9097 Author: psadhukhan Date: 2019-06-04 13:34 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8b8d83cf9097 Merge ! make/lib/Awt2dLibraries.gmk Changeset: 7586561128e3 Author: hannesw Date: 2019-06-04 16:20 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7586561128e3 8222091: Javadoc does not handle package annotations correctly on package-info.java Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/Utils.java + test/langtools/jdk/javadoc/doclet/testPackageAnnotation/TestPackageAnnotation.java + test/langtools/jdk/javadoc/doclet/testPackageAnnotation/pkg1/A.java + test/langtools/jdk/javadoc/doclet/testPackageAnnotation/pkg1/package-info.java + test/langtools/jdk/javadoc/doclet/testPackageAnnotation/pkg2/A.java + test/langtools/jdk/javadoc/doclet/testPackageAnnotation/pkg2/package.html + test/langtools/jdk/javadoc/doclet/testPackageAnnotation/pkg3/A.java + test/langtools/jdk/javadoc/doclet/testPackageAnnotation/pkg3/package-info.java + test/langtools/jdk/javadoc/doclet/testPackageAnnotation/pkg3/package.html Changeset: 0ca8e495bbba Author: hannesw Date: 2019-06-04 16:33 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0ca8e495bbba 8214126: Method signatures not formatted correctly in browser Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractExecutableMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/LinkFactoryImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/RawHtml.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/links/LinkInfo.java ! test/langtools/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java ! test/langtools/jdk/javadoc/doclet/testDeprecatedDocs/TestDeprecatedDocs.java ! test/langtools/jdk/javadoc/doclet/testHtmlDefinitionListTag/TestHtmlDefinitionListTag.java ! test/langtools/jdk/javadoc/doclet/testIndentation/TestIndentation.java ! test/langtools/jdk/javadoc/doclet/testInterface/TestInterface.java ! test/langtools/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java ! test/langtools/jdk/javadoc/doclet/testLambdaFeature/TestLambdaFeature.java ! test/langtools/jdk/javadoc/doclet/testLinkOption/TestLinkOption.java ! test/langtools/jdk/javadoc/doclet/testLiteralCodeInPre/TestLiteralCodeInPre.java ! test/langtools/jdk/javadoc/doclet/testMemberInheritance/TestMemberInheritance.java ! test/langtools/jdk/javadoc/doclet/testMemberSummary/TestMemberSummary.java + test/langtools/jdk/javadoc/doclet/testMethodSignature/TestMethodSignature.java + test/langtools/jdk/javadoc/doclet/testMethodSignature/pkg/C.java ! test/langtools/jdk/javadoc/doclet/testNewLanguageFeatures/TestNewLanguageFeatures.java ! test/langtools/jdk/javadoc/doclet/testOptions/TestOptions.java ! test/langtools/jdk/javadoc/doclet/testOrdering/TestOrdering.java ! test/langtools/jdk/javadoc/doclet/testOverriddenMethods/TestBadOverride.java ! test/langtools/jdk/javadoc/doclet/testOverriddenMethods/TestOverriddenDeprecatedMethods.java ! test/langtools/jdk/javadoc/doclet/testPrivateClasses/TestPrivateClasses.java ! test/langtools/jdk/javadoc/doclet/testProperty/TestProperty.java ! test/langtools/jdk/javadoc/doclet/testSerializedFormWithClassFile/TestSerializedFormWithClassFile.java ! test/langtools/jdk/javadoc/doclet/testStylesheet/TestStylesheet.java ! test/langtools/jdk/javadoc/doclet/testSummaryTag/TestSummaryTag.java ! test/langtools/jdk/javadoc/doclet/testTypeAnnotations/TestTypeAnnotations.java ! test/langtools/jdk/javadoc/doclet/testTypeParams/TestTypeParameters.java ! test/langtools/jdk/javadoc/doclet/testVisibleMembers/TestVisibleMembers.java Changeset: 30fe07cac527 Author: chegar Date: 2019-06-04 15:52 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/30fe07cac527 6394787: Typos in javadoc of OIS.readObjectOverride and OOS.writeObjectOverride Reviewed-by: alanb, chegar Contributed-by: Andrey Turbanov ! src/java.base/share/classes/java/io/ObjectInputStream.java ! src/java.base/share/classes/java/io/ObjectOutputStream.java ! test/jdk/java/io/Serializable/subclass/AbstractObjectOutputStream.java Changeset: 3a09397c147e Author: mseledtsov Date: 2019-06-04 07:53 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3a09397c147e 8223396: [TESTBUG] several jfr tests do not clean up files created in /tmp Summary: Using test utils to create temp files and directories Reviewed-by: dholmes, erikj, hseigel, lmesnik ! test/jdk/jdk/jfr/event/io/EvilInstrument.java ! test/jdk/jdk/jfr/event/io/TestDisabledEvents.java ! test/jdk/jdk/jfr/event/io/TestFileChannelEvents.java ! test/jdk/jdk/jfr/event/io/TestFileReadOnly.java ! test/jdk/jdk/jfr/event/io/TestFileStreamEvents.java ! test/jdk/jdk/jfr/event/io/TestRandomAccessFileEvents.java ! test/jdk/jdk/jfr/event/io/TestRandomAccessFileThread.java ! test/jdk/jdk/jfr/jcmd/TestJcmdConfigure.java ! test/jdk/jdk/jfr/jmx/JmxHelper.java ! test/jdk/jdk/jfr/jvm/TestJavaEvent.java ! test/lib/jdk/test/lib/Utils.java Changeset: 9c36f33b0b01 Author: mseledtsov Date: 2019-06-04 07:54 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9c36f33b0b01 Merge Changeset: 7453d5007e24 Author: coleenp Date: 2019-06-04 10:29 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7453d5007e24 8222468: [TESTBUG] vmTestbase/metaspace/flags/maxMetaspaceSize/TestDescription.java fails with java.lang.NoClassDefFoundError Summary: Preload StackTraceElement$HashedModules in test. Reviewed-by: lmesnik, dholmes ! test/hotspot/jtreg/vmTestbase/nsk/share/gc/gp/GarbageUtils.java Changeset: 7c49133fc1bc Author: hannesw Date: 2019-06-04 17:51 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7c49133fc1bc 8178982: Javadoc search specification Reviewed-by: jjg, erikj ! src/jdk.compiler/share/classes/com/sun/source/doctree/package-info.java ! src/jdk.javadoc/share/classes/jdk/javadoc/doclet/StandardDoclet.java ! src/jdk.javadoc/share/classes/module-info.java Changeset: 8e31e083fe3c Author: kbarrett Date: 2019-06-04 13:26 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8e31e083fe3c 8212630: jtreg/gc/logging/TestMetaSpaceLog.java failed with Agent timed out Summary: Use driver with framework test options passed through to subtask. Reviewed-by: tschatzl, lmesnik ! test/hotspot/jtreg/gc/logging/TestMetaSpaceLog.java Changeset: 0289438c1286 Author: jjg Date: 2019-06-04 11:29 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0289438c1286 8223805: DocCommentParser should allow for

and
Reviewed-by: hannesw ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/DocCommentParser.java ! test/langtools/tools/javac/doctree/dcapi/DocCommentTreeApiTester.java + test/langtools/tools/javac/doctree/dcapi/overview8.html + test/langtools/tools/javac/doctree/dcapi/overview8.html.out + test/langtools/tools/javac/doctree/dcapi/overview9.html + test/langtools/tools/javac/doctree/dcapi/overview9.html.out Changeset: ef23ea332077 Author: smarks Date: 2019-06-04 11:55 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ef23ea332077 8217412: deprecate rmic for removal Reviewed-by: rriggs, sundar ! src/jdk.rmic/share/classes/sun/rmi/rmic/resources/rmic.properties ! src/jdk.rmic/share/man/rmic.1 Changeset: 2fe2063fe567 Author: kvn Date: 2019-06-04 12:44 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/2fe2063fe567 8225019: Update JVMCI Reviewed-by: never, dlong ! src/hotspot/share/ci/ciMethod.cpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/compiler/compileTask.cpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/jvmci/jvmciRuntime.cpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/oops/methodData.hpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/tieredThresholdPolicy.cpp ! src/hotspot/share/runtime/vmOperations.hpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/CompilerToVM.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/HotSpotResolvedJavaMethodImpl.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/SharedLibraryJVMCIReflection.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/TranslatedException.java ! test/hotspot/jtreg/ProblemList-graal.txt ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/AsResolvedJavaMethodTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/DoNotInlineOrCompileTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/FindUniqueConcreteMethodTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetBytecodeTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetClassInitializerTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetConstantPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetExceptionTableTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetImplementorTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetLineNumberTableTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetLocalVariableTableTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetResolvedJavaMethodTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetResolvedJavaTypeTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetStackTraceElementTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetSymbolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/GetVtableIndexForInterfaceTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/HasFinalizableSubclassTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/HasNeverInlineDirectiveTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/IsCompilableTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/LookupKlassInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/LookupKlassRefIndexInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/LookupMethodInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/LookupNameAndTypeRefIndexInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/LookupNameInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/LookupSignatureInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/LookupTypeTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/MethodIsIgnoredBySecurityStackWalkTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ReadConfigurationTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ResolveConstantInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ResolveFieldInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ResolveMethodTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ResolvePossiblyCachedConstantInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ResolveTypeInPoolTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/ShouldInlineMethodTest.java ! test/hotspot/jtreg/compiler/jvmci/errors/TestInvalidCompilationResult.java ! test/hotspot/jtreg/compiler/jvmci/errors/TestInvalidDebugInfo.java ! test/hotspot/jtreg/compiler/jvmci/errors/TestInvalidOopMap.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyInstallEventTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/DataPatchTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/InterpreterFrameSizeTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/MaxOopMapStackOffsetTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/SimpleCodeInstallationTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/SimpleDebugInfoTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.code.test/src/jdk/vm/ci/code/test/VirtualObjectDebugInfoTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/HotSpotConstantReflectionProviderTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/MemoryAccessProviderTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/MethodHandleAccessProviderTest.java + test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.hotspot.test/src/jdk/vm/ci/hotspot/test/TestTranslatedException.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ConstantTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/RedefineClassTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ResolvedJavaTypeResolveConcreteMethodTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/ResolvedJavaTypeResolveMethodTest.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestConstantReflectionProvider.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaField.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaMethod.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestJavaType.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestMetaAccessProvider.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaField.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaMethod.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaType.java ! test/hotspot/jtreg/compiler/jvmci/meta/StableFieldTest.java + test/hotspot/jtreg/compiler/whitebox/OSRFailureLevel4Test.java ! test/jdk/ProblemList-graal.txt Changeset: 1791eaa73e81 Author: mchung Date: 2019-06-04 12:50 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1791eaa73e81 8222448: java/lang/reflect/PublicMethods/PublicMethodsTest.java times out Summary: Set empty class path for compilation to avoid unnecessary opening/scanning of JAR files Reviewed-by: alanb, dholmes ! test/jdk/java/lang/reflect/PublicMethods/PublicMethodsTest.java Changeset: 4158e6a864d4 Author: jjg Date: 2019-06-04 13:47 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4158e6a864d4 8225306: bad headings in java.sql.rowset SyncProvider.java Reviewed-by: lancea ! src/java.sql.rowset/share/classes/javax/sql/rowset/spi/SyncProvider.java Changeset: 64fe51ee940e Author: jjg Date: 2019-06-04 14:47 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/64fe51ee940e 8225309: HTML issues in jdk.jdi module Reviewed-by: lancea ! src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html ! src/jdk.jdi/share/classes/module-info.java Changeset: e079a4cfad75 Author: jjg Date: 2019-06-04 15:42 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e079a4cfad75 8225314: broken links in java.base Reviewed-by: darcy ! src/java.base/share/classes/java/lang/Enum.java ! src/java.base/share/classes/java/lang/invoke/VarHandle.java Changeset: f4df9d4201cc Author: jjg Date: 2019-06-04 16:50 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f4df9d4201cc 8225324: Bad HTML in jdk.jfr module-info.java Reviewed-by: lancea ! src/jdk.jfr/share/classes/module-info.java Changeset: da9dac56aafc Author: mikael Date: 2019-06-04 18:12 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/da9dac56aafc 8225307: ProblemList compiler/codegen/TestCharVect2.java and compiler/c2/cr6340864/TestLongVect.java Reviewed-by: kvn ! test/hotspot/jtreg/ProblemList.txt Changeset: b78597cfcced Author: dholmes Date: 2019-06-04 21:25 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b78597cfcced 8225217: Backout: JDK-8224814: Remove dead JNIHandleBlock freelist code Reviewed-by: kvn, kbarrett ! src/hotspot/share/runtime/jniHandles.cpp ! src/hotspot/share/runtime/jniHandles.hpp Changeset: 7a026580fed5 Author: igerasim Date: 2019-06-04 18:55 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7a026580fed5 8225198: Optimize regex tree for greedy quantifiers of type {N,} Reviewed-by: redestad, bchristi ! src/java.base/share/classes/java/util/regex/Pattern.java ! src/java.base/share/classes/java/util/regex/PrintPattern.java Changeset: 29ab1f3bd353 Author: weijun Date: 2019-06-05 09:58 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/29ab1f3bd353 8193255: Root Certificates should be stored in text format and assembled at build time Reviewed-by: clanger, erikj, mullan ! make/ToolsJdk.gmk ! make/copy/Copy-java.base.gmk + make/data/cacerts/README + make/data/cacerts/actalisauthenticationrootca + make/data/cacerts/addtrustclass1ca + make/data/cacerts/addtrustexternalca + make/data/cacerts/addtrustqualifiedca + make/data/cacerts/affirmtrustcommercialca + make/data/cacerts/affirmtrustnetworkingca + make/data/cacerts/affirmtrustpremiumca + make/data/cacerts/affirmtrustpremiumeccca + make/data/cacerts/baltimorecybertrustca + make/data/cacerts/buypassclass2ca + make/data/cacerts/buypassclass3ca + make/data/cacerts/camerfirmachambersca + make/data/cacerts/camerfirmachamberscommerceca + make/data/cacerts/camerfirmachambersignca + make/data/cacerts/certumca + make/data/cacerts/certumtrustednetworkca + make/data/cacerts/chunghwaepkirootca + make/data/cacerts/comodoaaaca + make/data/cacerts/comodoeccca + make/data/cacerts/comodorsaca + make/data/cacerts/digicertassuredidg2 + make/data/cacerts/digicertassuredidg3 + make/data/cacerts/digicertassuredidrootca + make/data/cacerts/digicertglobalrootca + make/data/cacerts/digicertglobalrootg2 + make/data/cacerts/digicertglobalrootg3 + make/data/cacerts/digicerthighassuranceevrootca + make/data/cacerts/digicerttrustedrootg4 + make/data/cacerts/dtrustclass3ca2 + make/data/cacerts/dtrustclass3ca2ev + make/data/cacerts/entrust2048ca + make/data/cacerts/entrustevca + make/data/cacerts/entrustrootcaec1 + make/data/cacerts/entrustrootcag2 + make/data/cacerts/geotrustglobalca + make/data/cacerts/geotrustprimaryca + make/data/cacerts/geotrustprimarycag2 + make/data/cacerts/geotrustprimarycag3 + make/data/cacerts/geotrustuniversalca + make/data/cacerts/globalsignca + make/data/cacerts/globalsigneccrootcar4 + make/data/cacerts/globalsigneccrootcar5 + make/data/cacerts/globalsignr2ca + make/data/cacerts/globalsignr3ca + make/data/cacerts/globalsignrootcar6 + make/data/cacerts/godaddyclass2ca + make/data/cacerts/godaddyrootg2ca + make/data/cacerts/identrustcommercial + make/data/cacerts/identrustdstx3 + make/data/cacerts/identrustpublicca + make/data/cacerts/keynectisrootca + make/data/cacerts/letsencryptisrgx1 + make/data/cacerts/luxtrustglobalrootca + make/data/cacerts/quovadisrootca + make/data/cacerts/quovadisrootca1g3 + make/data/cacerts/quovadisrootca2 + make/data/cacerts/quovadisrootca2g3 + make/data/cacerts/quovadisrootca3 + make/data/cacerts/quovadisrootca3g3 + make/data/cacerts/secomscrootca1 + make/data/cacerts/secomscrootca2 + make/data/cacerts/securetrustca + make/data/cacerts/soneraclass2ca + make/data/cacerts/starfieldclass2ca + make/data/cacerts/starfieldrootg2ca + make/data/cacerts/starfieldservicesrootg2ca + make/data/cacerts/swisssigngoldg2ca + make/data/cacerts/swisssignplatinumg2ca + make/data/cacerts/swisssignsilverg2ca + make/data/cacerts/teliasonerarootcav1 + make/data/cacerts/thawtepremiumserverca + make/data/cacerts/thawteprimaryrootca + make/data/cacerts/thawteprimaryrootcag2 + make/data/cacerts/thawteprimaryrootcag3 + make/data/cacerts/ttelesecglobalrootclass2ca + make/data/cacerts/ttelesecglobalrootclass3ca + make/data/cacerts/usertrusteccca + make/data/cacerts/usertrustrsaca + make/data/cacerts/utnuserfirstobjectca + make/data/cacerts/verisignclass2g2ca + make/data/cacerts/verisignclass3ca + make/data/cacerts/verisignclass3g2ca + make/data/cacerts/verisignclass3g3ca + make/data/cacerts/verisignclass3g4ca + make/data/cacerts/verisignclass3g5ca + make/data/cacerts/verisigntsaca + make/data/cacerts/verisignuniversalrootca + make/data/cacerts/xrampglobalca ! make/gendata/Gendata-java.base.gmk ! make/gendata/GendataBlacklistedCerts.gmk ! make/gendata/GendataBreakIterator.gmk ! make/gendata/GendataPublicSuffixList.gmk + make/jdk/src/classes/build/tools/generatecacerts/GenerateCacerts.java - src/java.base/share/lib/security/cacerts Changeset: 3eb7187b20f0 Author: smarks Date: 2019-06-04 18:59 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3eb7187b20f0 8225315: test java/util/ArrayDeque/WhiteBox.java isn't part of the jdk_collections test group Reviewed-by: martin, darcy ! test/jdk/TEST.groups Changeset: bb3359bcf534 Author: stuefe Date: 2019-06-05 07:25 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/bb3359bcf534 8224600: Provide VM.events command Reviewed-by: minqi, dholmes, mbaesken, clanger ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/gc/shared/collectedHeap.hpp ! src/hotspot/share/services/diagnosticCommand.cpp ! src/hotspot/share/services/diagnosticCommand.hpp ! src/hotspot/share/utilities/events.cpp ! src/hotspot/share/utilities/events.hpp + test/hotspot/jtreg/serviceability/dcmd/vm/EventsTest.java Changeset: 412ce076c0dc Author: stuefe Date: 2019-06-05 08:59 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/412ce076c0dc 8224181: On child process spawn, child may write to random file descriptor instead of the fail pipe Reviewed-by: rriggs, martin ! src/java.base/unix/native/libjava/childproc.c Changeset: cfd1e298ca33 Author: shade Date: 2019-06-05 09:23 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/cfd1e298ca33 8225229: Shenandoah: trim down default number of GC threads Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahArguments.cpp + test/hotspot/jtreg/gc/shenandoah/options/TestThreadCounts.java Changeset: 28c93b5fb056 Author: redestad Date: 2019-06-05 10:07 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/28c93b5fb056 8225179: (regex) Minor Pattern cleanup Reviewed-by: igerasim ! src/java.base/share/classes/java/util/regex/Pattern.java ! test/micro/org/openjdk/bench/java/util/regex/PatternBench.java Changeset: 27d3b8e5c58b Author: redestad Date: 2019-06-05 10:23 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/27d3b8e5c58b 8224240: Properties.load fails to throw IAE on malformed unicode in certain circumstances Reviewed-by: smarks, rriggs, dfuchs ! src/java.base/share/classes/java/util/Properties.java ! test/jdk/java/util/Properties/PropertiesTest.java Changeset: a5967fd63d9d Author: pliden Date: 2019-06-05 10:43 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a5967fd63d9d 8224962: ZGC: Strengthen ZHeap::is_oop() Reviewed-by: eosterlund ! src/hotspot/share/gc/z/zHeap.inline.hpp Changeset: 3f8a81f5d1b2 Author: pliden Date: 2019-06-05 10:43 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3f8a81f5d1b2 8224965: ZGC: Strengthen ZHeap::is_in() Reviewed-by: eosterlund ! src/hotspot/share/gc/z/zAddress.hpp ! src/hotspot/share/gc/z/zAddress.inline.hpp ! src/hotspot/share/gc/z/zCollectedHeap.cpp ! src/hotspot/share/gc/z/zHeap.cpp Changeset: 1de459182903 Author: pliden Date: 2019-06-05 10:43 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1de459182903 8225084: gc/z/TestHighUsage.java fails with unexpected allocation stall Reviewed-by: eosterlund ! test/hotspot/jtreg/gc/z/TestHighUsage.java Changeset: ae3ef834deed Author: mdoerr Date: 2019-05-31 14:52 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ae3ef834deed 8222103: [testbug] compiler/compilercontrol/jcmd/ClearDirectivesFileStackTest may exceed VM limit Reviewed-by: iignatyev, mdoerr Contributed-by: peter.januschke at sap.com ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/compiler/compilercontrol/jcmd/ClearDirectivesFileStackTest.java Changeset: ce8bab2c4185 Author: chegar Date: 2019-06-05 12:02 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ce8bab2c4185 8225214: Socket.getOption(SocketOption) not returning the expected type for the StandardSocketOptions.SO_LINGER Reviewed-by: alanb ! src/java.base/share/classes/java/net/AbstractPlainSocketImpl.java ! test/jdk/java/net/SocketOption/OptionsTest.java Changeset: 63a62cc10a0a Author: roland Date: 2019-05-21 09:08 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/63a62cc10a0a 8224580: Matcher can cause oop field/array element to be reloaded Reviewed-by: neliasso, rkennke, dlong ! src/hotspot/share/opto/matcher.cpp Changeset: ec621f7f95f2 Author: chegar Date: 2019-06-05 13:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ec621f7f95f2 8225037: java.net.JarURLConnection::getJarEntry() throws NullPointerException Reviewed-by: coffeys, vtewari ! src/java.base/share/classes/java/net/JarURLConnection.java + test/jdk/java/net/JarURLConnection/TestDefaultBehavior.java Changeset: 27080d54c644 Author: zgu Date: 2019-06-05 09:15 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/27080d54c644 8225341: Shenandoah: CM::update_thread_roots() needs to handle derived pointers Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp Changeset: 9775d05d69c8 Author: shade Date: 2019-06-05 15:19 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9775d05d69c8 8225342: Shenandoah: use COMPILER2_OR_JVMCI macro consistently Reviewed-by: zgu ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.cpp Changeset: 02db50f278f9 Author: rriggs Date: 2019-06-05 10:21 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/02db50f278f9 8220238: Enhancing j.l.Runtime/System::gc specification with an explicit 'no guarantee' statement Reviewed-by: shade, dholmes, mchung, plevart ! src/java.base/share/classes/java/lang/Runtime.java ! src/java.base/share/classes/java/lang/System.java Changeset: 9b392b044f64 Author: hannesw Date: 2019-06-05 16:26 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9b392b044f64 8221709: replace use of style blockListLast Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AbstractMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlSerialFieldWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlSerialMethodWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AnnotationTypeFieldWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/AnnotationTypeRequiredMemberWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/ConstructorWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/EnumConstantWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/FieldWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/MethodWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/PropertyWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeFieldBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/AnnotationTypeRequiredMemberBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/ConstructorBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/EnumConstantBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/FieldBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/MethodBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/builders/PropertyBuilder.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! test/langtools/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java ! test/langtools/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java ! test/langtools/jdk/javadoc/doclet/testSerializedForm/TestSerializedForm.java Changeset: 6c2d69a41ff9 Author: mchung Date: 2019-06-05 07:49 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6c2d69a41ff9 8221368: Error message when module main class cannot be loaded is missing exception details Reviewed-by: alanb, sundar ! src/java.base/share/classes/sun/launcher/LauncherHelper.java ! src/java.base/share/classes/sun/launcher/resources/launcher.properties + test/jdk/tools/launcher/modules/basic/LauncherErrors.java + test/jdk/tools/launcher/modules/basic/src/test2/jdk/test2/Main.java + test/jdk/tools/launcher/modules/basic/src/test2/module-info.java Changeset: 481999e74cea Author: jjg Date: 2019-06-05 08:24 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/481999e74cea 8225346: Convert file to HTML5 Reviewed-by: lancea ! make/data/docs-resources/index.html Changeset: cad7e13ca587 Author: mikael Date: 2019-06-05 08:43 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/cad7e13ca587 8225305: ProblemList java/lang/invoke/VarHandles tests Reviewed-by: kvn, iignatyev, mchung, alanb + test/jdk/ProblemList-aot.txt Changeset: c87e52dbdca0 Author: stuefe Date: 2019-06-05 19:34 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c87e52dbdca0 8225225: stringStream internal buffer should always be zero terminated Reviewed-by: coleenp, dholmes ! src/hotspot/share/utilities/ostream.cpp ! src/hotspot/share/utilities/ostream.hpp ! test/hotspot/gtest/utilities/test_ostream.cpp Changeset: 36334808644d Author: darcy Date: 2019-06-05 10:49 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/36334808644d 8225353: Add @jls links to java.lang.Enum Reviewed-by: lancea, jjg ! src/java.base/share/classes/java/lang/Enum.java Changeset: 3bd979f09721 Author: dcubed Date: 2019-06-05 14:01 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3bd979f09721 8224793: os::die() does not honor CreateCoredumpOnCrash option Reviewed-by: kbarrett, dholmes, stuefe ! src/hotspot/os/aix/os_aix.cpp ! src/hotspot/os/bsd/os_bsd.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/solaris/os_solaris.cpp ! src/hotspot/share/runtime/os.hpp Changeset: 74832e7b5cad Author: dcubed Date: 2019-06-05 14:07 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/74832e7b5cad 8188872: runtime/ErrorHandling/TimeoutInErrorHandlingTest.java fails intermittently Reviewed-by: dholmes, stuefe ! src/hotspot/share/utilities/vmError.cpp ! src/hotspot/share/utilities/vmError.hpp ! test/hotspot/jtreg/runtime/ErrorHandling/TimeoutInErrorHandlingTest.java Changeset: 57b93b113ec0 Author: stuefe Date: 2019-06-05 09:12 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/57b93b113ec0 8223777: In posix_spawn mode, failing to exec() jspawnhelper does not result in an error Reviewed-by: rriggs, martin, fweimer ! src/java.base/unix/native/libjava/ProcessImpl_md.c ! src/java.base/unix/native/libjava/childproc.c ! src/java.base/unix/native/libjava/childproc.h Changeset: 7e2238451585 Author: stuefe Date: 2019-06-05 21:14 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7e2238451585 8225348: serviceability/dcmd/vm/EventsTest.java failed Reviewed-by: jcbeyler, cjplummer ! test/hotspot/jtreg/serviceability/dcmd/vm/EventsTest.java Changeset: 45b6245d5b9b Author: shade Date: 2019-06-06 11:15 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/45b6245d5b9b Merge ! .hgtags ! make/autoconf/hotspot.m4 ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp ! src/hotspot/cpu/arm/c1_LIRAssembler_arm.cpp ! src/hotspot/cpu/ppc/c1_LIRAssembler_ppc.cpp ! src/hotspot/cpu/s390/c1_LIRAssembler_s390.cpp ! src/hotspot/cpu/sparc/c1_LIRAssembler_sparc.cpp ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/c1/shenandoahBarrierSetC1_x86.cpp ! src/hotspot/cpu/x86/gc/shenandoah/shenandoahBarrierSetAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.hpp ! src/hotspot/cpu/x86/sharedRuntime_x86_64.cpp ! src/hotspot/cpu/x86/templateTable_x86.cpp ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/windows/os_windows.cpp - src/hotspot/share/Xusage.txt ! src/hotspot/share/c1/c1_LIRAssembler.hpp ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/classfile/javaClasses.hpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/gc/shared/c2/cardTableBarrierSetC2.cpp ! src/hotspot/share/gc/shared/collectedHeap.hpp ! src/hotspot/share/gc/shenandoah/c1/shenandoahBarrierSetC1.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/gc/shenandoah/shenandoahArguments.cpp ! src/hotspot/share/gc/shenandoah/shenandoahAsserts.cpp ! src/hotspot/share/gc/shenandoah/shenandoahAsserts.hpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMetrics.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMetrics.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.cpp ! src/hotspot/share/gc/shenandoah/shenandoahVerifier.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp ! src/hotspot/share/opto/graphKit.cpp ! src/hotspot/share/opto/graphKit.hpp ! src/hotspot/share/opto/loopTransform.cpp ! src/hotspot/share/opto/loopUnswitch.cpp ! src/hotspot/share/opto/loopnode.cpp ! src/hotspot/share/opto/loopnode.hpp ! src/hotspot/share/opto/loopopts.cpp ! src/hotspot/share/opto/matcher.cpp ! src/hotspot/share/opto/parse.hpp ! src/hotspot/share/opto/parse3.cpp ! src/hotspot/share/opto/parseHelper.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/os.hpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/tieredThresholdPolicy.cpp ! src/hotspot/share/runtime/vmOperations.hpp ! src/hotspot/share/runtime/vmStructs.cpp - src/java.base/share/lib/security/cacerts - src/java.desktop/unix/native/libawt_xawt/awt/awt_AWTEvent.h - src/java.desktop/unix/native/libawt_xawt/awt/awt_Event.h - src/java.desktop/unix/native/libawt_xawt/awt/awt_Insets.h - src/java.desktop/windows/native/libawt/windows/awt_Color.h - src/java.desktop/windows/native/libawt/windows/awt_Rectangle.h ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/gc/TestHumongousReferenceObject.java ! test/hotspot/jtreg/gc/shenandoah/TestHeapUncommit.java ! test/hotspot/jtreg/gc/shenandoah/TestHumongousThreshold.java ! test/hotspot/jtreg/gc/shenandoah/TestLargeObjectAlignment.java ! test/hotspot/jtreg/gc/shenandoah/compiler/TestNullCheck.java ! test/hotspot/jtreg/gc/shenandoah/compiler/TestReferenceCAS.java ! test/hotspot/jtreg/gc/shenandoah/jvmti/TestHeapDump.java ! test/hotspot/jtreg/gc/shenandoah/oom/TestThreadFailure.java ! test/hotspot/jtreg/gc/shenandoah/options/TestObjectAlignment.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/unit/GetLocalVariable/getlocal003/getlocal003.cpp - test/jdk/javax/accessibility/8197785/AccessibilityBundleMemoryLeakTest.java From shade at redhat.com Thu Jun 6 16:41:43 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 6 Jun 2019 18:41:43 +0200 Subject: RFR (S) 8225357: Rewire ShenandoahHeap::maybe_update_with_forwarded for contending fixups Message-ID: <40ab7991-6e54-ba01-bc62-cd15e7bd1781@redhat.com> RFE: https://bugs.openjdk.java.net/browse/JDK-8225357 Currently the method can return NULL on the path where something else is contending over the write. In most current cases, that path works correctly, but not when something else (for example, inline fixup in barrier taken by Java thread) updates the references on their own. Then, the CAS might fail (as it should), and the GC code would think that thread is responsible to show the object to the marking code. This is risky and would lead to bugs. Instead, we would want to reply with the most actual reference at all times. Webrev: http://cr.openjdk.java.net/~shade/8225357/webrev.01/ Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From rkennke at redhat.com Thu Jun 6 16:57:29 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 06 Jun 2019 18:57:29 +0200 Subject: RFR (S) 8225357: Rewire ShenandoahHeap::maybe_update_with_forwarded for contending fixups In-Reply-To: <40ab7991-6e54-ba01-bc62-cd15e7bd1781@redhat.com> References: <40ab7991-6e54-ba01-bc62-cd15e7bd1781@redhat.com> Message-ID: <21AA9DB2-8812-4EC3-BC86-F5DA71F8D788@redhat.com> Looks good, thanks. Roman Am 6. Juni 2019 18:41:43 MESZ schrieb Aleksey Shipilev : >RFE: > https://bugs.openjdk.java.net/browse/JDK-8225357 > >Currently the method can return NULL on the path where something else >is contending over the write. >In most current cases, that path works correctly, but not when >something else (for example, inline >fixup in barrier taken by Java thread) updates the references on their >own. > >Then, the CAS might fail (as it should), and the GC code would think >that thread is responsible to >show the object to the marking code. This is risky and would lead to >bugs. Instead, we would want to >reply with the most actual reference at all times. > >Webrev: > http://cr.openjdk.java.net/~shade/8225357/webrev.01/ > >Testing: hotspot_gc_shenandoah > >-- >Thanks, >-Aleksey -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From shade at redhat.com Thu Jun 6 17:40:43 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 6 Jun 2019 19:40:43 +0200 Subject: RFR (XS) 8225441: Cleanup ShenandoahHeap::atomic_compare_exchange_oop Message-ID: RFE: https://bugs.openjdk.java.net/browse/JDK-8225441 These helper functions can use smaller name and be static to boot. Webrev: http://cr.openjdk.java.net/~shade/8225441/webrev.01/ Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From rkennke at redhat.com Thu Jun 6 17:57:04 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 6 Jun 2019 19:57:04 +0200 Subject: RFR (XS) 8225441: Cleanup ShenandoahHeap::atomic_compare_exchange_oop In-Reply-To: References: Message-ID: <81ca74ef-0ea1-8dac-32fb-9711f9434301@redhat.com> We could also just use RawAccess<>::oop_atomic_cmpxchg() instead. That does the same thing afaics. However, doing our owns is better backportable (to 8). What do you think? Roman > RFE: > https://bugs.openjdk.java.net/browse/JDK-8225441 > > These helper functions can use smaller name and be static to boot. > > Webrev: > http://cr.openjdk.java.net/~shade/8225441/webrev.01/ > > Testing: hotspot_gc_shenandoah > From shade at redhat.com Thu Jun 6 18:07:32 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 6 Jun 2019 20:07:32 +0200 Subject: RFR (XS) 8225441: Cleanup ShenandoahHeap::atomic_compare_exchange_oop In-Reply-To: <81ca74ef-0ea1-8dac-32fb-9711f9434301@redhat.com> References: <81ca74ef-0ea1-8dac-32fb-9711f9434301@redhat.com> Message-ID: On 6/6/19 7:57 PM, Roman Kennke wrote: > We could also just use RawAccess<>::oop_atomic_cmpxchg() instead. That > does the same thing afaics. However, doing our owns is better > backportable (to 8). What do you think? Let's do this one for backports, and then the follow-up to use RawAccess, where available? -Aleksey From rkennke at redhat.com Thu Jun 6 18:09:49 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 6 Jun 2019 20:09:49 +0200 Subject: RFR (XS) 8225441: Cleanup ShenandoahHeap::atomic_compare_exchange_oop In-Reply-To: References: <81ca74ef-0ea1-8dac-32fb-9711f9434301@redhat.com> Message-ID: >> We could also just use RawAccess<>::oop_atomic_cmpxchg() instead. That >> does the same thing afaics. However, doing our owns is better >> backportable (to 8). What do you think? > > Let's do this one for backports, and then the follow-up to use RawAccess, where available? Sounds good. Roman From shade at redhat.com Thu Jun 6 20:28:54 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 6 Jun 2019 22:28:54 +0200 Subject: RFC: C2 LRB self-fixup for testing to sh/jdk Message-ID: <4f04cc89-0ed5-68e1-1883-561c7477b8a5@redhat.com> Hi, I want to push these patches to sh/jdk for testing: http://cr.openjdk.java.net/~shade/8225357/webrev.01/ http://cr.openjdk.java.net/~shade/8225441/webrev.01/ http://cr.openjdk.java.net/~shade/shenandoah/lrb-sfx.patch This is the bulk change I am going to push: http://cr.openjdk.java.net/~shade/shenandoah/lrb-c2-fixup/webrev.01/ Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From rkennke at redhat.com Thu Jun 6 20:34:46 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 6 Jun 2019 22:34:46 +0200 Subject: RFC: C2 LRB self-fixup for testing to sh/jdk In-Reply-To: <4f04cc89-0ed5-68e1-1883-561c7477b8a5@redhat.com> References: <4f04cc89-0ed5-68e1-1883-561c7477b8a5@redhat.com> Message-ID: <0554da50-f80f-a17d-fe56-23c6a855f873@redhat.com> This looks good to me. As discussed on IRC, we need to clarify (post-push) with Roland: - What's up with EA there. Why it fails without the change, and why the change fixes it, and if it's correct. - If we can ditch the whole implicit-null-checking fluff, because the load of mark-word is gone, which was -afaik- the whole reason why we needed it to begin with. That would be a nice simplification and one lesser pain in the ... Go for it! Cheers, Roman > Hi, > > I want to push these patches to sh/jdk for testing: > http://cr.openjdk.java.net/~shade/8225357/webrev.01/ > http://cr.openjdk.java.net/~shade/8225441/webrev.01/ > http://cr.openjdk.java.net/~shade/shenandoah/lrb-sfx.patch > > This is the bulk change I am going to push: > http://cr.openjdk.java.net/~shade/shenandoah/lrb-c2-fixup/webrev.01/ > > Testing: hotspot_gc_shenandoah > From shade at redhat.com Thu Jun 6 20:37:29 2019 From: shade at redhat.com (shade at redhat.com) Date: Thu, 06 Jun 2019 20:37:29 +0000 Subject: hg: shenandoah/jdk: C2 LRB self-fixup Message-ID: <201906062037.x56KbTGl014213@aojmv0008.oracle.com> Changeset: 3f2b4cc07dbd Author: shade Date: 2019-06-06 22:24 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3f2b4cc07dbd C2 LRB self-fixup ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahSupport.hpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.cpp ! src/hotspot/share/gc/shenandoah/shenandoahBarrierSet.hpp ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRuntime.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRuntime.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.inline.hpp From shade at redhat.com Thu Jun 6 20:41:58 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 6 Jun 2019 22:41:58 +0200 Subject: ShenandoahBarrierSetC2::escape_is_barrier_node Message-ID: <732cb99a-6ce3-4eb0-79ca-dcea2a9ee7df@redhat.com> Hey Roland, A question for you. We have a staged code in sh/jdk, which has this change in ShenandoahBarrierSetC2::escape_is_barrier_node: http://hg.openjdk.java.net/shenandoah/jdk/rev/3f2b4cc07dbd#l1.47 If you revert it, then tests start to fail: $ CONF=linux-x86_64-server-fastdebug make images run-test TEST=gc/shenandoah/TestStringDedupStress.java ... LocalVar NoEscape(NoEscape) [ 475 1P 195P 322P [ 497 ]] 476 ShenandoahLoadReferenceBarrier === _ 475 298 [[ 497 ]] Oop:java/util/concurrent/atomic/AtomicLong * !jvms: Random::next @ bci:1 Random::nextInt @ bci:17 TestStringDedupStress::generateStrings @ bci:17 # To suppress the following error report, specify this argument # after -XX: or in .hotspotrc: SuppressErrorAt=/escape.cpp:3098 # # A fatal error has been detected by the Java Runtime Environment: # # Internal Error (/home/shade/trunks/shenandoah-jdk/src/hotspot/share/opto/escape.cpp:3098), pid=26126, tid=26151 # assert(jobj != __null && jobj != phantom_obj) failed: escaped allocation # Have any insights why? Also, is it really needed for Shenandoah at this point? I see only Shenandoah has the non-trivial BarrierSetC2::escape_is_barrier_node. -- Thanks, -Aleksey From shade at redhat.com Thu Jun 6 20:42:43 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 6 Jun 2019 22:42:43 +0200 Subject: RFC: C2 LRB self-fixup for testing to sh/jdk In-Reply-To: <0554da50-f80f-a17d-fe56-23c6a855f873@redhat.com> References: <4f04cc89-0ed5-68e1-1883-561c7477b8a5@redhat.com> <0554da50-f80f-a17d-fe56-23c6a855f873@redhat.com> Message-ID: <092989ec-6bec-2790-d465-c3ea6794b1f4@redhat.com> On 6/6/19 10:34 PM, Roman Kennke wrote: > This looks good to me. > > As discussed on IRC, we need to clarify (post-push) with Roland: > - What's up with EA there. Why it fails without the change, and why the > change fixes it, and if it's correct. Yes, here: https://mail.openjdk.java.net/pipermail/shenandoah-dev/2019-June/009898.html > - If we can ditch the whole implicit-null-checking fluff, because the > load of mark-word is gone, which was -afaik- the whole reason why we > needed it to begin with. That would be a nice simplification and one > lesser pain in the ... Right, that would be a follow-up. -Aleksey From gnu.andrew at redhat.com Fri Jun 7 18:23:53 2019 From: gnu.andrew at redhat.com (Andrew John Hughes) Date: Fri, 7 Jun 2019 19:23:53 +0100 Subject: [RFR] [8u] 8u222-b05 Upstream Sync Message-ID: Webrevs: https://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/ Merge changesets (excludes local AArch64 fixes): http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/corba/merge.changeset http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/jaxp/merge.changeset http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/jaxws/merge.changeset http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/jdk/merge.changeset http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/hotspot/merge.changeset http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/langtools/merge.changeset http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/nashorn/merge.changeset http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/root/merge.changeset Changes in aarch64-shenandoah-jdk8u222-b05: - S8019816: [TEST_BUG][macosx] closed/java/awt/BasicStroke/DashZeroWidth.java not on EDT - S8044289: In ImageIO.write() and ImageIO.read() null stream is not handled properly. - S8055705: Rename UnixPrintServiceLookup and Win32PrintServiceLookup as a platform neutral class name - S8059575: JEP-JDK-8043304: Test task: Tiered Compilation level transition tests - S8075939: Stream.flatMap() causes breaking of short-circuiting of terminal operations - S8143097: java/net/ipv6tests/UdpTest.java fails intermittently with "checkTime failed: got 1998 expected 4000" - S8151226: Mark UdpTest.java as intermittently failing - S8166684: PPC64: implement intrinsic code with vector instructions for Unsafe.copyMemory() - S8185969: PPC64: Improve VSR support to use up to 64 registers - S8186325: AArch64: jtreg test hotspot/test/gc/g1/TestJNIWeakG1/TestJNIWeakG1.java SEGV - S8193830: Xalan Update: Xalan Java 2.7.2 - S8196775: java/net/Socket/asyncClose/Race.java failed intermittently on Windows with ConnectException: Connection refused - S8202414: Unsafe write after primitive array creation may result in array length change - S8202651: Test ComodoCA.java fails - S8204929: Fonts with embedded bitmaps are not always rotated - S8210886: Remove references in xwindows.md to non-existent files. - S8210985: Update the default SSL session cache size to 20480 - S8213183: InputMethod cannot be used after its restarting - S8214765: All TrayIcon MessageType icons does not show up with gtk3 option set - S8218020: Back out accidental changes that belong elsewhere - S8218020: Fix version number in mesa.md 3rd party legal file - S8220495: Update GIFlib library to the 5.1.8 - S8222670: pathological case of JIT recompilation and code cache bloat - S8223537: testlibrary_tests/ctw/ClassesListTest.java fails with Agent timeout frequently - S8224671: AArch64: mauve System.arraycopy test failure - S8224727: Problem list test security/infra/java/security/cert/CertPathValidator/certification/ActalisCA.java - S8224828: aarch64: rflags is not correct after safepoint poll - S8224880: AArch64: java/javac error with AllocatePrefetchDistance - S8225065: Revert 8221166 (8u backport of 8048782) Main issues of note: No merge issues. diffstat for root b/THIRD_PARTY_README | 63 ++++----------------------------------------------- 1 file changed, 5 insertions(+), 58 deletions(-) diffstat for corba b/THIRD_PARTY_README | 63 ++++----------------------------------------------- 1 file changed, 5 insertions(+), 58 deletions(-) diffstat for jaxp b/THIRD_PARTY_README | 63 ---------- b/src/com/sun/org/apache/xalan/internal/Version.java | 2 b/src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java | 5 b/src/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java | 21 +-- b/src/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java | 4 b/src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java | 4 b/src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java | 2 b/src/com/sun/org/apache/xml/internal/utils/NodeVector.java | 6 8 files changed, 25 insertions(+), 82 deletions(-) diffstat for jaxws b/THIRD_PARTY_README | 63 ++++----------------------------------------------- 1 file changed, 5 insertions(+), 58 deletions(-) diffstat for langtools b/THIRD_PARTY_README | 63 ++++----------------------------------------------- 1 file changed, 5 insertions(+), 58 deletions(-) diffstat for nashorn b/THIRD_PARTY_README | 63 ++++----------------------------------------------- 1 file changed, 5 insertions(+), 58 deletions(-) diffstat for jdk a/src/windows/classes/sun/print/services/javax.print.PrintServiceLookup | 2 a/src/windows/classes/sun/print/services/javax.print.StreamPrintServiceFactory | 2 a/test/sun/java2d/pisces/OpenJDKFillBug.java | 173 -- b/THIRD_PARTY_README | 63 b/make/CopyIntoClasses.gmk | 4 b/src/share/classes/java/util/stream/DoublePipeline.java | 30 b/src/share/classes/java/util/stream/IntPipeline.java | 30 b/src/share/classes/java/util/stream/LongPipeline.java | 30 b/src/share/classes/java/util/stream/ReferencePipeline.java | 99 + b/src/share/classes/java/util/stream/SortedOps.java | 42 b/src/share/classes/javax/imageio/ImageIO.java | 46 b/src/share/classes/javax/net/ssl/SSLSessionContext.java | 50 b/src/share/classes/sun/java2d/pisces/PiscesCache.java | 9 b/src/share/classes/sun/java2d/pisces/PiscesTileGenerator.java | 5 b/src/share/classes/sun/print/services/javax.print.PrintServiceLookup | 2 b/src/share/classes/sun/security/ssl/SSLSessionContextImpl.java | 25 b/src/share/native/sun/awt/giflib/dgif_lib.c | 122 + b/src/share/native/sun/awt/giflib/gif_hash.h | 5 b/src/share/native/sun/awt/giflib/gif_lib.h | 14 b/src/share/native/sun/awt/giflib/gif_lib_private.h | 9 b/src/share/native/sun/awt/giflib/gifalloc.c | 18 b/src/share/native/sun/awt/giflib/openbsd-reallocarray.c | 6 b/src/share/native/sun/font/freetypeScaler.c | 18 b/src/solaris/classes/sun/awt/X11/InfoWindow.java | 25 b/src/solaris/classes/sun/awt/X11/XMSelection.java | 10 b/src/solaris/classes/sun/print/CUPSPrinter.java | 4 b/src/solaris/classes/sun/print/IPPPrintService.java | 4 b/src/solaris/classes/sun/print/PrintServiceLookupProvider.java | 6 b/src/solaris/classes/sun/print/UnixPrintJob.java | 4 b/src/solaris/classes/sun/print/UnixPrintService.java | 58 b/src/solaris/native/sun/awt/awt_InputMethod.c | 7 b/src/windows/classes/sun/awt/windows/WPrinterJob.java | 6 b/src/windows/classes/sun/print/PrintServiceLookupProvider.java | 8 b/src/windows/native/sun/windows/WPrinterJob.cpp | 10 b/test/ProblemList.txt | 2 b/test/java/awt/BasicStroke/DashScaleMinWidth.java | 100 + b/test/java/awt/BasicStroke/DashZeroWidth.java | 98 + b/test/java/awt/FontClass/GlyphRotationTest.java | 87 + b/test/java/awt/im/InputContext/ReconnectTest.java | 253 +++ b/test/java/net/Socket/asyncClose/Race.java | 57 b/test/java/net/ipv6tests/Tests.java | 16 b/test/java/net/ipv6tests/UdpTest.java | 4 b/test/java/util/stream/test/org/openjdk/tests/java/util/stream/FlatMapOpTest.java | 82 - b/test/javax/imageio/stream/NullStreamCheckTest.java | 202 ++ b/test/javax/xml/jaxp/transform/sort/SortTest.java | 126 + b/test/javax/xml/jaxp/transform/sort/sort-alphabet-english.out | 30 b/test/javax/xml/jaxp/transform/sort/sort-alphabet-english.xml | 46 b/test/javax/xml/jaxp/transform/sort/sort-alphabet-english.xsl | 40 b/test/javax/xml/jaxp/transform/sort/sort-alphabet-polish.out | 37 b/test/javax/xml/jaxp/transform/sort/sort-alphabet-polish.xml | 52 b/test/javax/xml/jaxp/transform/sort/sort-alphabet-polish.xsl | 39 b/test/javax/xml/jaxp/transform/sort/sort-alphabet-russian.out | 38 b/test/javax/xml/jaxp/transform/sort/sort-alphabet-russian.xml | 53 b/test/javax/xml/jaxp/transform/sort/sort-alphabet-russian.xsl | 39 b/test/security/infra/java/security/cert/CertPathValidator/certification/ComodoCA.java | 792 ++++------ b/test/sun/security/ssl/SSLContextImpl/DefautlCacheSize.java | 69 56 files changed, 2322 insertions(+), 886 deletions(-) diffstat for hotspot b/THIRD_PARTY_README | 63 --- b/src/cpu/ppc/vm/assembler_ppc.hpp | 36 + b/src/cpu/ppc/vm/assembler_ppc.inline.hpp | 23 + b/src/cpu/ppc/vm/register_ppc.cpp | 11 b/src/cpu/ppc/vm/register_ppc.hpp | 80 +++- b/src/cpu/ppc/vm/stubGenerator_ppc.cpp | 113 +++++ b/src/cpu/ppc/vm/vm_version_ppc.cpp | 2 b/src/share/vm/compiler/compileBroker.cpp | 6 b/src/share/vm/compiler/compileBroker.hpp | 4 b/src/share/vm/oops/instanceKlass.cpp | 13 b/src/share/vm/opto/memnode.cpp | 7 b/src/share/vm/prims/whitebox.cpp | 35 + b/src/share/vm/runtime/advancedThresholdPolicy.cpp | 12 b/test/compiler/c2/Test8202414.java | 117 ++++++ b/test/compiler/tiered/ConstantGettersTransitionsTest.java | 193 ++++++++++ b/test/compiler/tiered/Level2RecompilationTest.java | 92 ++++ b/test/compiler/tiered/LevelTransitionTest.java | 247 +++++++++++++ b/test/compiler/tiered/NonTieredLevelsTest.java | 4 b/test/compiler/tiered/TieredLevelsTest.java | 16 b/test/compiler/tiered/TransitionsTestExecutor.java | 66 +++ b/test/compiler/whitebox/CompilerWhiteBoxTest.java | 52 ++ b/test/testlibrary/whitebox/sun/hotspot/WhiteBox.java | 1 b/test/testlibrary/whitebox/sun/hotspot/code/NMethod.java | 11 23 files changed, 1076 insertions(+), 128 deletions(-) Successfully built on x86, x86_64, s390, s390x, ppc, ppc64, ppc64le & aarch64. Ok to push? -- Andrew :) Senior Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: ed25519/0xCFDA0F9B35964222 (hkp://keys.gnupg.net) Fingerprint = 5132 579D D154 0ED2 3E04 C5A0 CFDA 0F9B 3596 4222 https://keybase.io/gnu_andrew From shade at redhat.com Fri Jun 7 18:38:56 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Fri, 7 Jun 2019 20:38:56 +0200 Subject: [RFR] [8u] 8u222-b05 Upstream Sync In-Reply-To: References: Message-ID: On 6/7/19 8:23 PM, Andrew John Hughes wrote: > http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/corba/merge.changeset > http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/jaxp/merge.changeset > http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/jaxws/merge.changeset Looks good. > http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/jdk/merge.changeset Err... Looks good, most of that are bulk updates for GIF library and Xalan. > http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/hotspot/merge.changeset Looks good. > http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/langtools/merge.changeset> http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/nashorn/merge.changeset > http://cr.openjdk.java.net/~andrew/shenandoah-8/u222-b05/root/merge.changeset Looks good. Thumbs up! Please push as soon as you can: I want to propose the Shenandoah integration to 8u with a few outstanding backports. -Aleksey From zgu at redhat.com Mon Jun 10 00:06:03 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Sun, 9 Jun 2019 20:06:03 -0400 Subject: RFR 8225483: Shenandoah: Enhance native access barrier Message-ID: Please review this enhancement of native access barrier, in preparation for concurrent root processing. Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug + release) Thanks, -Zhengyu From shade at redhat.com Mon Jun 10 08:32:18 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Mon, 10 Jun 2019 10:32:18 +0200 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: References: Message-ID: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> On 6/10/19 2:06 AM, Zhengyu Gu wrote: > Please review this enhancement of native access barrier, in preparation for concurrent root processing. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ *) It looks to me the webrev itself and the patch in it disagree. For example, webrev says the entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the patch has the ASSERT block internally. The patch also has the unrelated change in shenandoahForwarding.hpp. *) Why change Raw::oop_store_in_heap to Raw::oop_store in ShenandoahBarrierSet::oop_store_in_heap? *) You can write this block: #ifdef ASSERT ShenandoahHeap* const heap = ShenandoahHeap::heap(); shenandoah_assert_marked_if(value, heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)); #endif as: shenandoah_assert_marked_if(value, ShenandoahHeap::heap()->is_evacuation_in_progress()); *) Also, this block: ShenandoahHeap* const heap = ShenandoahHeap::heap(); if (!CompressedOops::is_null(value) && heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)) { as: if (!CompressedOops::is_null(value) && ShenandoahHeap::heap()->is_evacuation_in_progress()) { -Aleksey From zgu at redhat.com Mon Jun 10 12:44:19 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Mon, 10 Jun 2019 08:44:19 -0400 Subject: RFR(T) 8225514: Shenandoah: ShenandoahCodeRoots should inherit from AllStatic Message-ID: <131b2eb7-5bc5-505d-1bf1-a38b2145dec6@redhat.com> A trivial cleanup. Bug: https://bugs.openjdk.java.net/browse/JDK-8225514 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225514/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From shade at redhat.com Mon Jun 10 12:52:13 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Mon, 10 Jun 2019 14:52:13 +0200 Subject: RFR(T) 8225514: Shenandoah: ShenandoahCodeRoots should inherit from AllStatic In-Reply-To: <131b2eb7-5bc5-505d-1bf1-a38b2145dec6@redhat.com> References: <131b2eb7-5bc5-505d-1bf1-a38b2145dec6@redhat.com> Message-ID: <2c390a97-4556-9a33-ae24-2fd0226fee79@redhat.com> On 6/10/19 2:44 PM, Zhengyu Gu wrote: > A trivial cleanup. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225514 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225514/webrev.00/ Yup, good! -Aleksey From zgu at redhat.com Mon Jun 10 23:14:48 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Mon, 10 Jun 2019 19:14:48 -0400 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> Message-ID: <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> On 6/10/19 4:32 AM, Aleksey Shipilev wrote: > On 6/10/19 2:06 AM, Zhengyu Gu wrote: >> Please review this enhancement of native access barrier, in preparation for concurrent root processing. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ > > *) It looks to me the webrev itself and the patch in it disagree. For example, webrev says the > entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the patch has the ASSERT block internally. The > patch also has the unrelated change in shenandoahForwarding.hpp. Sorry, it is a broken webrev. Updated: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ Reran hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu > > *) Why change Raw::oop_store_in_heap to Raw::oop_store in ShenandoahBarrierSet::oop_store_in_heap? > > *) You can write this block: > > #ifdef ASSERT > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > shenandoah_assert_marked_if(value, heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)); > #endif > > as: > > shenandoah_assert_marked_if(value, ShenandoahHeap::heap()->is_evacuation_in_progress()); > > > *) Also, this block: > > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > if (!CompressedOops::is_null(value) && > heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)) { > > as: > > if (!CompressedOops::is_null(value) && ShenandoahHeap::heap()->is_evacuation_in_progress()) { > > > > -Aleksey > From shade at redhat.com Tue Jun 11 09:23:12 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Tue, 11 Jun 2019 11:23:12 +0200 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> Message-ID: <5605fa8e-4e19-5a7a-04cd-e480fd35fa5f@redhat.com> On 6/11/19 1:14 AM, Zhengyu Gu wrote: > On 6/10/19 4:32 AM, Aleksey Shipilev wrote: >> On 6/10/19 2:06 AM, Zhengyu Gu wrote: >>> Please review this enhancement of native access barrier, in preparation for concurrent root >>> processing. >>> >>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 >>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ >> >> *) It looks to me the webrev itself and the patch in it disagree. For example, webrev says the >> entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the patch has the ASSERT block internally. The >> patch also has the unrelated change in shenandoahForwarding.hpp. > > Sorry, it is a broken webrev. > > Updated: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ This patch cannot go to jdk/jdk. It can only go to sh/jdk. *) This block: 99 ShenandoahHeap* const heap = ShenandoahHeap::heap(); 100 shenandoah_assert_marked_if(NULL, value, !CompressedOops::is_null(value) && heap->is_evacuation_in_progress()); Can be just: shenandoah_assert_marked_if(NULL, value, !CompressedOops::is_null(value) && ShenandoahHeap::heap()->is_evacuation_in_progress()); *) After the change above is done, you can make SBS::oop_store_not_in_heap available always: e.g. drop the ASSERT around it. *) I think the block in oop_load_not_in_heap needs the comment why this is done. This is a weird exception anyway: it leaks the from-space pointers from the weak roots, no? What actually guarantees we would not store that from-space pointer somewhere *on heap*? *) This block can be simplified: ShenandoahHeap* const heap = ShenandoahHeap::heap(); if (heap->is_evacuation_in_progress()) { ShenandoahMarkingContext* const marking_context = heap->complete_marking_context(); if (!marking_context->is_marked(value)) { return NULL; } } to: ShenandoahHeap* const heap = ShenandoahHeap::heap(); if (heap->is_evacuation_in_progress() && !heap->complete_marking_context()->is_marked(value)) { return NULL; } -Aleksey From rkennke at redhat.com Tue Jun 11 10:39:58 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 11 Jun 2019 12:39:58 +0200 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> Message-ID: <840D88C2-7D41-4A3B-8781-EB068CB8A3BC@redhat.com> It looks to me like it adds more work, while not reaping the benefit of it, specifically the ability to clean some roots concurrently. I assume this would come in follow-up? Roman Am 11. Juni 2019 01:14:48 MESZ schrieb Zhengyu Gu : > > >On 6/10/19 4:32 AM, Aleksey Shipilev wrote: >> On 6/10/19 2:06 AM, Zhengyu Gu wrote: >>> Please review this enhancement of native access barrier, in >preparation for concurrent root processing. >>> >>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 >>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ >> >> *) It looks to me the webrev itself and the patch in it disagree. For >example, webrev says the >> entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the patch has >the ASSERT block internally. The >> patch also has the unrelated change in shenandoahForwarding.hpp. > >Sorry, it is a broken webrev. > >Updated: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ > >Reran hotspot_gc_shenandoah (fastdebug and release) > >Thanks, > >-Zhengyu > >> >> *) Why change Raw::oop_store_in_heap to Raw::oop_store in >ShenandoahBarrierSet::oop_store_in_heap? >> >> *) You can write this block: >> >> #ifdef ASSERT >> ShenandoahHeap* const heap = ShenandoahHeap::heap(); >> shenandoah_assert_marked_if(value, >heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)); >> #endif >> >> as: >> >> shenandoah_assert_marked_if(value, >ShenandoahHeap::heap()->is_evacuation_in_progress()); >> >> >> *) Also, this block: >> >> ShenandoahHeap* const heap = ShenandoahHeap::heap(); >> if (!CompressedOops::is_null(value) && >> heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)) { >> >> as: >> >> if (!CompressedOops::is_null(value) && >ShenandoahHeap::heap()->is_evacuation_in_progress()) { >> >> >> >> -Aleksey >> -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From rkennke at redhat.com Tue Jun 11 10:43:21 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 11 Jun 2019 12:43:21 +0200 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <5605fa8e-4e19-5a7a-04cd-e480fd35fa5f@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> <5605fa8e-4e19-5a7a-04cd-e480fd35fa5f@redhat.com> Message-ID: <606DB543-B668-4530-BD8F-5B26BC9AFFE3@redhat.com> I think it returns either NULL or passes through LRB, I think this is fine and does not leak from-space-refs. Roman Am 11. Juni 2019 11:23:12 MESZ schrieb Aleksey Shipilev : >On 6/11/19 1:14 AM, Zhengyu Gu wrote: >> On 6/10/19 4:32 AM, Aleksey Shipilev wrote: >>> On 6/10/19 2:06 AM, Zhengyu Gu wrote: >>>> Please review this enhancement of native access barrier, in >preparation for concurrent root >>>> processing. >>>> >>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 >>>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ >>> >>> *) It looks to me the webrev itself and the patch in it disagree. >For example, webrev says the >>> entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the patch has >the ASSERT block internally. The >>> patch also has the unrelated change in shenandoahForwarding.hpp. >> >> Sorry, it is a broken webrev. >> >> Updated: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ > >This patch cannot go to jdk/jdk. It can only go to sh/jdk. > >*) This block: > > 99 ShenandoahHeap* const heap = ShenandoahHeap::heap(); >100 shenandoah_assert_marked_if(NULL, value, >!CompressedOops::is_null(value) && >heap->is_evacuation_in_progress()); > >Can be just: > >shenandoah_assert_marked_if(NULL, value, >!CompressedOops::is_null(value) && >ShenandoahHeap::heap()->is_evacuation_in_progress()); > >*) After the change above is done, you can make >SBS::oop_store_not_in_heap available always: e.g. >drop the ASSERT around it. > >*) I think the block in oop_load_not_in_heap needs the comment why this >is done. This is a weird >exception anyway: it leaks the from-space pointers from the weak roots, >no? What actually guarantees >we would not store that from-space pointer somewhere *on heap*? > >*) This block can be simplified: > > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > if (heap->is_evacuation_in_progress()) { >ShenandoahMarkingContext* const marking_context = >heap->complete_marking_context(); > if (!marking_context->is_marked(value)) { > return NULL; > } > } > >to: > > ShenandoahHeap* const heap = ShenandoahHeap::heap(); >if (heap->is_evacuation_in_progress() && >!heap->complete_marking_context()->is_marked(value)) { > return NULL; > } > >-Aleksey -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Tue Jun 11 12:18:33 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 11 Jun 2019 08:18:33 -0400 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <840D88C2-7D41-4A3B-8781-EB068CB8A3BC@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> <840D88C2-7D41-4A3B-8781-EB068CB8A3BC@redhat.com> Message-ID: <495996a2-3a31-06a0-78cd-023b11192e33@redhat.com> On 6/11/19 6:39 AM, Roman Kennke wrote: > It looks to me like it adds more work, while not reaping the benefit of > it, specifically the ability to clean some roots concurrently. I assume > this would come in follow-up? > Yes, this is a prerequisite of JDK-8225534 (https://bugs.openjdk.java.net/browse/JDK-8225534) Thanks, -Zhengyu > Roman > > > Am 11. Juni 2019 01:14:48 MESZ schrieb Zhengyu Gu : > > > > On 6/10/19 4:32 AM, Aleksey Shipilev wrote: > > On 6/10/19 2:06 AM, Zhengyu Gu wrote: > > Please review this enhancement of native access barrier, in > preparation for concurrent root processing. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ > > > *) It looks to me the webrev itself and the patch in it > disagree. For example, webrev says the > entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the patch > has the ASSERT block internally. The > patch also has the unrelated change in shenandoahForwarding.hpp. > > > Sorry, it is a broken webrev. > > Updated:http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ > > Reran hotspot_gc_shenandoah (fastdebug and release) > > Thanks, > > -Zhengyu > > > *) Why change Raw::oop_store_in_heap to Raw::oop_store in > ShenandoahBarrierSet::oop_store_in_heap? > > *) You can write this block: > > #ifdef ASSERT > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > shenandoah_assert_marked_if(value, > heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)); > #endif > > as: > > shenandoah_assert_marked_if(value, > ShenandoahHeap::heap()->is_evacuation_in_progress()); > > > *) Also, this block: > > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > if (!CompressedOops::is_null(value) && > heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)) { > > as: > > if (!CompressedOops::is_null(value) && > ShenandoahHeap::heap()->is_evacuation_in_progress()) { > > > > -Aleksey > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Tue Jun 11 14:25:21 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 11 Jun 2019 10:25:21 -0400 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <606DB543-B668-4530-BD8F-5B26BC9AFFE3@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> <5605fa8e-4e19-5a7a-04cd-e480fd35fa5f@redhat.com> <606DB543-B668-4530-BD8F-5B26BC9AFFE3@redhat.com> Message-ID: <9ccaef06-f6b1-7e8c-8f7f-f23063354290@redhat.com> Updated: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.02/ Okay now? Thanks, -Zhengyu On 6/11/19 6:43 AM, Roman Kennke wrote: > I think it returns either NULL or passes through LRB, I think this is > fine and does not leak from-space-refs. > > Roman > > > Am 11. Juni 2019 11:23:12 MESZ schrieb Aleksey Shipilev : > > On 6/11/19 1:14 AM, Zhengyu Gu wrote: > > On 6/10/19 4:32 AM, Aleksey Shipilev wrote: > > On 6/10/19 2:06 AM, Zhengyu Gu wrote: > > Please review this enhancement of native access barrier, > in preparation for concurrent root > processing. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 > Webrev: > http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ > > > *) It looks to me the webrev itself and the patch in it > disagree. For example, webrev says the > entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the > patch has the ASSERT block internally. The > patch also has the unrelated change in shenandoahForwarding.hpp. > > > Sorry, it is a broken webrev. > > Updated: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ > > > This patch cannot go to jdk/jdk. It can only go to sh/jdk. > > *) This block: > > 99 ShenandoahHeap* const heap = ShenandoahHeap::heap(); > 100 shenandoah_assert_marked_if(NULL, value, !CompressedOops::is_null(value) && > heap->is_evacuation_in_progress()); > > Can be just: > > shenandoah_assert_marked_if(NULL, value, !CompressedOops::is_null(value) && > ShenandoahHeap::heap()->is_evacuation_in_progress()); > > *) After the change above is done, you can make SBS::oop_store_not_in_heap available always: e.g. > drop the ASSERT around it. > > *) I think the block in oop_load_not_in_heap needs the comment why this is done. This is a weird > exception anyway: it leaks the from-space pointers from the weak roots, no? What actually guarantees > we would not store that from-space pointer somewhere *on heap*? > > *) This block can be simplified: > > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > if (heap->is_evacuation_in_progress()) { > ShenandoahMarkingContext* const marking_context = heap->complete_marking_context(); > if (!marking_context->is_marked(value)) { > return NULL; > } > } > > to: > > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > if (heap->is_evacuation_in_progress() && !heap->complete_marking_context()->is_marked(value)) { > return NULL; > } > > -Aleksey > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Tue Jun 11 15:10:16 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 11 Jun 2019 11:10:16 -0400 Subject: RFR(S) 8225572: Shenandoah: Move JNIHandles root out of serial roots Message-ID: Please review this patch that separates JNIHandles from ShenandoahSerialRoots,in preparation of making it a concurrent root, that can be evacuated concurrently. Bug: https://bugs.openjdk.java.net/browse/JDK-8225572 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225572/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From rkennke at redhat.com Tue Jun 11 15:51:06 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 11 Jun 2019 17:51:06 +0200 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <9ccaef06-f6b1-7e8c-8f7f-f23063354290@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> <5605fa8e-4e19-5a7a-04cd-e480fd35fa5f@redhat.com> <606DB543-B668-4530-BD8F-5B26BC9AFFE3@redhat.com> <9ccaef06-f6b1-7e8c-8f7f-f23063354290@redhat.com> Message-ID: <13F7044D-4E98-4959-9F2E-8D7ED2D453EA@redhat.com> OK by me. Thanks! Roman Am 11. Juni 2019 16:25:21 MESZ schrieb Zhengyu Gu : >Updated: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.02/ > >Okay now? > >Thanks, > >-Zhengyu > >On 6/11/19 6:43 AM, Roman Kennke wrote: >> I think it returns either NULL or passes through LRB, I think this is > >> fine and does not leak from-space-refs. >> >> Roman >> >> >> Am 11. Juni 2019 11:23:12 MESZ schrieb Aleksey Shipilev >: >> >> On 6/11/19 1:14 AM, Zhengyu Gu wrote: >> >> On 6/10/19 4:32 AM, Aleksey Shipilev wrote: >> >> On 6/10/19 2:06 AM, Zhengyu Gu wrote: >> >> Please review this enhancement of native access >barrier, >> in preparation for concurrent root >> processing. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 >> Webrev: >> >http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ >> >> >> *) It looks to me the webrev itself and the patch in it >> disagree. For example, webrev says the >> entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the >> patch has the ASSERT block internally. The >> patch also has the unrelated change in >shenandoahForwarding.hpp. >> >> >> Sorry, it is a broken webrev. >> >> Updated: >http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ >> >> >> This patch cannot go to jdk/jdk. It can only go to sh/jdk. >> >> *) This block: >> >> 99 ShenandoahHeap* const heap = ShenandoahHeap::heap(); >> 100 shenandoah_assert_marked_if(NULL, value, >!CompressedOops::is_null(value) && >> heap->is_evacuation_in_progress()); >> >> Can be just: >> >> shenandoah_assert_marked_if(NULL, value, >!CompressedOops::is_null(value) && >> ShenandoahHeap::heap()->is_evacuation_in_progress()); >> >> *) After the change above is done, you can make >SBS::oop_store_not_in_heap available always: e.g. >> drop the ASSERT around it. >> >> *) I think the block in oop_load_not_in_heap needs the comment >why this is done. This is a weird >> exception anyway: it leaks the from-space pointers from the weak >roots, no? What actually guarantees >> we would not store that from-space pointer somewhere *on heap*? >> >> *) This block can be simplified: >> >> ShenandoahHeap* const heap = ShenandoahHeap::heap(); >> if (heap->is_evacuation_in_progress()) { >> ShenandoahMarkingContext* const marking_context = >heap->complete_marking_context(); >> if (!marking_context->is_marked(value)) { >> return NULL; >> } >> } >> >> to: >> >> ShenandoahHeap* const heap = ShenandoahHeap::heap(); >> if (heap->is_evacuation_in_progress() && >!heap->complete_marking_context()->is_marked(value)) { >> return NULL; >> } >> >> -Aleksey >> >> >> -- >> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From rkennke at redhat.com Tue Jun 11 15:50:22 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 11 Jun 2019 17:50:22 +0200 Subject: RFR(S) 8225572: Shenandoah: Move JNIHandles root out of serial roots In-Reply-To: References: Message-ID: <44CF733F-4D92-40D6-8531-50DAE1D85807@redhat.com> Looks gold to me! thanks! Roman Am 11. Juni 2019 17:10:16 MESZ schrieb Zhengyu Gu : >Please review this patch that separates JNIHandles from >ShenandoahSerialRoots,in preparation of making it a concurrent root, >that can be evacuated concurrently. > >Bug: https://bugs.openjdk.java.net/browse/JDK-8225572 >Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225572/webrev.00/ > >Test: > hotspot_gc_shenandoah (fastdebug and release) > >Thanks, > >-Zhengyu -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Tue Jun 11 16:22:52 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 11 Jun 2019 12:22:52 -0400 Subject: RFR 8225550: Shenandoah: Prevent SH::object_iterate() call's side-effects Message-ID: <82f7b32c-b5cd-8e5d-95bd-d1f11f8f653a@redhat.com> This is another prerequisite for concurrent root processing. It prevents heap iteration from touching objects, that are considered unreachable by current GC cycle. Otherwise, LRB may evacuate the objects, make them alive from GC point of view. The solution is to use the same roots to seed the iteration as ongoing GC cycle. Bug: https://bugs.openjdk.java.net/browse/JDK-8225550 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225550/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From zgu at redhat.com Tue Jun 11 17:21:00 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 11 Jun 2019 13:21:00 -0400 Subject: RFR 8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots to-space invariant Message-ID: <97cb2092-6a11-80f0-4257-a78f61e5d6cc@redhat.com> This patch adds a new API to Shenandoah verifier, the verifies all roots only contain to-space references. This API should help concurrent root processing work, to catch bad references in roots. Bug: https://bugs.openjdk.java.net/browse/JDK-8225573 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225573/webrev.00/8225573 Test: hotspot_gc_shenandoah (fastdebug and release) with -XX:+ShenandoahVerify Thanks, -Zhengyu From roman at kennke.org Tue Jun 11 18:15:30 2019 From: roman at kennke.org (Roman Kennke) Date: Tue, 11 Jun 2019 20:15:30 +0200 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <495996a2-3a31-06a0-78cd-023b11192e33@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> <840D88C2-7D41-4A3B-8781-EB068CB8A3BC@redhat.com> <495996a2-3a31-06a0-78cd-023b11192e33@redhat.com> Message-ID: <372A6EED-07F8-4D45-8CA8-EAA1A77EFC07@kennke.org> BTW, not really. Returning NULL for unreachable oops is a prerequisite for concurrent cleaning. Concurrent evacuation&updating can be done with just the LRB. However, you likely also need the C1 and C2 barriers. Roman Am 11. Juni 2019 14:18:33 MESZ schrieb Zhengyu Gu : > > >On 6/11/19 6:39 AM, Roman Kennke wrote: >> It looks to me like it adds more work, while not reaping the benefit >of >> it, specifically the ability to clean some roots concurrently. I >assume >> this would come in follow-up? >> >Yes, this is a prerequisite of JDK-8225534 >(https://bugs.openjdk.java.net/browse/JDK-8225534) > >Thanks, > >-Zhengyu > >> Roman >> >> >> Am 11. Juni 2019 01:14:48 MESZ schrieb Zhengyu Gu : >> >> >> >> On 6/10/19 4:32 AM, Aleksey Shipilev wrote: >> >> On 6/10/19 2:06 AM, Zhengyu Gu wrote: >> >> Please review this enhancement of native access barrier, >in >> preparation for concurrent root processing. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 >> Webrev: >http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ >> >> >> *) It looks to me the webrev itself and the patch in it >> disagree. For example, webrev says the >> entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the >patch >> has the ASSERT block internally. The >> patch also has the unrelated change in >shenandoahForwarding.hpp. >> >> >> Sorry, it is a broken webrev. >> >> Updated:http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ >> >> Reran hotspot_gc_shenandoah (fastdebug and release) >> >> Thanks, >> >> -Zhengyu >> >> >> *) Why change Raw::oop_store_in_heap to Raw::oop_store in >> ShenandoahBarrierSet::oop_store_in_heap? >> >> *) You can write this block: >> >> #ifdef ASSERT >> ShenandoahHeap* const heap = ShenandoahHeap::heap(); >> shenandoah_assert_marked_if(value, >> heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)); >> #endif >> >> as: >> >> shenandoah_assert_marked_if(value, >> ShenandoahHeap::heap()->is_evacuation_in_progress()); >> >> >> *) Also, this block: >> >> ShenandoahHeap* const heap = ShenandoahHeap::heap(); >> if (!CompressedOops::is_null(value) && >> heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)) { >> >> as: >> >> if (!CompressedOops::is_null(value) && >> ShenandoahHeap::heap()->is_evacuation_in_progress()) { >> >> >> >> -Aleksey >> >> >> -- >> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Tue Jun 11 18:19:37 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 11 Jun 2019 14:19:37 -0400 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <372A6EED-07F8-4D45-8CA8-EAA1A77EFC07@kennke.org> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> <840D88C2-7D41-4A3B-8781-EB068CB8A3BC@redhat.com> <495996a2-3a31-06a0-78cd-023b11192e33@redhat.com> <372A6EED-07F8-4D45-8CA8-EAA1A77EFC07@kennke.org> Message-ID: <5587864d-d020-f9eb-24cc-90369abca97e@redhat.com> On 6/11/19 2:15 PM, Roman Kennke wrote: > BTW, not really. Returning NULL for unreachable oops is a prerequisite > for concurrent cleaning. Concurrent evacuation&updating can be done with > just the LRB. Right! I will move this CR out of JDK-8225534. Thanks, -Zhengyu > However, you likely also need the C1 and C2 barriers. > > Roman > > Am 11. Juni 2019 14:18:33 MESZ schrieb Zhengyu Gu : > > > > On 6/11/19 6:39 AM, Roman Kennke wrote: > > It looks to me like it adds more work, while not reaping the > benefit of > it, specifically the ability to clean some roots concurrently. I > assume > this would come in follow-up? > > Yes, this is a prerequisite of JDK-8225534 > (https://bugs.openjdk.java.net/browse/JDK-8225534) > > Thanks, > > -Zhengyu > > Roman > > > Am 11. Juni 2019 01:14:48 MESZ schrieb Zhengyu Gu : > > > > On 6/10/19 4:32 AM, Aleksey Shipilev wrote: > > On 6/10/19 2:06 AM, Zhengyu Gu wrote: > > Please review this enhancement of native access barrier, in > preparation for concurrent root processing. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225483 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.00/ > > > *) It looks to me the webrev itself and the patch in it > disagree. For example, webrev says the > entire oop_store_not_in_heap is #ifdef ASSERT-ed, but the patch > has the ASSERT block internally. The > patch also has the unrelated change in shenandoahForwarding.hpp. > > > Sorry, it is a broken webrev. > > Updated:http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.01/ > > Reran hotspot_gc_shenandoah (fastdebug and release) > > Thanks, > > -Zhengyu > > > *) Why change Raw::oop_store_in_heap to Raw::oop_store in > ShenandoahBarrierSet::oop_store_in_heap? > > *) You can write this block: > > #ifdef ASSERT > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > shenandoah_assert_marked_if(value, > heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)); > #endif > > as: > > shenandoah_assert_marked_if(value, > ShenandoahHeap::heap()->is_evacuation_in_progress()); > > > *) Also, this block: > > ShenandoahHeap* const heap = ShenandoahHeap::heap(); > if (!CompressedOops::is_null(value) && > heap->is_gc_in_progress_mask(ShenandoahHeap::EVACUATION)) { > > as: > > if (!CompressedOops::is_null(value) && > ShenandoahHeap::heap()->is_evacuation_in_progress()) { > > > > -Aleksey > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail > gesendet. > > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Wed Jun 12 00:50:14 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 11 Jun 2019 20:50:14 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots Message-ID: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> This is the last sub task of JDK-8225534 [1], that moves evacuation of JNIHandles and Class Loader Data into concurrent phase. This is the first step that moves some root processing into concurrent phase, and this step can be backported to the releases that don't support nmethod barrier. 1. Concurrent CLDG root evacuation can not run through safepoints, where there may also perform CLDG walk, e.g. heap iteration. So it requires suspendible workers always on, therefore, ShenandoahSuspendibleWorkers flag is removed, along with related test cases. There are many trivial changes just because of this flag. 2. A new concurrent phase "concurrent roots" is added to perform concurrent JNI and CLDG root evacuation. In Next step, it will also perform concurrent class unloading and nmethod cleanup. 3) This patch does not address Traversal GC. Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) [1] https://bugs.openjdk.java.net/browse/JDK-8225582 Thanks, -Zhengyu From shade at redhat.com Wed Jun 12 08:27:12 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 12 Jun 2019 10:27:12 +0200 Subject: RFR 8225550: Shenandoah: Prevent SH::object_iterate() call's side-effects In-Reply-To: <82f7b32c-b5cd-8e5d-95bd-d1f11f8f653a@redhat.com> References: <82f7b32c-b5cd-8e5d-95bd-d1f11f8f653a@redhat.com> Message-ID: <6f213b70-9b3e-04b8-de4a-e7b09273ea65@redhat.com> On 6/11/19 6:22 PM, Zhengyu Gu wrote: > This is another prerequisite for concurrent root processing. It prevents heap iteration from > touching objects, that are considered unreachable by current GC cycle. Otherwise, LRB may evacuate > the objects, make them alive from GC point of view. > > The solution is to use the same roots to seed the iteration as ongoing GC cycle. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225550 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225550/webrev.00/ Looks good. -Aleksey From shade at redhat.com Wed Jun 12 08:32:35 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 12 Jun 2019 10:32:35 +0200 Subject: RFR 8225483: Shenandoah: Enhance native access barrier In-Reply-To: <13F7044D-4E98-4959-9F2E-8D7ED2D453EA@redhat.com> References: <9d9f5bb2-eff2-e117-d1a4-49339a2cd124@redhat.com> <8a2d332d-6005-64ed-9fbc-7acf388f95b4@redhat.com> <5605fa8e-4e19-5a7a-04cd-e480fd35fa5f@redhat.com> <606DB543-B668-4530-BD8F-5B26BC9AFFE3@redhat.com> <9ccaef06-f6b1-7e8c-8f7f-f23063354290@redhat.com> <13F7044D-4E98-4959-9F2E-8D7ED2D453EA@redhat.com> Message-ID: On 6/11/19 5:51 PM, Roman Kennke wrote: > Am 11. Juni 2019 16:25:21 MESZ schrieb Zhengyu Gu : > Updated: http://cr.openjdk.java.net/~zgu/JDK-8225483/webrev.02/ > Okay now? I still do not like ASSERT around the declaration/definition. What prevents us from making that method available in both release/debug? That would certainly simplify debugging: we would execute the same code in both configurations. -Aleksey From shade at redhat.com Wed Jun 12 08:39:47 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 12 Jun 2019 10:39:47 +0200 Subject: IMPT: Shenandoah related pushes to jdk/jdk this week Message-ID: <67fcee24-8c30-a787-75f4-74bcb0044b32@redhat.com> jdk/jdk is about to fork for jdk13 release. That tree is stable right now, and we want to keep it that way until the fork happens. This means we better not push anything Shenandoah related until further notice. I'll update when jdk/jdk is clear to push more stuff in. -- Thanks, -Aleksey From shade at redhat.com Wed Jun 12 08:49:59 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 12 Jun 2019 10:49:59 +0200 Subject: RFR [8u]: Pick up 8u222-b05 to sh/jdk8 Message-ID: <6c53f57b-781d-37cd-0da2-83a6c6e47ed0@redhat.com> Need to pick up 8u222-b05 for stabilization. Changesets: http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk8-8u222-b05/changesets.txt Hotspot merge changeset: http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk8-8u222-b05/hotspot.changeset Testing: hotspot_gc_shenandoah {fastdebug|release} -- Thanks, -Aleksey From shade at redhat.com Wed Jun 12 11:10:35 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 12 Jun 2019 13:10:35 +0200 Subject: RFR (S) 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC Message-ID: <4146efa7-8165-c294-f889-92724e8d1e8f@redhat.com> Bug: https://bugs.openjdk.java.net/browse/JDK-8224881 The failure is extremely hard to reproduce: I spent many hours trying, to no avail. It requires a few unlikely things to happen at once. I managed to reproduce it a few times locally with the large test, and the fix seems to help it. So, I would like to push the fix and see if it reproduces in the upcoming months. Fix: http://cr.openjdk.java.net/~shade/8224881/webrev.01/ Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From zgu at redhat.com Wed Jun 12 11:16:20 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 12 Jun 2019 07:16:20 -0400 Subject: RFR (S) 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC In-Reply-To: <4146efa7-8165-c294-f889-92724e8d1e8f@redhat.com> References: <4146efa7-8165-c294-f889-92724e8d1e8f@redhat.com> Message-ID: <8a37ff4e-0f91-f54a-279f-df0202b1d053@redhat.com> Good to me. -Zhengyu On 6/12/19 7:10 AM, Aleksey Shipilev wrote: > Bug: > https://bugs.openjdk.java.net/browse/JDK-8224881 > > The failure is extremely hard to reproduce: I spent many hours trying, to no avail. It requires a > few unlikely things to happen at once. I managed to reproduce it a few times locally with the large > test, and the fix seems to help it. So, I would like to push the fix and see if it reproduces in the > upcoming months. > > Fix: > http://cr.openjdk.java.net/~shade/8224881/webrev.01/ > > Testing: hotspot_gc_shenandoah > From rkennke at redhat.com Wed Jun 12 11:21:20 2019 From: rkennke at redhat.com (Roman Kennke) Date: Wed, 12 Jun 2019 13:21:20 +0200 Subject: RFR (S) 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC In-Reply-To: <4146efa7-8165-c294-f889-92724e8d1e8f@redhat.com> References: <4146efa7-8165-c294-f889-92724e8d1e8f@redhat.com> Message-ID: Something's missing in this sentence: " This may happen allocation failure happened when..." Otherwise good. Roman Am 12. Juni 2019 13:10:35 MESZ schrieb Aleksey Shipilev : >Bug: > https://bugs.openjdk.java.net/browse/JDK-8224881 > >The failure is extremely hard to reproduce: I spent many hours trying, >to no avail. It requires a >few unlikely things to happen at once. I managed to reproduce it a few >times locally with the large >test, and the fix seems to help it. So, I would like to push the fix >and see if it reproduces in the >upcoming months. > >Fix: > http://cr.openjdk.java.net/~shade/8224881/webrev.01/ > >Testing: hotspot_gc_shenandoah > >-- >Thanks, >-Aleksey -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Wed Jun 12 15:31:37 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 12 Jun 2019 11:31:37 -0400 Subject: RFR 8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots API to mirror CLDG API Message-ID: ShenandoahClassDataRoots only exports a generic CLDG iteration API (roots_cld_do), which requires caller to pass in proper strong closure and/or weak closure, while CLDG has two more explicit APIs: always_strong_cld_do() and cld_do() for iterating strong class loader data and all class loader data. This refactor converts ShenandoahClassDataRoots API to mirror the two more explicit CLDG APIs. I think, should result more readable and less error prone code. Bug: https://bugs.openjdk.java.net/browse/JDK-8225590 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225590/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From rkennke at redhat.com Wed Jun 12 17:37:28 2019 From: rkennke at redhat.com (Roman Kennke) Date: Wed, 12 Jun 2019 19:37:28 +0200 Subject: RFR [8u]: Pick up 8u222-b05 to sh/jdk8 In-Reply-To: <6c53f57b-781d-37cd-0da2-83a6c6e47ed0@redhat.com> References: <6c53f57b-781d-37cd-0da2-83a6c6e47ed0@redhat.com> Message-ID: <2432335a-1b7a-512c-a95d-0e25a2af9890@redhat.com> Looks good, thanks! Roman > Need to pick up 8u222-b05 for stabilization. > > Changesets: > http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk8-8u222-b05/changesets.txt > > Hotspot merge changeset: > http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk8-8u222-b05/hotspot.changeset > > Testing: hotspot_gc_shenandoah {fastdebug|release} > From shade at redhat.com Wed Jun 12 17:43:02 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 17:43:02 +0000 Subject: hg: shenandoah/jdk8: 13 new changesets Message-ID: <201906121743.x5CHh2uZ020924@aojmv0008.oracle.com> Changeset: 2618046271a4 Author: clanger Date: 2019-05-17 07:41 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/2618046271a4 8213213: Remove src/java.desktop/unix/classes/sun/awt/X11/keysym2ucs.h Reviewed-by: phh ! THIRD_PARTY_README Changeset: 4e53c50e441a Author: andrew Date: 2019-05-17 18:53 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/4e53c50e441a Added tag jdk8u222-b03 for changeset 2618046271a4 ! .hgtags Changeset: afd208f49380 Author: andrew Date: 2019-05-21 02:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/afd208f49380 Merge jdk8u222-b03 ! .hgtags ! THIRD_PARTY_README Changeset: d2938451bd21 Author: andrew Date: 2019-05-21 04:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/d2938451bd21 Added tag aarch64-shenandoah-jdk8u222-b03 for changeset afd208f49380 ! .hgtags Changeset: fafb0fa27936 Author: andrew Date: 2019-05-23 04:04 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/fafb0fa27936 Added tag jdk8u222-b04 for changeset 4e53c50e441a ! .hgtags Changeset: 7eb7b664676e Author: andrew Date: 2019-05-25 18:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/7eb7b664676e Merge jdk8u222-b04 ! .hgtags Changeset: a1d4070c4b49 Author: andrew Date: 2019-05-25 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/a1d4070c4b49 Added tag aarch64-shenandoah-jdk8u222-b04 for changeset 7eb7b664676e ! .hgtags Changeset: 21f2cf7d3069 Author: rkennke Date: 2019-05-28 18:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/21f2cf7d3069 8218020: Fix version number in mesa.md 3rd party legal file Reviewed-by: clanger ! THIRD_PARTY_README Changeset: 7854afda0cd9 Author: serb Date: 2019-03-31 16:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/7854afda0cd9 8220495: Update GIFlib library to the 5.1.8 Reviewed-by: prr ! THIRD_PARTY_README Changeset: 68e653b95805 Author: stooke Date: 2019-06-05 03:15 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/68e653b95805 8210886: Remove references in xwindows.md to non-existent files. Reviewed-by: serb, dmarkov, andrew ! THIRD_PARTY_README Changeset: 8f29b4acc5d2 Author: stooke Date: 2019-06-05 04:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/8f29b4acc5d2 8193830: Xalan Update: Xalan Java 2.7.2 Reviewed-by: lancea, clanger, andrew ! THIRD_PARTY_README Changeset: cb8ab499186e Author: andrew Date: 2019-06-05 16:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/cb8ab499186e Merge jdk8u222-b05 ! THIRD_PARTY_README Changeset: 2d1e2f44d10a Author: andrew Date: 2019-06-05 17:40 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/2d1e2f44d10a Added tag aarch64-shenandoah-jdk8u222-b05 for changeset cb8ab499186e ! .hgtags From shade at redhat.com Wed Jun 12 17:43:03 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 17:43:03 +0000 Subject: hg: shenandoah/jdk8/jaxp: 13 new changesets Message-ID: <201906121743.x5CHh3hx020992@aojmv0008.oracle.com> Changeset: 33e1a4d78f73 Author: clanger Date: 2019-05-17 07:44 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/33e1a4d78f73 8213213: Remove src/java.desktop/unix/classes/sun/awt/X11/keysym2ucs.h Reviewed-by: phh ! THIRD_PARTY_README Changeset: 8ea2487d7060 Author: andrew Date: 2019-05-17 18:53 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/8ea2487d7060 Added tag jdk8u222-b03 for changeset 33e1a4d78f73 ! .hgtags Changeset: 89de8381f352 Author: andrew Date: 2019-05-21 02:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/89de8381f352 Merge jdk8u222-b03 ! .hgtags ! THIRD_PARTY_README Changeset: d107671bd085 Author: andrew Date: 2019-05-21 04:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/d107671bd085 Added tag aarch64-shenandoah-jdk8u222-b03 for changeset 89de8381f352 ! .hgtags Changeset: 22037d0a908f Author: andrew Date: 2019-05-23 04:05 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/22037d0a908f Added tag jdk8u222-b04 for changeset 8ea2487d7060 ! .hgtags Changeset: 04bc4015fcde Author: andrew Date: 2019-05-25 18:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/04bc4015fcde Merge jdk8u222-b04 ! .hgtags Changeset: ae576427e335 Author: andrew Date: 2019-05-25 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/ae576427e335 Added tag aarch64-shenandoah-jdk8u222-b04 for changeset 04bc4015fcde ! .hgtags Changeset: 1f9e5c7007ef Author: rkennke Date: 2019-05-28 18:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/1f9e5c7007ef 8218020: Fix version number in mesa.md 3rd party legal file Reviewed-by: clanger ! THIRD_PARTY_README Changeset: 18619019e028 Author: serb Date: 2019-03-31 16:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/18619019e028 8220495: Update GIFlib library to the 5.1.8 Reviewed-by: prr ! THIRD_PARTY_README Changeset: 99d96dc6231e Author: stooke Date: 2019-06-05 03:24 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/99d96dc6231e 8210886: Remove references in xwindows.md to non-existent files. Reviewed-by: serb, dmarkov, andrew ! THIRD_PARTY_README Changeset: de624afa6e75 Author: stooke Date: 2019-06-05 04:08 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/de624afa6e75 8193830: Xalan Update: Xalan Java 2.7.2 Reviewed-by: lancea, clanger, andrew ! THIRD_PARTY_README ! src/com/sun/org/apache/xalan/internal/Version.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/FunctionAvailableCall.java ! src/com/sun/org/apache/xalan/internal/xsltc/compiler/Sort.java ! src/com/sun/org/apache/xalan/internal/xsltc/dom/AdaptiveResultTreeImpl.java ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java ! src/com/sun/org/apache/xml/internal/dtm/ref/DTMDefaultBase.java ! src/com/sun/org/apache/xml/internal/utils/NodeVector.java Changeset: d2cda074d4fc Author: andrew Date: 2019-06-05 16:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/d2cda074d4fc Merge jdk8u222-b05 ! THIRD_PARTY_README ! src/com/sun/org/apache/xalan/internal/xsltc/runtime/BasisLibrary.java Changeset: da43c4bca65b Author: andrew Date: 2019-06-05 17:40 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/da43c4bca65b Added tag aarch64-shenandoah-jdk8u222-b05 for changeset d2cda074d4fc ! .hgtags From shade at redhat.com Wed Jun 12 17:43:04 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 17:43:04 +0000 Subject: hg: shenandoah/jdk8/jaxws: 13 new changesets Message-ID: <201906121743.x5CHh43M021047@aojmv0008.oracle.com> Changeset: 31929fd23ea7 Author: clanger Date: 2019-05-17 07:45 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/31929fd23ea7 8213213: Remove src/java.desktop/unix/classes/sun/awt/X11/keysym2ucs.h Reviewed-by: phh ! THIRD_PARTY_README Changeset: 6c1de4345dc7 Author: andrew Date: 2019-05-17 18:53 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/6c1de4345dc7 Added tag jdk8u222-b03 for changeset 31929fd23ea7 ! .hgtags Changeset: 57213977c96a Author: andrew Date: 2019-05-21 02:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/57213977c96a Merge jdk8u222-b03 ! .hgtags ! THIRD_PARTY_README Changeset: 923d6f88999a Author: andrew Date: 2019-05-21 04:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/923d6f88999a Added tag aarch64-shenandoah-jdk8u222-b03 for changeset 57213977c96a ! .hgtags Changeset: daa5c475045d Author: andrew Date: 2019-05-23 04:05 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/daa5c475045d Added tag jdk8u222-b04 for changeset 6c1de4345dc7 ! .hgtags Changeset: 89dfd02e929d Author: andrew Date: 2019-05-25 18:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/89dfd02e929d Merge jdk8u222-b04 ! .hgtags Changeset: 23a5213b263a Author: andrew Date: 2019-05-25 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/23a5213b263a Added tag aarch64-shenandoah-jdk8u222-b04 for changeset 89dfd02e929d ! .hgtags Changeset: c9fd0f0e5c8d Author: rkennke Date: 2019-05-28 18:51 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/c9fd0f0e5c8d 8218020: Fix version number in mesa.md 3rd party legal file Reviewed-by: clanger ! THIRD_PARTY_README Changeset: 937fcb3b28d7 Author: serb Date: 2019-03-31 16:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/937fcb3b28d7 8220495: Update GIFlib library to the 5.1.8 Reviewed-by: prr ! THIRD_PARTY_README Changeset: 58b7d9924d70 Author: stooke Date: 2019-06-05 03:24 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/58b7d9924d70 8210886: Remove references in xwindows.md to non-existent files. Reviewed-by: serb, dmarkov, andrew ! THIRD_PARTY_README Changeset: bd5323b37905 Author: stooke Date: 2019-06-05 04:11 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/bd5323b37905 8193830: Xalan Update: Xalan Java 2.7.2 Reviewed-by: lancea, clanger, andrew ! THIRD_PARTY_README Changeset: 4064e6bf4780 Author: andrew Date: 2019-06-05 16:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/4064e6bf4780 Merge jdk8u222-b05 ! THIRD_PARTY_README Changeset: d551e794255b Author: andrew Date: 2019-06-05 17:40 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/d551e794255b Added tag aarch64-shenandoah-jdk8u222-b05 for changeset 4064e6bf4780 ! .hgtags From shade at redhat.com Wed Jun 12 17:43:05 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 17:43:05 +0000 Subject: hg: shenandoah/jdk8/corba: 13 new changesets Message-ID: <201906121743.x5CHh5qW021133@aojmv0008.oracle.com> Changeset: 4c7079509eec Author: clanger Date: 2019-05-17 07:44 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/4c7079509eec 8213213: Remove src/java.desktop/unix/classes/sun/awt/X11/keysym2ucs.h Reviewed-by: phh ! THIRD_PARTY_README Changeset: 1b43db192b99 Author: andrew Date: 2019-05-17 18:53 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/1b43db192b99 Added tag jdk8u222-b03 for changeset 4c7079509eec ! .hgtags Changeset: 0b4decdb7aa5 Author: andrew Date: 2019-05-21 02:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/0b4decdb7aa5 Merge jdk8u222-b03 ! .hgtags ! THIRD_PARTY_README Changeset: b8f3a89f9f6e Author: andrew Date: 2019-05-21 04:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/b8f3a89f9f6e Added tag aarch64-shenandoah-jdk8u222-b03 for changeset 0b4decdb7aa5 ! .hgtags Changeset: 479115b0c67e Author: andrew Date: 2019-05-23 04:05 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/479115b0c67e Added tag jdk8u222-b04 for changeset 1b43db192b99 ! .hgtags Changeset: df53e96ae250 Author: andrew Date: 2019-05-25 18:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/df53e96ae250 Merge jdk8u222-b04 ! .hgtags Changeset: e701fd018ffb Author: andrew Date: 2019-05-25 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/e701fd018ffb Added tag aarch64-shenandoah-jdk8u222-b04 for changeset df53e96ae250 ! .hgtags Changeset: e40976876b76 Author: rkennke Date: 2019-05-28 18:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/e40976876b76 8218020: Fix version number in mesa.md 3rd party legal file Reviewed-by: clanger ! THIRD_PARTY_README Changeset: 37bfb5bd2e68 Author: serb Date: 2019-03-31 16:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/37bfb5bd2e68 8220495: Update GIFlib library to the 5.1.8 Reviewed-by: prr ! THIRD_PARTY_README Changeset: 57a847ef9420 Author: stooke Date: 2019-06-05 03:15 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/57a847ef9420 8210886: Remove references in xwindows.md to non-existent files. Reviewed-by: serb, dmarkov, andrew ! THIRD_PARTY_README Changeset: 5837b825d94b Author: stooke Date: 2019-06-05 04:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/5837b825d94b 8193830: Xalan Update: Xalan Java 2.7.2 Reviewed-by: lancea, clanger, andrew ! THIRD_PARTY_README Changeset: 05f8ef8518c8 Author: andrew Date: 2019-06-05 16:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/05f8ef8518c8 Merge jdk8u222-b05 ! THIRD_PARTY_README Changeset: fbc2bbd9f194 Author: andrew Date: 2019-06-05 17:40 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/fbc2bbd9f194 Added tag aarch64-shenandoah-jdk8u222-b05 for changeset 05f8ef8518c8 ! .hgtags From shade at redhat.com Wed Jun 12 17:43:08 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 17:43:08 +0000 Subject: hg: shenandoah/jdk8/langtools: 14 new changesets Message-ID: <201906121743.x5CHh8VM021243@aojmv0008.oracle.com> Changeset: 3cfb1fd0590a Author: clanger Date: 2019-05-17 07:45 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/3cfb1fd0590a 8213213: Remove src/java.desktop/unix/classes/sun/awt/X11/keysym2ucs.h Reviewed-by: phh ! THIRD_PARTY_README Changeset: 12045c5cae33 Author: sgroeger Date: 2019-05-17 18:41 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/12045c5cae33 8218152: [javac] fails and exits with no error if a bad annotation processor provided Summary: Handle exceptions thrown while loading annotation processors. Reviewed-by: jlahoda, andrew ! src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java ! src/share/classes/com/sun/tools/javac/resources/compiler.properties + test/tools/javac/annotations/8218152/MalformedAnnotationProcessorTests.java ! test/tools/javac/diags/examples.not-yet.txt Changeset: a5c129168bd3 Author: andrew Date: 2019-05-17 18:53 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/a5c129168bd3 Added tag jdk8u222-b03 for changeset 12045c5cae33 ! .hgtags Changeset: cdaf16c0f641 Author: andrew Date: 2019-05-21 02:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/cdaf16c0f641 Merge jdk8u222-b03 ! .hgtags ! THIRD_PARTY_README Changeset: 66691cd8bb49 Author: andrew Date: 2019-05-21 04:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/66691cd8bb49 Added tag aarch64-shenandoah-jdk8u222-b03 for changeset cdaf16c0f641 ! .hgtags Changeset: fdd291a98a2b Author: andrew Date: 2019-05-23 04:05 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/fdd291a98a2b Added tag jdk8u222-b04 for changeset a5c129168bd3 ! .hgtags Changeset: 9e6edac9bfd8 Author: andrew Date: 2019-05-25 18:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/9e6edac9bfd8 Merge jdk8u222-b04 ! .hgtags Changeset: 5a3142c7fe54 Author: andrew Date: 2019-05-25 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/5a3142c7fe54 Added tag aarch64-shenandoah-jdk8u222-b04 for changeset 9e6edac9bfd8 ! .hgtags Changeset: 25b169d7c150 Author: rkennke Date: 2019-05-28 18:51 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/25b169d7c150 8218020: Fix version number in mesa.md 3rd party legal file Reviewed-by: clanger ! THIRD_PARTY_README Changeset: 585c9a1ce7eb Author: serb Date: 2019-03-31 16:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/585c9a1ce7eb 8220495: Update GIFlib library to the 5.1.8 Reviewed-by: prr ! THIRD_PARTY_README Changeset: 31d3bb91590b Author: stooke Date: 2019-06-05 03:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/31d3bb91590b 8210886: Remove references in xwindows.md to non-existent files. Reviewed-by: serb, dmarkov, andrew ! THIRD_PARTY_README Changeset: 2ad39b194cc1 Author: stooke Date: 2019-06-05 04:14 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/2ad39b194cc1 8193830: Xalan Update: Xalan Java 2.7.2 Reviewed-by: lancea, clanger, andrew ! THIRD_PARTY_README Changeset: 2273c3d1e690 Author: andrew Date: 2019-06-05 16:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/2273c3d1e690 Merge jdk8u222-b05 ! THIRD_PARTY_README Changeset: 5f8854cca68f Author: andrew Date: 2019-06-05 17:40 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/5f8854cca68f Added tag aarch64-shenandoah-jdk8u222-b05 for changeset 2273c3d1e690 ! .hgtags From shade at redhat.com Wed Jun 12 17:43:12 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 17:43:12 +0000 Subject: hg: shenandoah/jdk8/hotspot: 34 new changesets Message-ID: <201906121743.x5CHhC5i021268@aojmv0008.oracle.com> Changeset: e86bc9786d83 Author: phh Date: 2019-05-10 18:50 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/e86bc9786d83 8223664: Add jtreg tests for 8223528, backport to jdk8u of 8176100 Summary: Add hotspot/test/runtime/jni directory with two tests for 8176100 Reviewed-by: kbarrett, coleenp, tschatzl + test/runtime/jni/CallWithJNIWeak/CallWithJNIWeak.c + test/runtime/jni/CallWithJNIWeak/CallWithJNIWeak.java + test/runtime/jni/CallWithJNIWeak/test.sh + test/runtime/jni/ReturnJNIWeak/ReturnJNIWeak.c + test/runtime/jni/ReturnJNIWeak/ReturnJNIWeak.java + test/runtime/jni/ReturnJNIWeak/test.sh Changeset: 20dd618188ce Author: andrew Date: 2019-05-14 15:04 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/20dd618188ce Merge Changeset: 7cbcb271bad7 Author: sgehwolf Date: 2019-04-30 17:42 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/7cbcb271bad7 8210425: [x86] sharedRuntimeTrig/sharedRuntimeTrans compiled without optimization Summary: Compile with -O3 and relevant C flags as for fdlibm. Reviewed-by: andrew ! make/bsd/makefiles/amd64.make ! make/bsd/makefiles/i486.make ! make/bsd/makefiles/ppc.make ! make/bsd/makefiles/zeroshark.make ! make/linux/makefiles/amd64.make ! make/linux/makefiles/i486.make ! make/linux/makefiles/ppc64.make ! make/linux/makefiles/zeroshark.make Changeset: 1ebcc366ee62 Author: ysuenaga Date: 2015-12-09 21:24 +0900 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/1ebcc366ee62 8144332: HSDB could not terminate when close button is pushed. Reviewed-by: jbachorik ! agent/src/share/classes/sun/jvm/hotspot/HSDB.java Changeset: 894c78fcb2ea Author: clanger Date: 2019-05-17 07:44 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/894c78fcb2ea 8213213: Remove src/java.desktop/unix/classes/sun/awt/X11/keysym2ucs.h Reviewed-by: phh ! THIRD_PARTY_README Changeset: bf1c9a3312a4 Author: sla Date: 2014-10-13 22:11 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/bf1c9a3312a4 7102541: RFE: os::set_native_thread_name() cleanups Summary: implement os::set_native_thread_name() on windows, linux Reviewed-by: sla, ctornqvi, simonis Contributed-by: thomas.stuefe at sap.com ! src/os/linux/vm/os_linux.cpp ! src/os/linux/vm/os_linux.hpp ! src/os/windows/vm/os_windows.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vmThread.cpp Changeset: af43bab3c5d0 Author: dholmes Date: 2019-05-17 18:13 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/af43bab3c5d0 8151322: Implement os::set_native_thread_name() on Solaris Reviewed-by: sla, kbarrett, gziemski ! src/os/solaris/vm/os_solaris.cpp ! src/os/solaris/vm/os_solaris.hpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: 00837a7bc349 Author: andrew Date: 2019-05-17 18:53 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/00837a7bc349 Added tag jdk8u222-b03 for changeset af43bab3c5d0 ! .hgtags Changeset: 57787668be5b Author: andrew Date: 2019-05-21 02:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/57787668be5b Merge jdk8u222-b03 ! .hgtags ! THIRD_PARTY_README ! agent/src/share/classes/sun/jvm/hotspot/HSDB.java ! src/os/linux/vm/os_linux.cpp ! src/share/vm/runtime/thread.cpp ! src/share/vm/runtime/vmThread.cpp ! src/share/vm/utilities/globalDefinitions.hpp Changeset: e4329d0568ae Author: andrew Date: 2019-05-21 04:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/e4329d0568ae Added tag aarch64-shenandoah-jdk8u222-b03 for changeset 57787668be5b ! .hgtags Changeset: c045c05b4e80 Author: andrew Date: 2019-05-24 20:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/c045c05b4e80 8210425: [AArch64] sharedRuntimeTrig/sharedRuntimeTrans compiled without optimization Summary: Compile with -O3 and relevant C flags as for fdlibm. ! make/linux/makefiles/aarch64.make Changeset: 2afa5ff125ac Author: phh Date: 2019-05-20 14:37 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/2afa5ff125ac 8223883: Fix jni.cpp copyright date after 8223528 Summary: Change copyright date from 2017 to 2018. Reviewed-by: andrew ! src/share/vm/prims/jni.cpp Changeset: 39678a65a0e8 Author: mhorie Date: 2019-05-20 16:05 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/39678a65a0e8 8158232: PPC64: improve byte, int and long array copy stubs by using VSX instructions Reviewed-by: goetz, mdoerr Contributed-by: Kazunori Ogata ! src/cpu/ppc/vm/stubGenerator_ppc.cpp Changeset: d690709cc339 Author: andrew Date: 2019-05-23 03:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/d690709cc339 Merge Changeset: 9905a72841d7 Author: andrew Date: 2019-05-23 04:05 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/9905a72841d7 Added tag jdk8u222-b04 for changeset d690709cc339 ! .hgtags Changeset: 2c97c05e1992 Author: andrew Date: 2019-05-25 18:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/2c97c05e1992 Merge jdk8u222-b04 ! .hgtags ! src/share/vm/prims/jni.cpp Changeset: 52b3dbd4cc33 Author: andrew Date: 2019-05-25 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/52b3dbd4cc33 Added tag aarch64-shenandoah-jdk8u222-b04 for changeset 2c97c05e1992 ! .hgtags Changeset: 907dd31652ab Author: njian Date: 2017-08-24 16:12 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/907dd31652ab 8186325: AArch64: jtreg test hotspot/test/gc/g1/TestJNIWeakG1/TestJNIWeakG1.java SEGV Reviewed-by: adinn, aph Contributed-by: stuart.monteith at linaro.org ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/templateTable_aarch64.cpp Changeset: 1bbf357c0164 Author: aph Date: 2019-05-28 09:03 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/1bbf357c0164 8224671: AArch64: mauve System.arraycopy test failure Reviewed-by: adinn ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp Changeset: a31ff0acf39b Author: aph Date: 2019-05-28 11:15 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/a31ff0acf39b 8224880: AArch64: java/javac error with AllocatePrefetchDistance Reviewed-by: adinn ! src/cpu/aarch64/vm/vm_version_aarch64.cpp Changeset: aa89ab331168 Author: fyang Date: 2019-05-31 15:51 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/aa89ab331168 8224828: aarch64: rflags is not correct after safepoint poll Reviewed-by: aph, adinn Contributed-by: Xiang Yuan ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp Changeset: 69f33959c27f Author: gromero Date: 2019-05-26 21:02 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/69f33959c27f 8166684: PPC64: implement intrinsic code with vector instructions for Unsafe.copyMemory() Reviewed-by: simonis, mdoerr Contributed-by: Michihiro Horie ! src/cpu/ppc/vm/assembler_ppc.hpp ! src/cpu/ppc/vm/assembler_ppc.inline.hpp ! src/cpu/ppc/vm/stubGenerator_ppc.cpp ! src/cpu/ppc/vm/vm_version_ppc.cpp Changeset: 9f0ea552da23 Author: rkennke Date: 2019-05-28 18:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/9f0ea552da23 8218020: Fix version number in mesa.md 3rd party legal file Reviewed-by: clanger ! THIRD_PARTY_README Changeset: 025ce746a942 Author: rraghavan Date: 2019-05-01 22:02 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/025ce746a942 8202414: Unsafe write after primitive array creation may result in array length change Summary: Avoided collecting unaligned stores in Initialize node by making can_capture_store return false for same Reviewed-by: dlong, kvn, vlivanov ! src/share/vm/opto/memnode.cpp + test/compiler/c2/Test8202414.java Changeset: 846245a33793 Author: gromero Date: 2019-06-03 17:16 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/846245a33793 8185969: PPC64: Improve VSR support to use up to 64 registers Reviewed-by: mdoerr, goetz Contributed-by: Gustavo Serra Scalet , Kazunori Ogata ! src/cpu/ppc/vm/assembler_ppc.hpp ! src/cpu/ppc/vm/assembler_ppc.inline.hpp ! src/cpu/ppc/vm/register_ppc.cpp ! src/cpu/ppc/vm/register_ppc.hpp Changeset: 54e5e3c816d4 Author: serb Date: 2019-03-31 16:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/54e5e3c816d4 8220495: Update GIFlib library to the 5.1.8 Reviewed-by: prr ! THIRD_PARTY_README Changeset: 89dcef434423 Author: xliu Date: 2019-06-03 16:14 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/89dcef434423 8059575: JEP-JDK-8043304: Test task: Tiered Compilation level transition tests Summary: Includes compile_id addition from JDK-8054492 Reviewed-by: andrew ! src/share/vm/prims/whitebox.cpp + test/compiler/tiered/ConstantGettersTransitionsTest.java + test/compiler/tiered/LevelTransitionTest.java ! test/compiler/tiered/NonTieredLevelsTest.java ! test/compiler/tiered/TieredLevelsTest.java + test/compiler/tiered/TransitionsTestExecutor.java ! test/compiler/whitebox/CompilerWhiteBoxTest.java ! test/testlibrary/whitebox/sun/hotspot/code/NMethod.java Changeset: 61d955db2a5b Author: xliu Date: 2019-06-05 03:07 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/61d955db2a5b 8222670: pathological case of JIT recompilation and code cache bloat Summary: Prevent downgraded compilation tasks from recompiling. Reviewed-by: sgehwolf, thartmann, andrew ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileBroker.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/advancedThresholdPolicy.cpp + test/compiler/tiered/Level2RecompilationTest.java ! test/compiler/whitebox/CompilerWhiteBoxTest.java ! test/testlibrary/whitebox/sun/hotspot/WhiteBox.java Changeset: 556282e43cc1 Author: xliu Date: 2019-05-09 18:38 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/556282e43cc1 8223537: testlibrary_tests/ctw/ClassesListTest.java fails with Agent timeout frequently Reviewed-by: thartmann, kvn ! src/share/vm/compiler/compileBroker.cpp Changeset: d0e9ea95f04b Author: stooke Date: 2019-06-05 03:33 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/d0e9ea95f04b 8210886: Remove references in xwindows.md to non-existent files. Reviewed-by: serb, dmarkov, andrew ! THIRD_PARTY_README Changeset: 1ec20e8a3d8a Author: stooke Date: 2019-06-05 04:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/1ec20e8a3d8a 8193830: Xalan Update: Xalan Java 2.7.2 Reviewed-by: lancea, clanger, andrew ! THIRD_PARTY_README Changeset: 93d3bb010d58 Author: andrew Date: 2019-06-05 16:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/93d3bb010d58 Merge jdk8u222-b05 ! THIRD_PARTY_README ! src/share/vm/compiler/compileBroker.cpp ! src/share/vm/compiler/compileBroker.hpp ! src/share/vm/oops/instanceKlass.cpp ! src/share/vm/opto/memnode.cpp ! src/share/vm/prims/whitebox.cpp ! src/share/vm/runtime/advancedThresholdPolicy.cpp ! test/compiler/whitebox/CompilerWhiteBoxTest.java ! test/testlibrary/whitebox/sun/hotspot/WhiteBox.java Changeset: b9ddeabe3f9d Author: andrew Date: 2019-06-05 17:40 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/b9ddeabe3f9d Added tag aarch64-shenandoah-jdk8u222-b05 for changeset 93d3bb010d58 ! .hgtags Changeset: e533446d078f Author: shade Date: 2019-06-12 10:12 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/e533446d078f Merge ! src/cpu/aarch64/vm/aarch64.ad ! src/cpu/aarch64/vm/c1_LIRAssembler_aarch64.cpp ! src/cpu/aarch64/vm/macroAssembler_aarch64.cpp From shade at redhat.com Wed Jun 12 17:43:10 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 17:43:10 +0000 Subject: hg: shenandoah/jdk8/nashorn: 13 new changesets Message-ID: <201906121743.x5CHhApr021257@aojmv0008.oracle.com> Changeset: e4becf2f38ce Author: clanger Date: 2019-05-17 07:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/e4becf2f38ce 8213213: Remove src/java.desktop/unix/classes/sun/awt/X11/keysym2ucs.h Reviewed-by: phh ! THIRD_PARTY_README Changeset: 990b6af1a5e7 Author: andrew Date: 2019-05-17 18:53 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/990b6af1a5e7 Added tag jdk8u222-b03 for changeset e4becf2f38ce ! .hgtags Changeset: cc629cb58d4c Author: andrew Date: 2019-05-21 02:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/cc629cb58d4c Merge jdk8u222-b03 ! .hgtags ! THIRD_PARTY_README Changeset: 3a5bdf45795b Author: andrew Date: 2019-05-21 04:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/3a5bdf45795b Added tag aarch64-shenandoah-jdk8u222-b03 for changeset cc629cb58d4c ! .hgtags Changeset: 4f0333956a5f Author: andrew Date: 2019-05-23 04:05 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/4f0333956a5f Added tag jdk8u222-b04 for changeset 990b6af1a5e7 ! .hgtags Changeset: 5c54df7d77a5 Author: andrew Date: 2019-05-25 18:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/5c54df7d77a5 Merge jdk8u222-b04 ! .hgtags Changeset: d1ad4a737c7a Author: andrew Date: 2019-05-25 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/d1ad4a737c7a Added tag aarch64-shenandoah-jdk8u222-b04 for changeset 5c54df7d77a5 ! .hgtags Changeset: 5c99abe7853a Author: rkennke Date: 2019-05-28 18:51 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/5c99abe7853a 8218020: Fix version number in mesa.md 3rd party legal file Reviewed-by: clanger ! THIRD_PARTY_README Changeset: a526f3dd4be8 Author: serb Date: 2019-03-31 16:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/a526f3dd4be8 8220495: Update GIFlib library to the 5.1.8 Reviewed-by: prr ! THIRD_PARTY_README Changeset: ce9c391250fb Author: stooke Date: 2019-06-05 03:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/ce9c391250fb 8210886: Remove references in xwindows.md to non-existent files. Reviewed-by: serb, dmarkov, andrew ! THIRD_PARTY_README Changeset: 22144dab9c5d Author: stooke Date: 2019-06-05 04:15 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/22144dab9c5d 8193830: Xalan Update: Xalan Java 2.7.2 Reviewed-by: lancea, clanger, andrew ! THIRD_PARTY_README Changeset: 0f9c6f0f9c9f Author: andrew Date: 2019-06-05 16:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/0f9c6f0f9c9f Merge jdk8u222-b05 ! THIRD_PARTY_README Changeset: cce55746426c Author: andrew Date: 2019-06-05 17:40 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/cce55746426c Added tag aarch64-shenandoah-jdk8u222-b05 for changeset 0f9c6f0f9c9f ! .hgtags From shade at redhat.com Wed Jun 12 17:43:13 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 17:43:13 +0000 Subject: hg: shenandoah/jdk8/jdk: 39 new changesets Message-ID: <201906121743.x5CHhFii021279@aojmv0008.oracle.com> Changeset: cac1aa619936 Author: rhalade Date: 2019-05-14 10:31 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/cac1aa619936 8189131: Open-source the Oracle JDK Root Certificates 8191844: Remove SECOM root (secomevrootca1) 8189949: Remove Baltimore Cybertrust Code Signing CA 8191031: Remove several Symantec Root CAs 8196141: Add GoDaddy root certificates 8204923: Restore Symantec root verisignclass2g2ca 8195774: Add Entrust root certificates 8199779: Add T-Systems, GlobalSign and Starfield services root certificates 8209506: Add Google Trust Services GlobalSign root certificates 8210432: Add additional TeliaSonera root certificate 8195793: Remove GTE CyberTrust Global Root 8216577: Add GlobalSign's R6 Root certificate 8222137: Remove T-Systems root CA certificate 8223555: Cleanups in cacerts tests Summary: Integration for JEP 319: Root Certificates Reviewed-by: clanger, mdoerr ! src/share/lib/security/cacerts ! test/TEST.groups + test/security/infra/java/security/cert/CertPathValidator/certification/ActalisCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/BuypassCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/ComodoCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/DTrustCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/EntrustCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/GlobalSignR6CA.java + test/security/infra/java/security/cert/CertPathValidator/certification/GoDaddyCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/LetsEncryptCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/QuoVadisCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/TeliaSoneraCA.java + test/security/infra/java/security/cert/CertPathValidator/certification/ValidatePathWithParams.java + test/sun/security/lib/cacerts/VerifyCACerts.java Changeset: ec3a920b212a Author: andrew Date: 2019-05-14 15:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/ec3a920b212a Merge Changeset: b7cb35648c99 Author: naoto Date: 2018-12-04 11:10 -0800 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/b7cb35648c99 8214770: java/time/test/java/time/format/TestNonIsoFormatter.java failed in non-english locales. Reviewed-by: lancea, bpb ! test/java/time/test/java/time/format/TestNonIsoFormatter.java Changeset: b337cf67e1bb Author: tvaleev Date: 2016-04-29 16:58 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/b337cf67e1bb 8154387: Parallel unordered Stream.limit() tries to collect 128 elements even if limit is less Reviewed-by: psandoz ! src/share/classes/java/util/stream/StreamSpliterators.java Changeset: 388ecb085334 Author: prr Date: 2018-11-01 13:56 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/388ecb085334 8213213: Remove src/java.desktop/unix/classes/sun/awt/X11/keysym2ucs.h Reviewed-by: serb ! THIRD_PARTY_README ! src/solaris/classes/sun/awt/X11/XKeysym.java - src/solaris/classes/sun/awt/X11/genhash.awk - src/solaris/classes/sun/awt/X11/keysym2ucs.h Changeset: 23ecef9a4689 Author: rhalade Date: 2019-05-15 13:22 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/23ecef9a4689 8222136: Remove two Comodo root CA certificates that are expiring Reviewed-by: mullan ! src/share/lib/security/cacerts ! test/sun/security/lib/cacerts/VerifyCACerts.java Changeset: 5a3432282943 Author: andrew Date: 2019-05-17 17:31 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/5a3432282943 Merge - src/solaris/classes/sun/awt/X11/genhash.awk - src/solaris/classes/sun/awt/X11/keysym2ucs.h Changeset: 7ecf0b6b46ae Author: chegar Date: 2014-01-14 16:23 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/7ecf0b6b46ae 7100957: SOCKS proxying does not work with IPv6 connections Reviewed-by: chegar, alanb Contributed-by: Dimitar Mavrodiev ! src/share/classes/java/net/SocksSocketImpl.java + test/java/net/Socks/SocksIPv6Test.java ! test/java/net/Socks/SocksServer.java Changeset: 933f6b06c1cb Author: andrew Date: 2019-05-17 18:53 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/933f6b06c1cb Added tag jdk8u222-b03 for changeset 7ecf0b6b46ae ! .hgtags Changeset: 1cfc39ab9bee Author: andrew Date: 2019-05-21 02:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/1cfc39ab9bee Merge jdk8u222-b03 ! .hgtags ! THIRD_PARTY_README ! src/share/classes/java/net/SocksSocketImpl.java ! src/share/classes/java/util/stream/StreamSpliterators.java - src/solaris/classes/sun/awt/X11/genhash.awk - src/solaris/classes/sun/awt/X11/keysym2ucs.h ! test/TEST.groups ! test/java/time/test/java/time/format/TestNonIsoFormatter.java Changeset: aaa4caef1598 Author: andrew Date: 2019-05-21 04:25 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/aaa4caef1598 Added tag aarch64-shenandoah-jdk8u222-b03 for changeset 1cfc39ab9bee ! .hgtags Changeset: b8f729f5959e Author: sgehwolf Date: 2019-05-17 17:52 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/b8f729f5959e 8203190: SessionId.hashCode generates too many collisions Reviewed-by: andrew, shade, dfuchs ! src/share/classes/sun/security/ssl/SessionId.java + test/sun/security/ssl/SessionIdCollisionTest.java Changeset: 66ffc05799d9 Author: rhalade Date: 2019-05-16 12:36 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/66ffc05799d9 8223499: Remove two DocuSign root certificates that are expiring Reviewed-by: mullan ! src/share/lib/security/cacerts ! test/sun/security/lib/cacerts/VerifyCACerts.java Changeset: 9fdbdce56577 Author: psandoz Date: 2017-11-08 10:27 -0800 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/9fdbdce56577 8190974: Parallel stream execution within a custom ForkJoinPool should obey the parallelism Reviewed-by: martin, tvaleev ! src/share/classes/java/util/stream/AbstractTask.java ! src/share/classes/java/util/stream/ForEachOps.java ! src/share/classes/java/util/stream/StreamSpliterators.java + test/java/util/stream/test/org/openjdk/tests/java/util/stream/CustomFJPoolTest.java Changeset: 8119ddcb3eec Author: andrew Date: 2019-05-23 04:01 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/8119ddcb3eec Merge Changeset: 2d4edd21bb38 Author: andrew Date: 2019-05-23 04:05 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/2d4edd21bb38 Added tag jdk8u222-b04 for changeset 8119ddcb3eec ! .hgtags Changeset: 197f1ed35a1a Author: andrew Date: 2019-05-25 18:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/197f1ed35a1a Merge jdk8u222-b04 ! .hgtags ! src/share/classes/java/util/stream/StreamSpliterators.java Changeset: 0b17f2372137 Author: andrew Date: 2019-05-25 18:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/0b17f2372137 Added tag aarch64-shenandoah-jdk8u222-b04 for changeset 197f1ed35a1a ! .hgtags Changeset: 95b415460d61 Author: darcy Date: 2016-03-03 15:47 -0800 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/95b415460d61 8151226: Mark UdpTest.java as intermittently failing Reviewed-by: lancea ! test/java/net/ipv6tests/UdpTest.java Changeset: 4544a0b61e7e Author: amlu Date: 2016-11-03 15:40 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/4544a0b61e7e 8143097: java/net/ipv6tests/UdpTest.java fails intermittently with "checkTime failed: got 1998 expected 4000" Reviewed-by: chegar ! test/java/net/ipv6tests/Tests.java ! test/java/net/ipv6tests/UdpTest.java Changeset: 083e7edaa68b Author: rhalade Date: 2019-05-24 09:47 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/083e7edaa68b 8202651: Test ComodoCA.java fails Reviewed-by: mullan ! test/security/infra/java/security/cert/CertPathValidator/certification/ComodoCA.java Changeset: b4e75e95f1c2 Author: clanger Date: 2019-05-25 10:54 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/b4e75e95f1c2 8224727: Problem list test security/infra/java/security/cert/CertPathValidator/certification/ActalisCA.java Reviewed-by: rhalade ! test/ProblemList.txt Changeset: 1a6dd9f6d6c1 Author: rkennke Date: 2019-05-28 18:51 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/1a6dd9f6d6c1 8218020: Fix version number in mesa.md 3rd party legal file Reviewed-by: clanger ! THIRD_PARTY_README + test/java/awt/BasicStroke/DashScaleMinWidth.java + test/java/awt/BasicStroke/DashZeroWidth.java Changeset: 72d4ef1687ea Author: rkennke Date: 2019-05-28 20:01 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/72d4ef1687ea 8218020: Back out accidental changes that belong elsewhere Reviewed-by: andrew - test/java/awt/BasicStroke/DashScaleMinWidth.java - test/java/awt/BasicStroke/DashZeroWidth.java Changeset: a7c4b3a4bdfb Author: rkennke Date: 2019-05-28 20:01 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/a7c4b3a4bdfb 8019816: [TEST_BUG][macosx] closed/java/awt/BasicStroke/DashZeroWidth.java not on EDT Reviewed-by: andrew + test/java/awt/BasicStroke/DashScaleMinWidth.java + test/java/awt/BasicStroke/DashZeroWidth.java Changeset: 568573273ed2 Author: xuelei Date: 2019-05-29 20:27 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/568573273ed2 8210985: Update the default SSL session cache size to 20480 Summary: Change SSLSessionContext.getSessionCacheSize to return 20480 by default instead of 0. Reviewed-by: jnimeh, mullan ! src/share/classes/javax/net/ssl/SSLSessionContext.java ! src/share/classes/sun/security/ssl/SSLSessionContextImpl.java + test/sun/security/ssl/SSLContextImpl/DefautlCacheSize.java Changeset: 57d6c23af6c9 Author: michaelm Date: 2018-04-11 10:19 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/57d6c23af6c9 8196775: java/net/Socket/asyncClose/Race.java failed intermittently on Windows with ConnectException: Connection refused Reviewed-by: dfuchs ! test/java/net/Socket/asyncClose/Race.java Changeset: ec41773b9ff2 Author: zgu Date: 2019-06-03 15:58 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/ec41773b9ff2 8055705: Rename UnixPrintServiceLookup and Win32PrintServiceLookup as a platform neutral class name Reviewed-by: andrew ! make/CopyIntoClasses.gmk + src/share/classes/sun/print/services/javax.print.PrintServiceLookup + src/share/classes/sun/print/services/javax.print.StreamPrintServiceFactory ! src/solaris/classes/sun/print/CUPSPrinter.java ! src/solaris/classes/sun/print/IPPPrintService.java + src/solaris/classes/sun/print/PrintServiceLookupProvider.java ! src/solaris/classes/sun/print/UnixPrintJob.java ! src/solaris/classes/sun/print/UnixPrintService.java - src/solaris/classes/sun/print/UnixPrintServiceLookup.java - src/solaris/classes/sun/print/services/javax.print.PrintServiceLookup - src/solaris/classes/sun/print/services/javax.print.StreamPrintServiceFactory ! src/windows/classes/sun/awt/windows/WPrinterJob.java + src/windows/classes/sun/print/PrintServiceLookupProvider.java - src/windows/classes/sun/print/Win32PrintServiceLookup.java - src/windows/classes/sun/print/services/javax.print.PrintServiceLookup - src/windows/classes/sun/print/services/javax.print.StreamPrintServiceFactory ! src/windows/native/sun/windows/WPrinterJob.cpp Changeset: 7811cb0f443e Author: stooke Date: 2019-06-03 16:39 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/7811cb0f443e 8214765: All TrayIcon MessageType icons does not show up with gtk3 option set Reviewed-by: serb, psadhukhan, clanger ! src/solaris/classes/sun/awt/X11/InfoWindow.java Changeset: 9a6d73d0b95c Author: phh Date: 2019-06-03 15:56 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/9a6d73d0b95c 8225065: Revert 8221166 (8u backport of 8048782) Summary: Revert 8221166. Reviewed-by: clanger ! src/share/classes/sun/java2d/pisces/PiscesCache.java ! src/share/classes/sun/java2d/pisces/PiscesTileGenerator.java - test/sun/java2d/pisces/OpenJDKFillBug.java Changeset: 5e4b7ed6e904 Author: serb Date: 2019-03-31 16:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/5e4b7ed6e904 8220495: Update GIFlib library to the 5.1.8 Reviewed-by: prr ! THIRD_PARTY_README ! src/share/native/sun/awt/giflib/dgif_lib.c ! src/share/native/sun/awt/giflib/gif_hash.h ! src/share/native/sun/awt/giflib/gif_lib.h ! src/share/native/sun/awt/giflib/gif_lib_private.h ! src/share/native/sun/awt/giflib/gifalloc.c ! src/share/native/sun/awt/giflib/openbsd-reallocarray.c Changeset: e177f8049f2f Author: tnakamura Date: 2018-12-13 00:46 +0900 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/e177f8049f2f 8213183: InputMethod cannot be used after its restarting Summary: Retains masks at XSelectInput and deletes all IM data at DestroyXIMCallback Reviewed-by: naoto ! src/solaris/classes/sun/awt/X11/XMSelection.java ! src/solaris/native/sun/awt/awt_InputMethod.c + test/java/awt/im/InputContext/ReconnectTest.java Changeset: 9772eb3c8097 Author: shade Date: 2019-06-05 03:05 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/9772eb3c8097 8075939: Stream.flatMap() causes breaking of short-circuiting of terminal operations Reviewed-by: forax, smarks, andrew ! src/share/classes/java/util/stream/DoublePipeline.java ! src/share/classes/java/util/stream/IntPipeline.java ! src/share/classes/java/util/stream/LongPipeline.java ! src/share/classes/java/util/stream/ReferencePipeline.java ! src/share/classes/java/util/stream/SortedOps.java ! test/java/util/stream/test/org/openjdk/tests/java/util/stream/FlatMapOpTest.java Changeset: ef03b9bc2874 Author: stooke Date: 2019-06-05 03:26 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/ef03b9bc2874 8210886: Remove references in xwindows.md to non-existent files. Reviewed-by: serb, dmarkov, andrew ! THIRD_PARTY_README Changeset: e8778f8974dc Author: prr Date: 2018-06-15 13:05 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/e8778f8974dc 8204929: Fonts with embedded bitmaps are not always rotated Reviewed-by: bae ! src/share/native/sun/font/freetypeScaler.c + test/java/awt/FontClass/GlyphRotationTest.java + test/jdk/java/awt/FontClass/GlyphRotationTest.java Changeset: c09f6f9b8cab Author: stooke Date: 2019-06-05 04:14 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/c09f6f9b8cab 8193830: Xalan Update: Xalan Java 2.7.2 Reviewed-by: lancea, clanger, andrew ! THIRD_PARTY_README + test/javax/xml/jaxp/transform/sort/SortTest.java + test/javax/xml/jaxp/transform/sort/sort-alphabet-english.out + test/javax/xml/jaxp/transform/sort/sort-alphabet-english.xml + test/javax/xml/jaxp/transform/sort/sort-alphabet-english.xsl + test/javax/xml/jaxp/transform/sort/sort-alphabet-polish.out + test/javax/xml/jaxp/transform/sort/sort-alphabet-polish.xml + test/javax/xml/jaxp/transform/sort/sort-alphabet-polish.xsl + test/javax/xml/jaxp/transform/sort/sort-alphabet-russian.out + test/javax/xml/jaxp/transform/sort/sort-alphabet-russian.xml + test/javax/xml/jaxp/transform/sort/sort-alphabet-russian.xsl Changeset: 887c8314411d Author: andrew Date: 2019-06-05 04:39 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/887c8314411d 8044289: In ImageIO.write() and ImageIO.read() null stream is not handled properly. Reviewed-by: prr, serb, psadhukhan ! src/share/classes/javax/imageio/ImageIO.java + test/javax/imageio/stream/NullStreamCheckTest.java Changeset: 025eb792d770 Author: andrew Date: 2019-06-05 16:59 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/025eb792d770 Merge jdk8u222-b05 ! THIRD_PARTY_README ! make/CopyIntoClasses.gmk ! src/share/classes/java/util/stream/DoublePipeline.java ! src/share/classes/java/util/stream/IntPipeline.java ! src/share/classes/java/util/stream/LongPipeline.java ! src/share/classes/java/util/stream/ReferencePipeline.java ! src/share/classes/java/util/stream/SortedOps.java ! src/share/classes/javax/imageio/ImageIO.java ! src/share/native/sun/font/freetypeScaler.c ! src/solaris/classes/sun/print/CUPSPrinter.java ! src/solaris/classes/sun/print/IPPPrintService.java + src/solaris/classes/sun/print/PrintServiceLookupProvider.java - src/solaris/classes/sun/print/UnixPrintServiceLookup.java - src/solaris/classes/sun/print/services/javax.print.PrintServiceLookup - src/solaris/classes/sun/print/services/javax.print.StreamPrintServiceFactory ! src/windows/classes/sun/awt/windows/WPrinterJob.java - src/windows/classes/sun/print/Win32PrintServiceLookup.java - src/windows/classes/sun/print/services/javax.print.PrintServiceLookup - src/windows/classes/sun/print/services/javax.print.StreamPrintServiceFactory ! test/ProblemList.txt - test/sun/java2d/pisces/OpenJDKFillBug.java Changeset: 346a19c46cf9 Author: andrew Date: 2019-06-05 17:40 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/346a19c46cf9 Added tag aarch64-shenandoah-jdk8u222-b05 for changeset 025eb792d770 ! .hgtags From rkennke at redhat.com Wed Jun 12 17:44:40 2019 From: rkennke at redhat.com (Roman Kennke) Date: Wed, 12 Jun 2019 19:44:40 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> Message-ID: I suspect you're gonna need the C1 and C2 IN_NATIVE barriers, esp. for the CLDG roots. Should be relatively easy to wire up the LRB barriers there (probably ask shade or roland). It will be more complex to do the other parts and return NULL on unreachable objects, but this is not needed yet. When we do, we should probably just make it call out to runtime. Roman > This is the last sub task of JDK-8225534 [1], that moves evacuation of > JNIHandles and Class Loader Data into concurrent phase. This is the > first step that moves some root processing into concurrent phase, and > this step can be backported to the releases that don't support nmethod > barrier. > > 1. Concurrent CLDG root evacuation can not run through safepoints, where > there may also perform CLDG walk, e.g. heap iteration. So it requires > suspendible workers always on, therefore, ShenandoahSuspendibleWorkers > flag is removed, along with related test cases. There are many trivial > changes just because of this flag. > > 2. A new concurrent phase "concurrent roots" is added to perform > concurrent JNI and CLDG root evacuation. In Next step, it will also > perform concurrent class unloading and nmethod cleanup. > > 3) This patch does not address Traversal GC. > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ > > Test: > ? hotspot_gc_shenandoah (fastdebug and release) > > > [1] https://bugs.openjdk.java.net/browse/JDK-8225582 > > Thanks, > > -Zhengyu From zgu at redhat.com Wed Jun 12 17:58:04 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 12 Jun 2019 13:58:04 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> Message-ID: Hi Roman, This patch does not deal with class unloading, it is still done at final mark pause. What it does, is to move evacuate/update refs in CLDs from SH::evacuate_and_update_roots() to concurrent phase, and at this point, they are strongly reachable. I will put this through more tests. Thanks, -Zhengyu On 6/12/19 1:44 PM, Roman Kennke wrote: > I suspect you're gonna need the C1 and C2 IN_NATIVE barriers, esp. for > the CLDG roots. Should be relatively easy to wire up the LRB barriers > there (probably ask shade or roland). It will be more complex to do the > other parts and return NULL on unreachable objects, but this is not > needed yet. When we do, we should probably just make it call out to runtime. > > Roman > >> This is the last sub task of JDK-8225534 [1], that moves evacuation of >> JNIHandles and Class Loader Data into concurrent phase. This is the >> first step that moves some root processing into concurrent phase, and >> this step can be backported to the releases that don't support nmethod >> barrier. >> >> 1. Concurrent CLDG root evacuation can not run through safepoints, where >> there may also perform CLDG walk, e.g. heap iteration. So it requires >> suspendible workers always on, therefore, ShenandoahSuspendibleWorkers >> flag is removed, along with related test cases. There are many trivial >> changes just because of this flag. >> >> 2. A new concurrent phase "concurrent roots" is added to perform >> concurrent JNI and CLDG root evacuation. In Next step, it will also >> perform concurrent class unloading and nmethod cleanup. >> >> 3) This patch does not address Traversal GC. >> >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >> >> Test: >> ? hotspot_gc_shenandoah (fastdebug and release) >> >> >> [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >> >> Thanks, >> >> -Zhengyu > From shade at redhat.com Wed Jun 12 18:20:10 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 12 Jun 2019 18:20:10 +0000 Subject: hg: shenandoah/jdk8/hotspot: Enable weak JNI handling with Shenandoah after JDK-8176100 Message-ID: <201906121820.x5CIKAIo011677@aojmv0008.oracle.com> Changeset: 4a075d6cc009 Author: shade Date: 2019-06-12 20:03 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/4a075d6cc009 Enable weak JNI handling with Shenandoah after JDK-8176100 ! src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp ! src/cpu/aarch64/vm/templateInterpreter_aarch64.cpp ! src/cpu/x86/vm/macroAssembler_x86.cpp ! src/share/vm/gc_implementation/shenandoah/shenandoahRootProcessor.cpp ! src/share/vm/runtime/jniHandles.cpp From rkennke at redhat.com Wed Jun 12 19:11:11 2019 From: rkennke at redhat.com (Roman Kennke) Date: Wed, 12 Jun 2019 21:11:11 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> Message-ID: <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to getClass() intrinsic, which loads and unwraps the Class object from an obj via the Klass*. If the Klass* -> mirror reference is part of the CLDG roots (I don't know if that is the case), then you're gonna need the C1 and C2 barriers for concurrent evacuation of CLDG roots, otherwise you might leak from-space oops (the Class objects) in the getClass() intrinsics. Roman > Hi Roman, > > This patch does not deal with class unloading, it is still done at final > mark pause. What it does, is to move evacuate/update refs in CLDs from > SH::evacuate_and_update_roots() to concurrent phase, and at this point, > they are strongly reachable. > > I will put this through more tests. > > Thanks, > > -Zhengyu > > > > On 6/12/19 1:44 PM, Roman Kennke wrote: >> I suspect you're gonna need the C1 and C2 IN_NATIVE barriers, esp. for >> the CLDG roots. Should be relatively easy to wire up the LRB barriers >> there (probably ask shade or roland). It will be more complex to do the >> other parts and return NULL on unreachable objects, but this is not >> needed yet. When we do, we should probably just make it call out to >> runtime. >> >> Roman >> >>> This is the last sub task of JDK-8225534 [1], that moves evacuation of >>> JNIHandles and Class Loader Data into concurrent phase. This is the >>> first step that moves some root processing into concurrent phase, and >>> this step can be backported to the releases that don't support nmethod >>> barrier. >>> >>> 1. Concurrent CLDG root evacuation can not run through safepoints, where >>> there may also perform CLDG walk, e.g. heap iteration. So it requires >>> suspendible workers always on, therefore, ShenandoahSuspendibleWorkers >>> flag is removed, along with related test cases. There are many trivial >>> changes just because of this flag. >>> >>> 2. A new concurrent phase "concurrent roots" is added to perform >>> concurrent JNI and CLDG root evacuation. In Next step, it will also >>> perform concurrent class unloading and nmethod cleanup. >>> >>> 3) This patch does not address Traversal GC. >>> >>> >>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >>> >>> Test: >>> ?? hotspot_gc_shenandoah (fastdebug and release) >>> >>> >>> [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >>> >>> Thanks, >>> >>> -Zhengyu >> From shade at redhat.com Thu Jun 13 10:40:18 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 13 Jun 2019 12:40:18 +0200 Subject: RFC: Pick up 11.0.4+7 to sh/jdk11 Message-ID: <0aca0d5c-6dd9-e379-5f0f-f3b7611b4d68@redhat.com> Upstream published jdk-11.0.4+7, let's pick it up. It is just a handful of changes, so I would tag it shenandoah-jdk-11.0.4+7 immediately. Changesets: http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b7/changesets.txt Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From rkennke at redhat.com Thu Jun 13 11:02:22 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 13 Jun 2019 13:02:22 +0200 Subject: RFC: Pick up 11.0.4+7 to sh/jdk11 In-Reply-To: <0aca0d5c-6dd9-e379-5f0f-f3b7611b4d68@redhat.com> References: <0aca0d5c-6dd9-e379-5f0f-f3b7611b4d68@redhat.com> Message-ID: <9DF44A9A-3F0A-4FB2-8EF4-D7D5ED8674AC@redhat.com> Good, do it! Thanks, Roman Am 13. Juni 2019 12:40:18 MESZ schrieb Aleksey Shipilev : >Upstream published jdk-11.0.4+7, let's pick it up. It is just a handful >of changes, so I would tag >it shenandoah-jdk-11.0.4+7 immediately. > >Changesets: >http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b7/changesets.txt > >Testing: hotspot_gc_shenandoah > >-- >Thanks, >-Aleksey -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From shade at redhat.com Thu Jun 13 11:25:21 2019 From: shade at redhat.com (shade at redhat.com) Date: Thu, 13 Jun 2019 11:25:21 +0000 Subject: hg: shenandoah/jdk11: 4 new changesets Message-ID: <201906131125.x5DBPMrs003778@aojmv0008.oracle.com> Changeset: 640251cdca05 Author: apetcher Date: 2018-12-11 09:42 -0500 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/640251cdca05 8208698: Improved ECC Implementation Summary: New implementation of ECDH and ECDSA forsome prime-order curves Reviewed-by: ascarpino ! src/jdk.crypto.ec/share/classes/sun/security/ec/ECDHKeyAgreement.java + src/jdk.crypto.ec/share/classes/sun/security/ec/ECDSAOperations.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/ECDSASignature.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/ECKeyPairGenerator.java + src/jdk.crypto.ec/share/classes/sun/security/ec/ECOperations.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/ECPrivateKeyImpl.java + src/jdk.crypto.ec/share/classes/sun/security/ec/point/AffinePoint.java + src/jdk.crypto.ec/share/classes/sun/security/ec/point/ImmutablePoint.java + src/jdk.crypto.ec/share/classes/sun/security/ec/point/MutablePoint.java + src/jdk.crypto.ec/share/classes/sun/security/ec/point/Point.java + src/jdk.crypto.ec/share/classes/sun/security/ec/point/ProjectivePoint.java Changeset: 502eaf60455b Author: goetz Date: 2019-06-12 12:11 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/502eaf60455b Added tag jdk-11.0.4+7 for changeset 640251cdca05 ! .hgtags Changeset: 771346c3f080 Author: shade Date: 2019-06-13 12:11 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/771346c3f080 Merge ! .hgtags Changeset: dd90ffec98fb Author: shade Date: 2019-06-13 12:11 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/dd90ffec98fb Added tag shenandoah-jdk-11.0.4+7 for changeset 771346c3f080 ! .hgtags From rwestrel at redhat.com Thu Jun 13 15:43:09 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Thu, 13 Jun 2019 17:43:09 +0200 Subject: ShenandoahBarrierSetC2::escape_is_barrier_node In-Reply-To: <732cb99a-6ce3-4eb0-79ca-dcea2a9ee7df@redhat.com> References: <732cb99a-6ce3-4eb0-79ca-dcea2a9ee7df@redhat.com> Message-ID: <87sgsdcwz6.fsf@redhat.com> Hi Aleksey, > A question for you. We have a staged code in sh/jdk, which has this change in > ShenandoahBarrierSetC2::escape_is_barrier_node: > http://hg.openjdk.java.net/shenandoah/jdk/rev/3f2b4cc07dbd#l1.47 I think it's fine to keep that change because we remove barriers on newly allocated objects and that code is for barriers on newly allocated non escaping objects. The reason we hit AFAICT is: changeset: 56234:3f2b4cc07dbd tag: tip user: shade date: Thu Jun 06 22:24:23 2019 +0200 summary: C2 LRB self-fixup because it adds a new edge to the load barrier and so a path to the barrier from a newly allocated object even when we don't apply the barrier to the object itself but to a field loaded from that object. Actually, I would say it's a left over from when we had an option to not optimize out barriers on newly allocated objects and has not been needed for a while. Roland. From rkennke at redhat.com Thu Jun 13 15:44:39 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 13 Jun 2019 17:44:39 +0200 Subject: ShenandoahBarrierSetC2::escape_is_barrier_node In-Reply-To: <87sgsdcwz6.fsf@redhat.com> References: <732cb99a-6ce3-4eb0-79ca-dcea2a9ee7df@redhat.com> <87sgsdcwz6.fsf@redhat.com> Message-ID: So removing it altogether would be fine and harmless? Roman Am 13. Juni 2019 17:43:09 MESZ schrieb Roland Westrelin : > >Hi Aleksey, > >> A question for you. We have a staged code in sh/jdk, which has this >change in >> ShenandoahBarrierSetC2::escape_is_barrier_node: >> http://hg.openjdk.java.net/shenandoah/jdk/rev/3f2b4cc07dbd#l1.47 > >I think it's fine to keep that change because we remove barriers on >newly allocated objects and that code is for barriers on newly >allocated >non escaping objects. The reason we hit AFAICT is: > >changeset: 56234:3f2b4cc07dbd >tag: tip >user: shade >date: Thu Jun 06 22:24:23 2019 +0200 >summary: C2 LRB self-fixup > >because it adds a new edge to the load barrier and so a path to the >barrier from a newly allocated object even when we don't apply the >barrier to the object itself but to a field loaded from that object. > >Actually, I would say it's a left over from when we had an option to >not >optimize out barriers on newly allocated objects and has not been >needed >for a while. > >Roland. -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From shade at redhat.com Thu Jun 13 16:45:04 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 13 Jun 2019 18:45:04 +0200 Subject: IMPT: Shenandoah related pushes to jdk/jdk this week In-Reply-To: <67fcee24-8c30-a787-75f4-74bcb0044b32@redhat.com> References: <67fcee24-8c30-a787-75f4-74bcb0044b32@redhat.com> Message-ID: On 6/12/19 10:39 AM, Aleksey Shipilev wrote: > jdk/jdk is about to fork for jdk13 release. That tree is stable right now, and we want to keep it > that way until the fork happens. This means we better not push anything Shenandoah related until > further notice. I'll update when jdk/jdk is clear to push more stuff in. There is a jdk-14+0 tag in jdk/jdk right now, which must mean: a) jdk13 would be forked past that changeset; b) jdk/jdk is open for pushes; -Aleksey From shade at redhat.com Thu Jun 13 18:05:36 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 13 Jun 2019 20:05:36 +0200 Subject: ShenandoahBarrierSetC2::escape_is_barrier_node In-Reply-To: References: <732cb99a-6ce3-4eb0-79ca-dcea2a9ee7df@redhat.com> <87sgsdcwz6.fsf@redhat.com> Message-ID: <6f400225-7867-1944-4828-eeb040ac582d@redhat.com> On 6/13/19 5:44 PM, Roman Kennke wrote: > So removing it altogether would be fine and harmless? Or, asking more precisely, this would be the good RFE? https://bugs.openjdk.java.net/browse/JDK-8225743 -Aleksey From rwestrel at redhat.com Fri Jun 14 07:42:06 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 14 Jun 2019 09:42:06 +0200 Subject: ShenandoahBarrierSetC2::escape_is_barrier_node In-Reply-To: <6f400225-7867-1944-4828-eeb040ac582d@redhat.com> References: <732cb99a-6ce3-4eb0-79ca-dcea2a9ee7df@redhat.com> <87sgsdcwz6.fsf@redhat.com> <6f400225-7867-1944-4828-eeb040ac582d@redhat.com> Message-ID: <87k1dod35d.fsf@redhat.com> > Or, asking more precisely, this would be the good RFE? > https://bugs.openjdk.java.net/browse/JDK-8225743 I think so. Roland. From shade at redhat.com Fri Jun 14 08:33:01 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Fri, 14 Jun 2019 10:33:01 +0200 Subject: RFR (S) 8225743: Remove ShenandoahBarrierSetC2::escape_is_barrier_node and related GC interface Message-ID: <46f5d65a-3f45-5065-e552-00632291d44e@redhat.com> RFE: https://bugs.openjdk.java.net/browse/JDK-8225743 This is the leftover from the times Shenandoah had an option to not optimize out barriers on newly allocated objects. This is have not been needed for a while. Since Shenandoah is the only user of this method, it makes sense to remove it completely, Fix: http://cr.openjdk.java.net/~shade/8225743/webrev.01/ Testing: hotspot_gc_shenandoah, jdk-submit -- Thanks, -Aleksey From rwestrel at redhat.com Fri Jun 14 08:38:54 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 14 Jun 2019 10:38:54 +0200 Subject: RFR (S) 8225743: Remove ShenandoahBarrierSetC2::escape_is_barrier_node and related GC interface In-Reply-To: <46f5d65a-3f45-5065-e552-00632291d44e@redhat.com> References: <46f5d65a-3f45-5065-e552-00632291d44e@redhat.com> Message-ID: <87h88sd0ip.fsf@redhat.com> > http://cr.openjdk.java.net/~shade/8225743/webrev.01/ Looks good to me. Roland. From shade at redhat.com Fri Jun 14 09:16:18 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Fri, 14 Jun 2019 11:16:18 +0200 Subject: C2: adding things to EA Message-ID: <138af3ca-2e77-372d-fb14-56be441f93e8@redhat.com> Hi, I am looking here in our C2 LRB fixup thingie: http://hg.openjdk.java.net/shenandoah/jdk/file/3f2b4cc07dbd/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp#l1121 ...and have questions: *) In SBSC2::escape_add_to_con_graph and SBSC2::escape_add_final_edges, shouldn't we add LoadAddr input as well, like ShenandoahCompareAndExchange does? diff -r 3f2b4cc07dbd src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp --- a/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp Thu Jun 06 22:24:23 2019 +0200 +++ b/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp Fri Jun 14 11:09:51 2019 +0200 @@ -1159,4 +1159,5 @@ case Op_ShenandoahLoadReferenceBarrier: conn_graph->add_local_var_and_edge(n, PointsToNode::NoEscape, n->in(ShenandoahLoadReferenceBarrierNode::ValueIn), delayed_worklist); + conn_graph->add_local_var_and_edge(n, PointsToNode::NoEscape, n->in(ShenandoahLoadReferenceBarrierNode::LoadAddr), delayed_worklist); return true; default: @@ -1185,4 +1186,5 @@ case Op_ShenandoahLoadReferenceBarrier: conn_graph->add_local_var_and_edge(n, PointsToNode::NoEscape, n->in(ShenandoahLoadReferenceBarrierNode::ValueIn), NULL); + conn_graph->add_local_var_and_edge(n, PointsToNode::NoEscape, n->in(ShenandoahLoadReferenceBarrierNode::LoadAddr), NULL); return true; default: *) Why do we only add NoEscape "adr" to CompareAndExchange, and not to CompareAndSwap? Ditto, why do we only do the unsafe_access for CompareAndSwap, and not to CompareAndExchange? *) ZGC also handles Op_Proj cases, do we care about those as well? -- Thanks, -Aleksey From erik.osterlund at oracle.com Fri Jun 14 09:32:14 2019 From: erik.osterlund at oracle.com (=?UTF-8?Q?Erik_=c3=96sterlund?=) Date: Fri, 14 Jun 2019 11:32:14 +0200 Subject: RFR (S) 8225743: Remove ShenandoahBarrierSetC2::escape_is_barrier_node and related GC interface In-Reply-To: <46f5d65a-3f45-5065-e552-00632291d44e@redhat.com> References: <46f5d65a-3f45-5065-e552-00632291d44e@redhat.com> Message-ID: <78c4567d-cac5-e861-b2c2-78db0cc2953e@oracle.com> Hi Aleksey, Looks good. Thanks, /Erik On 2019-06-14 10:33, Aleksey Shipilev wrote: > RFE: > https://bugs.openjdk.java.net/browse/JDK-8225743 > > This is the leftover from the times Shenandoah had an option to not optimize out barriers on newly > allocated objects. This is have not been needed for a while. Since Shenandoah is the only user of > this method, it makes sense to remove it completely, > > Fix: > http://cr.openjdk.java.net/~shade/8225743/webrev.01/ > > Testing: hotspot_gc_shenandoah, jdk-submit > From shade at redhat.com Fri Jun 14 10:16:30 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Fri, 14 Jun 2019 12:16:30 +0200 Subject: RFR [11]: Bulk backports to sh/jdk11 Message-ID: <4fab707f-631c-fc6a-f26c-634202f0a2b3@redhat.com> That repository is under stabilization for release, so we would like to push only the important fixes that improve reliability, UX and testing: [backport] 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC [backport] 8225046: Shenandoah metrics logs refactoring [backport] 8225017: [TESTBUG] gc/shenandoah/oom/TestThreadFailure.java takes too long Full webrev: http://cr.openjdk.java.net/~shade/shenandoah/backports/jdk11-20190614/webrev.01/ Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From zgu at redhat.com Fri Jun 14 13:27:37 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 14 Jun 2019 09:27:37 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> Message-ID: Hi Roman, Could you please take a look (Roland's comments) or if the CR is accurate? https://bugs.openjdk.java.net/browse/JDK-8225718 Thanks, -Zhengyu On 6/12/19 3:11 PM, Roman Kennke wrote: > IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to getClass() > intrinsic, which loads and unwraps the Class object from an obj via the > Klass*. If the Klass* -> mirror reference is part of the CLDG roots (I > don't know if that is the case), then you're gonna need the C1 and C2 > barriers for concurrent evacuation of CLDG roots, otherwise you might > leak from-space oops (the Class objects) in the getClass() intrinsics. > > > Roman > >> Hi Roman, >> >> This patch does not deal with class unloading, it is still done at final >> mark pause. What it does, is to move evacuate/update refs in CLDs from >> SH::evacuate_and_update_roots() to concurrent phase, and at this point, >> they are strongly reachable. >> >> I will put this through more tests. >> >> Thanks, >> >> -Zhengyu >> >> >> >> On 6/12/19 1:44 PM, Roman Kennke wrote: >>> I suspect you're gonna need the C1 and C2 IN_NATIVE barriers, esp. for >>> the CLDG roots. Should be relatively easy to wire up the LRB barriers >>> there (probably ask shade or roland). It will be more complex to do the >>> other parts and return NULL on unreachable objects, but this is not >>> needed yet. When we do, we should probably just make it call out to >>> runtime. >>> >>> Roman >>> >>>> This is the last sub task of JDK-8225534 [1], that moves evacuation of >>>> JNIHandles and Class Loader Data into concurrent phase. This is the >>>> first step that moves some root processing into concurrent phase, and >>>> this step can be backported to the releases that don't support nmethod >>>> barrier. >>>> >>>> 1. Concurrent CLDG root evacuation can not run through safepoints, where >>>> there may also perform CLDG walk, e.g. heap iteration. So it requires >>>> suspendible workers always on, therefore, ShenandoahSuspendibleWorkers >>>> flag is removed, along with related test cases. There are many trivial >>>> changes just because of this flag. >>>> >>>> 2. A new concurrent phase "concurrent roots" is added to perform >>>> concurrent JNI and CLDG root evacuation. In Next step, it will also >>>> perform concurrent class unloading and nmethod cleanup. >>>> >>>> 3) This patch does not address Traversal GC. >>>> >>>> >>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >>>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >>>> >>>> Test: >>>> ?? hotspot_gc_shenandoah (fastdebug and release) >>>> >>>> >>>> [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >>>> >>>> Thanks, >>>> >>>> -Zhengyu >>> > From rkennke at redhat.com Fri Jun 14 14:25:59 2019 From: rkennke at redhat.com (Roman Kennke) Date: Fri, 14 Jun 2019 16:25:59 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> Message-ID: In this case we're good. Roman Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu : >Hi Roman, > >Could you please take a look (Roland's comments) or if the CR is >accurate? > >https://bugs.openjdk.java.net/browse/JDK-8225718 > >Thanks, > >-Zhengyu > >On 6/12/19 3:11 PM, Roman Kennke wrote: >> IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to >getClass() >> intrinsic, which loads and unwraps the Class object from an obj via >the >> Klass*. If the Klass* -> mirror reference is part of the CLDG roots >(I >> don't know if that is the case), then you're gonna need the C1 and C2 >> barriers for concurrent evacuation of CLDG roots, otherwise you might >> leak from-space oops (the Class objects) in the getClass() >intrinsics. >> >> >> Roman >> >>> Hi Roman, >>> >>> This patch does not deal with class unloading, it is still done at >final >>> mark pause. What it does, is to move evacuate/update refs in CLDs >from >>> SH::evacuate_and_update_roots() to concurrent phase, and at this >point, >>> they are strongly reachable. >>> >>> I will put this through more tests. >>> >>> Thanks, >>> >>> -Zhengyu >>> >>> >>> >>> On 6/12/19 1:44 PM, Roman Kennke wrote: >>>> I suspect you're gonna need the C1 and C2 IN_NATIVE barriers, esp. >for >>>> the CLDG roots. Should be relatively easy to wire up the LRB >barriers >>>> there (probably ask shade or roland). It will be more complex to do >the >>>> other parts and return NULL on unreachable objects, but this is not >>>> needed yet. When we do, we should probably just make it call out to >>>> runtime. >>>> >>>> Roman >>>> >>>>> This is the last sub task of JDK-8225534 [1], that moves >evacuation of >>>>> JNIHandles and Class Loader Data into concurrent phase. This is >the >>>>> first step that moves some root processing into concurrent phase, >and >>>>> this step can be backported to the releases that don't support >nmethod >>>>> barrier. >>>>> >>>>> 1. Concurrent CLDG root evacuation can not run through safepoints, >where >>>>> there may also perform CLDG walk, e.g. heap iteration. So it >requires >>>>> suspendible workers always on, therefore, >ShenandoahSuspendibleWorkers >>>>> flag is removed, along with related test cases. There are many >trivial >>>>> changes just because of this flag. >>>>> >>>>> 2. A new concurrent phase "concurrent roots" is added to perform >>>>> concurrent JNI and CLDG root evacuation. In Next step, it will >also >>>>> perform concurrent class unloading and nmethod cleanup. >>>>> >>>>> 3) This patch does not address Traversal GC. >>>>> >>>>> >>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >>>>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >>>>> >>>>> Test: >>>>> ?? hotspot_gc_shenandoah (fastdebug and release) >>>>> >>>>> >>>>> [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >>>>> >>>>> Thanks, >>>>> >>>>> -Zhengyu >>>> >> -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Fri Jun 14 15:50:57 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 14 Jun 2019 11:50:57 -0400 Subject: RFR(S) 8225801: Shenandoah: Adjust SA to reflect recent forwarding pointer changes Message-ID: <813cfae5-a9d7-0d3d-0eea-191d4900990e@redhat.com> Please review this patch, that adjusts SA to reflect removal of extra header for forwarding pointer. Bug: https://bugs.openjdk.java.net/browse/JDK-8225801 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225801/webrev.00/ Test: hotspot_gc_shenandoah Manual test. Thanks, -Zhengyu From shade at redhat.com Fri Jun 14 15:55:53 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Fri, 14 Jun 2019 17:55:53 +0200 Subject: RFR(S) 8225801: Shenandoah: Adjust SA to reflect recent forwarding pointer changes In-Reply-To: <813cfae5-a9d7-0d3d-0eea-191d4900990e@redhat.com> References: <813cfae5-a9d7-0d3d-0eea-191d4900990e@redhat.com> Message-ID: On 6/14/19 5:50 PM, Zhengyu Gu wrote: > Please review this patch, that adjusts SA to reflect removal of extra header for forwarding pointer. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225801 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225801/webrev.00/ Looks good. This comment is outdated: // Dealing with a raw pointer, offsets forward pointer to find real Oop. -- Thanks, -Aleksey From zgu at redhat.com Fri Jun 14 16:10:01 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 14 Jun 2019 12:10:01 -0400 Subject: RFR(S) 8225801: Shenandoah: Adjust SA to reflect recent forwarding pointer changes In-Reply-To: References: <813cfae5-a9d7-0d3d-0eea-191d4900990e@redhat.com> Message-ID: <691de2b8-95ee-15a5-69dc-189e37035a8d@redhat.com> Removed the comment and pushed. Thanks! -Zhengyu On 6/14/19 11:55 AM, Aleksey Shipilev wrote: > On 6/14/19 5:50 PM, Zhengyu Gu wrote: >> Please review this patch, that adjusts SA to reflect removal of extra header for forwarding pointer. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225801 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225801/webrev.00/ > > Looks good. > > This comment is outdated: > // Dealing with a raw pointer, offsets forward pointer to find real Oop. > From rkennke at redhat.com Fri Jun 14 16:58:22 2019 From: rkennke at redhat.com (Roman Kennke) Date: Fri, 14 Jun 2019 18:58:22 +0200 Subject: RFR(S) 8225801: Shenandoah: Adjust SA to reflect recent forwarding pointer changes In-Reply-To: <813cfae5-a9d7-0d3d-0eea-191d4900990e@redhat.com> References: <813cfae5-a9d7-0d3d-0eea-191d4900990e@redhat.com> Message-ID: <67ACD14D-980B-4DFB-937C-B8A02CBEE502@redhat.com> Oops, totally forgot about that. Should this also go into jdk13 as bugfix? Roman Am 14. Juni 2019 17:50:57 MESZ schrieb Zhengyu Gu : >Please review this patch, that adjusts SA to reflect removal of extra >header for forwarding pointer. > >Bug: https://bugs.openjdk.java.net/browse/JDK-8225801 >Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225801/webrev.00/ > >Test: > hotspot_gc_shenandoah > Manual test. > > >Thanks, > >-Zhengyu -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Fri Jun 14 18:00:52 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 14 Jun 2019 14:00:52 -0400 Subject: RFR(S) 8225801: Shenandoah: Adjust SA to reflect recent forwarding pointer changes In-Reply-To: <67ACD14D-980B-4DFB-937C-B8A02CBEE502@redhat.com> References: <813cfae5-a9d7-0d3d-0eea-191d4900990e@redhat.com> <67ACD14D-980B-4DFB-937C-B8A02CBEE502@redhat.com> Message-ID: <85e06d50-9e25-f363-f416-d22601154baa@redhat.com> On 6/14/19 12:58 PM, Roman Kennke wrote: > Oops, totally forgot about that. Should this also go into jdk13 as bugfix? Yes, I think so. -Zhengyu > > Roman > > > Am 14. Juni 2019 17:50:57 MESZ schrieb Zhengyu Gu : > > Please review this patch, that adjusts SA to reflect removal of extra > header for forwarding pointer. > > Bug:https://bugs.openjdk.java.net/browse/JDK-8225801 > Webrev:http://cr.openjdk.java.net/~zgu/JDK-8225801/webrev.00/ > > Test: > hotspot_gc_shenandoah > Manual test. > > > Thanks, > > -Zhengyu > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Fri Jun 14 18:22:52 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 14 Jun 2019 14:22:52 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> Message-ID: So, is this a review? Thanks, -Zhengyu On 6/14/19 10:25 AM, Roman Kennke wrote: > In this case we're good. > Roman > > Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu : > > Hi Roman, > > Could you please take a look (Roland's comments) or if the CR is accurate? > > https://bugs.openjdk.java.net/browse/JDK-8225718 > > Thanks, > > -Zhengyu > > On 6/12/19 3:11 PM, Roman Kennke wrote: > > IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to > getClass() > intrinsic, which loads and unwraps the Class object from an obj > via the > Klass*. If the Klass* -> mirror reference is part of the CLDG > roots (I > don't know if that is the case), then you're gonna need the C1 > and C2 > barriers for concurrent evacuation of CLDG roots, otherwise you > might > leak from-space oops (the Class objects) in the getClass() > intrinsics. > > > Roman > > Hi Roman, > > This patch does not deal with class unloading, it is still > done at final > mark pause. What it does, is to move evacuate/update refs in > CLDs from > SH::evacuate_and_update_roots() to concurrent phase, and at > this point, > they are strongly reachable. > > I will put this through more tests. > > Thanks, > > -Zhengyu > > > > On 6/12/19 1:44 PM, Roman Kennke wrote: > > I suspect you're gonna need the C1 and C2 IN_NATIVE > barriers, esp. for > the CLDG roots. Should be relatively easy to wire up the > LRB barriers > there (probably ask shade or roland). It will be more > complex to do the > other parts and return NULL on unreachable objects, but > this is not > needed yet. When we do, we should probably just make it > call out to > runtime. > > Roman > > This is the last sub task of JDK-8225534 [1], that > moves evacuation of > JNIHandles and Class Loader Data into concurrent > phase. This is the > first step that moves some root processing into > concurrent phase, and > this step can be backported to the releases that > don't support nmethod > barrier. > > 1. Concurrent CLDG root evacuation can not run > through safepoints, where > there may also perform CLDG walk, e.g. heap > iteration. So it requires > suspendible workers always on, therefore, > ShenandoahSuspendibleWorkers > flag is removed, along with related test cases. > There are many trivial > changes just because of this flag. > > 2. A new concurrent phase "concurrent roots" is > added to perform > concurrent JNI and CLDG root evacuation. In Next > step, it will also > perform concurrent class unloading and nmethod cleanup. > > 3) This patch does not address Traversal GC. > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 > Webrev: > http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ > > Test: > ?? hotspot_gc_shenandoah (fastdebug and release) > > > [1] https://bugs.openjdk.java.net/browse/JDK-8225582 > > Thanks, > > -Zhengyu > > > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From shade at redhat.com Fri Jun 14 18:49:45 2019 From: shade at redhat.com (shade at redhat.com) Date: Fri, 14 Jun 2019 18:49:45 +0000 Subject: hg: shenandoah/jdk8/hotspot: Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset 4a075d6cc009 Message-ID: <201906141849.x5EInjVN021959@aojmv0008.oracle.com> Changeset: 6e320d05a6cf Author: shade Date: 2019-06-14 20:41 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/6e320d05a6cf Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset 4a075d6cc009 ! .hgtags From shade at redhat.com Fri Jun 14 18:51:29 2019 From: shade at redhat.com (shade at redhat.com) Date: Fri, 14 Jun 2019 18:51:29 +0000 Subject: hg: shenandoah/jdk8/jdk: Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset 346a19c46cf9 Message-ID: <201906141851.x5EIpTYj022769@aojmv0008.oracle.com> Changeset: 3b92d253644e Author: shade Date: 2019-06-14 20:41 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/3b92d253644e Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset 346a19c46cf9 ! .hgtags From shade at redhat.com Fri Jun 14 18:51:29 2019 From: shade at redhat.com (shade at redhat.com) Date: Fri, 14 Jun 2019 18:51:29 +0000 Subject: hg: shenandoah/jdk8/langtools: Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset 5f8854cca68f Message-ID: <201906141851.x5EIpTj0022826@aojmv0008.oracle.com> Changeset: 6bfe5f4a8386 Author: shade Date: 2019-06-14 20:41 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/6bfe5f4a8386 Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset 5f8854cca68f ! .hgtags From shade at redhat.com Fri Jun 14 18:51:26 2019 From: shade at redhat.com (shade at redhat.com) Date: Fri, 14 Jun 2019 18:51:26 +0000 Subject: hg: shenandoah/jdk8/corba: Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset fbc2bbd9f194 Message-ID: <201906141851.x5EIpQ8i022608@aojmv0008.oracle.com> Changeset: 3725778c3c57 Author: shade Date: 2019-06-14 20:41 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/3725778c3c57 Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset fbc2bbd9f194 ! .hgtags From shade at redhat.com Fri Jun 14 18:51:31 2019 From: shade at redhat.com (shade at redhat.com) Date: Fri, 14 Jun 2019 18:51:31 +0000 Subject: hg: shenandoah/jdk8: Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset 2d1e2f44d10a Message-ID: <201906141851.x5EIpVjE022893@aojmv0008.oracle.com> Changeset: 155dd89ef79c Author: shade Date: 2019-06-14 20:41 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/155dd89ef79c Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset 2d1e2f44d10a ! .hgtags From shade at redhat.com Fri Jun 14 18:51:32 2019 From: shade at redhat.com (shade at redhat.com) Date: Fri, 14 Jun 2019 18:51:32 +0000 Subject: hg: shenandoah/jdk8/jaxp: Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset da43c4bca65b Message-ID: <201906141851.x5EIpWAf022908@aojmv0008.oracle.com> Changeset: a280ffe1efc7 Author: shade Date: 2019-06-14 20:41 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/a280ffe1efc7 Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset da43c4bca65b ! .hgtags From shade at redhat.com Fri Jun 14 18:51:33 2019 From: shade at redhat.com (shade at redhat.com) Date: Fri, 14 Jun 2019 18:51:33 +0000 Subject: hg: shenandoah/jdk8/jaxws: Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset d551e794255b Message-ID: <201906141851.x5EIpXul022921@aojmv0008.oracle.com> Changeset: f47fd80b6893 Author: shade Date: 2019-06-14 20:41 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/f47fd80b6893 Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset d551e794255b ! .hgtags From shade at redhat.com Fri Jun 14 18:52:12 2019 From: shade at redhat.com (shade at redhat.com) Date: Fri, 14 Jun 2019 18:52:12 +0000 Subject: hg: shenandoah/jdk8/nashorn: Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset cce55746426c Message-ID: <201906141852.x5EIqCSC024292@aojmv0008.oracle.com> Changeset: 616c6c069c7f Author: shade Date: 2019-06-14 20:41 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/616c6c069c7f Added tag aarch64-shenandoah-jdk8u222-b05-shenandoah-merge-2019-06-13 for changeset cce55746426c ! .hgtags From rkennke at redhat.com Fri Jun 14 19:00:08 2019 From: rkennke at redhat.com (Roman Kennke) Date: Fri, 14 Jun 2019 21:00:08 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> Message-ID: <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> Maybe makes sense to also break out the suspendible workers part? Roman Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : >So, is this a review? > >Thanks, > >-Zhengyu > >On 6/14/19 10:25 AM, Roman Kennke wrote: >> In this case we're good. >> Roman >> >> Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu : >> >> Hi Roman, >> >> Could you please take a look (Roland's comments) or if the CR is >accurate? >> >> https://bugs.openjdk.java.net/browse/JDK-8225718 >> >> Thanks, >> >> -Zhengyu >> >> On 6/12/19 3:11 PM, Roman Kennke wrote: >> >> IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to >> getClass() >> intrinsic, which loads and unwraps the Class object from an >obj >> via the >> Klass*. If the Klass* -> mirror reference is part of the CLDG >> roots (I >> don't know if that is the case), then you're gonna need the >C1 >> and C2 >> barriers for concurrent evacuation of CLDG roots, otherwise >you >> might >> leak from-space oops (the Class objects) in the getClass() >> intrinsics. >> >> >> Roman >> >> Hi Roman, >> >> This patch does not deal with class unloading, it is >still >> done at final >> mark pause. What it does, is to move evacuate/update refs >in >> CLDs from >> SH::evacuate_and_update_roots() to concurrent phase, and >at >> this point, >> they are strongly reachable. >> >> I will put this through more tests. >> >> Thanks, >> >> -Zhengyu >> >> >> >> On 6/12/19 1:44 PM, Roman Kennke wrote: >> >> I suspect you're gonna need the C1 and C2 IN_NATIVE >> barriers, esp. for >> the CLDG roots. Should be relatively easy to wire up >the >> LRB barriers >> there (probably ask shade or roland). It will be more >> complex to do the >> other parts and return NULL on unreachable objects, >but >> this is not >> needed yet. When we do, we should probably just make >it >> call out to >> runtime. >> >> Roman >> >> This is the last sub task of JDK-8225534 [1], >that >> moves evacuation of >> JNIHandles and Class Loader Data into concurrent >> phase. This is the >> first step that moves some root processing into >> concurrent phase, and >> this step can be backported to the releases that >> don't support nmethod >> barrier. >> >> 1. Concurrent CLDG root evacuation can not run >> through safepoints, where >> there may also perform CLDG walk, e.g. heap >> iteration. So it requires >> suspendible workers always on, therefore, >> ShenandoahSuspendibleWorkers >> flag is removed, along with related test cases. >> There are many trivial >> changes just because of this flag. >> >> 2. A new concurrent phase "concurrent roots" is >> added to perform >> concurrent JNI and CLDG root evacuation. In Next >> step, it will also >> perform concurrent class unloading and nmethod >cleanup. >> >> 3) This patch does not address Traversal GC. >> >> >> Bug: >https://bugs.openjdk.java.net/browse/JDK-8225582 >> Webrev: >> >http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >> >> Test: >> ?? hotspot_gc_shenandoah (fastdebug and release) >> >> >> [1] >https://bugs.openjdk.java.net/browse/JDK-8225582 >> >> Thanks, >> >> -Zhengyu >> >> >> >> >> -- >> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From rkennke at redhat.com Fri Jun 14 18:36:51 2019 From: rkennke at redhat.com (Roman Kennke) Date: Fri, 14 Jun 2019 20:36:51 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> Message-ID: No, not yet. Haven't had a chance to actually look at the changes yet. You're dealing with CLDG and JNI handles. I believe weak roots could also be evacuated concurrently now? Possibly some other roots? Roman Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : >So, is this a review? > >Thanks, > >-Zhengyu > >On 6/14/19 10:25 AM, Roman Kennke wrote: >> In this case we're good. >> Roman >> >> Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu : >> >> Hi Roman, >> >> Could you please take a look (Roland's comments) or if the CR is >accurate? >> >> https://bugs.openjdk.java.net/browse/JDK-8225718 >> >> Thanks, >> >> -Zhengyu >> >> On 6/12/19 3:11 PM, Roman Kennke wrote: >> >> IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to >> getClass() >> intrinsic, which loads and unwraps the Class object from an >obj >> via the >> Klass*. If the Klass* -> mirror reference is part of the CLDG >> roots (I >> don't know if that is the case), then you're gonna need the >C1 >> and C2 >> barriers for concurrent evacuation of CLDG roots, otherwise >you >> might >> leak from-space oops (the Class objects) in the getClass() >> intrinsics. >> >> >> Roman >> >> Hi Roman, >> >> This patch does not deal with class unloading, it is >still >> done at final >> mark pause. What it does, is to move evacuate/update refs >in >> CLDs from >> SH::evacuate_and_update_roots() to concurrent phase, and >at >> this point, >> they are strongly reachable. >> >> I will put this through more tests. >> >> Thanks, >> >> -Zhengyu >> >> >> >> On 6/12/19 1:44 PM, Roman Kennke wrote: >> >> I suspect you're gonna need the C1 and C2 IN_NATIVE >> barriers, esp. for >> the CLDG roots. Should be relatively easy to wire up >the >> LRB barriers >> there (probably ask shade or roland). It will be more >> complex to do the >> other parts and return NULL on unreachable objects, >but >> this is not >> needed yet. When we do, we should probably just make >it >> call out to >> runtime. >> >> Roman >> >> This is the last sub task of JDK-8225534 [1], >that >> moves evacuation of >> JNIHandles and Class Loader Data into concurrent >> phase. This is the >> first step that moves some root processing into >> concurrent phase, and >> this step can be backported to the releases that >> don't support nmethod >> barrier. >> >> 1. Concurrent CLDG root evacuation can not run >> through safepoints, where >> there may also perform CLDG walk, e.g. heap >> iteration. So it requires >> suspendible workers always on, therefore, >> ShenandoahSuspendibleWorkers >> flag is removed, along with related test cases. >> There are many trivial >> changes just because of this flag. >> >> 2. A new concurrent phase "concurrent roots" is >> added to perform >> concurrent JNI and CLDG root evacuation. In Next >> step, it will also >> perform concurrent class unloading and nmethod >cleanup. >> >> 3) This patch does not address Traversal GC. >> >> >> Bug: >https://bugs.openjdk.java.net/browse/JDK-8225582 >> Webrev: >> >http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >> >> Test: >> ?? hotspot_gc_shenandoah (fastdebug and release) >> >> >> [1] >https://bugs.openjdk.java.net/browse/JDK-8225582 >> >> Thanks, >> >> -Zhengyu >> >> >> >> >> -- >> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Fri Jun 14 19:04:25 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 14 Jun 2019 15:04:25 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> Message-ID: On 6/14/19 2:36 PM, Roman Kennke wrote: > No, not yet. Haven't had a chance to actually look at the changes yet. > > You're dealing with CLDG and JNI handles. I believe weak roots could > also be evacuated concurrently now? Possibly some other roots? Maybe, but let's do it in small steps. Thanks, -Zhengyu > > Roman > > > Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : > > So, is this a review? > > Thanks, > > -Zhengyu > > On 6/14/19 10:25 AM, Roman Kennke wrote: > > In this case we're good. > Roman > > Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu : > > Hi Roman, > > Could you please take a look (Roland's comments) or if the CR is > accurate? > > https://bugs.openjdk.java.net/browse/JDK-8225718 > > Thanks, > > -Zhengyu > > On 6/12/19 3:11 PM, Roman Kennke wrote: > > IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to > getClass() > intrinsic, which loads and unwraps the Class object from an obj > via the > Klass*. If the Klass* -> mirror reference is part of the CLDG > roots (I > don't know if that is the case), then you're gonna need the C1 > and C2 > barriers for concurrent evacuation of CLDG roots, otherwise you > might > leak from-space oops (the Class objects) in the getClass() > intrinsics. > > > Roman > > Hi Roman, > > This patch does not deal with class unloading, it is still > done at final > mark pause. What it does, is to move evacuate/update refs in > CLDs from > SH::evacuate_and_update_roots() to concurrent phase, and at > this point, > they are strongly reachable. > > I will put this through more tests. > > Thanks, > > -Zhengyu > > > > On 6/12/19 1:44 PM, Roman Kennke wrote: > > I suspect you're gonna need the C1 and C2 IN_NATIVE > barriers, esp. for > the CLDG roots. Should be relatively easy to wire up the > LRB barriers > there (probably ask shade or roland). It will be more > complex to do the > other parts and return NULL on unreachable objects, but > this is not > needed yet. When we do, we should probably just make it > call out to > runtime. > > Roman > > This is the last sub task of JDK-8225534 [1], that > moves evacuation of > JNIHandles and Class Loader Data into concurrent > phase. This is the > first step that moves some root processing into > concurrent phase, and > this step can be backported to the releases that > don't support nmethod > barrier. > > 1. Concurrent CLDG root evacuation can not run > through safepoints, where > there may also perform CLDG walk, e.g. heap > iteration. So it requires > suspendible workers always on, therefore, > ShenandoahSuspendibleWorkers > flag is removed, along with related test cases. > There are many trivial > changes just because of this flag. > > 2. A new concurrent phase "concurrent roots" is > added to perform > concurrent JNI and CLDG root evacuation. In Next > step, it will also > perform concurrent class unloading and nmethod cleanup. > > 3) This patch does not address Traversal GC. > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 > Webrev: > http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ > > Test: > ?? hotspot_gc_shenandoah (fastdebug and release) > > > [1] https://bugs.openjdk.java.net/browse/JDK-8225582 > > Thanks, > > -Zhengyu > > > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail > gesendet. > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Fri Jun 14 19:12:30 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 14 Jun 2019 15:12:30 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> Message-ID: On 6/14/19 3:00 PM, Roman Kennke wrote: > Maybe makes sense to also break out the suspendible workers part? Can do that. https://bugs.openjdk.java.net/browse/JDK-8225813 -Zhengyu > > Roman > > > Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : > > So, is this a review? > > Thanks, > > -Zhengyu > > On 6/14/19 10:25 AM, Roman Kennke wrote: > > In this case we're good. > Roman > > Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu : > > Hi Roman, > > Could you please take a look (Roland's comments) or if the CR is > accurate? > > https://bugs.openjdk.java.net/browse/JDK-8225718 > > Thanks, > > -Zhengyu > > On 6/12/19 3:11 PM, Roman Kennke wrote: > > IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to > getClass() > intrinsic, which loads and unwraps the Class object from an obj > via the > Klass*. If the Klass* -> mirror reference is part of the CLDG > roots (I > don't know if that is the case), then you're gonna need the C1 > and C2 > barriers for concurrent evacuation of CLDG roots, otherwise you > might > leak from-space oops (the Class objects) in the getClass() > intrinsics. > > > Roman > > Hi Roman, > > This patch does not deal with class unloading, it is still > done at final > mark pause. What it does, is to move evacuate/update refs in > CLDs from > SH::evacuate_and_update_roots() to concurrent phase, and at > this point, > they are strongly reachable. > > I will put this through more tests. > > Thanks, > > -Zhengyu > > > > On 6/12/19 1:44 PM, Roman Kennke wrote: > > I suspect you're gonna need the C1 and C2 IN_NATIVE > barriers, esp. for > the CLDG roots. Should be relatively easy to wire up the > LRB barriers > there (probably ask shade or roland). It will be more > complex to do the > other parts and return NULL on unreachable objects, but > this is not > needed yet. When we do, we should probably just make it > call out to > runtime. > > Roman > > This is the last sub task of JDK-8225534 [1], that > moves evacuation of > JNIHandles and Class Loader Data into concurrent > phase. This is the > first step that moves some root processing into > concurrent phase, and > this step can be backported to the releases that > don't support nmethod > barrier. > > 1. Concurrent CLDG root evacuation can not run > through safepoints, where > there may also perform CLDG walk, e.g. heap > iteration. So it requires > suspendible workers always on, therefore, > ShenandoahSuspendibleWorkers > flag is removed, along with related test cases. > There are many trivial > changes just because of this flag. > > 2. A new concurrent phase "concurrent roots" is > added to perform > concurrent JNI and CLDG root evacuation. In Next > step, it will also > perform concurrent class unloading and nmethod cleanup. > > 3) This patch does not address Traversal GC. > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 > Webrev: > http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ > > Test: > ?? hotspot_gc_shenandoah (fastdebug and release) > > > [1] https://bugs.openjdk.java.net/browse/JDK-8225582 > > Thanks, > > -Zhengyu > > > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail > gesendet. > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Fri Jun 14 20:58:22 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 14 Jun 2019 16:58:22 -0400 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required Message-ID: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> Please review this patch that makes suspendible workers required, instead of optional, and obsoletes the corresponding flag. Suspendible workers are required for concurrent root processing. Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From zgu at redhat.com Sat Jun 15 12:37:05 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Sat, 15 Jun 2019 08:37:05 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> Message-ID: <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> Breaking out Suspendible workers changes to JDK-8225813 [1] Updated webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ Reran hotspot_gc_shenandoah tests (fastdebug and release) Thanks, -Zhengyu [1] https://bugs.openjdk.java.net/browse/JDK-8225813 On 6/14/19 3:00 PM, Roman Kennke wrote: > Maybe makes sense to also break out the suspendible workers part? > > Roman > > > Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : > > So, is this a review? > > Thanks, > > -Zhengyu > > On 6/14/19 10:25 AM, Roman Kennke wrote: > > In this case we're good. > Roman > > Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu : > > Hi Roman, > > Could you please take a look (Roland's comments) or if the CR is > accurate? > > https://bugs.openjdk.java.net/browse/JDK-8225718 > > Thanks, > > -Zhengyu > > On 6/12/19 3:11 PM, Roman Kennke wrote: > > IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to > getClass() > intrinsic, which loads and unwraps the Class object from an obj > via the > Klass*. If the Klass* -> mirror reference is part of the CLDG > roots (I > don't know if that is the case), then you're gonna need the C1 > and C2 > barriers for concurrent evacuation of CLDG roots, otherwise you > might > leak from-space oops (the Class objects) in the getClass() > intrinsics. > > > Roman > > Hi Roman, > > This patch does not deal with class unloading, it is still > done at final > mark pause. What it does, is to move evacuate/update refs in > CLDs from > SH::evacuate_and_update_roots() to concurrent phase, and at > this point, > they are strongly reachable. > > I will put this through more tests. > > Thanks, > > -Zhengyu > > > > On 6/12/19 1:44 PM, Roman Kennke wrote: > > I suspect you're gonna need the C1 and C2 IN_NATIVE > barriers, esp. for > the CLDG roots. Should be relatively easy to wire up the > LRB barriers > there (probably ask shade or roland). It will be more > complex to do the > other parts and return NULL on unreachable objects, but > this is not > needed yet. When we do, we should probably just make it > call out to > runtime. > > Roman > > This is the last sub task of JDK-8225534 [1], that > moves evacuation of > JNIHandles and Class Loader Data into concurrent > phase. This is the > first step that moves some root processing into > concurrent phase, and > this step can be backported to the releases that > don't support nmethod > barrier. > > 1. Concurrent CLDG root evacuation can not run > through safepoints, where > there may also perform CLDG walk, e.g. heap > iteration. So it requires > suspendible workers always on, therefore, > ShenandoahSuspendibleWorkers > flag is removed, along with related test cases. > There are many trivial > changes just because of this flag. > > 2. A new concurrent phase "concurrent roots" is > added to perform > concurrent JNI and CLDG root evacuation. In Next > step, it will also > perform concurrent class unloading and nmethod cleanup. > > 3) This patch does not address Traversal GC. > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 > Webrev: > http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ > > Test: > ?? hotspot_gc_shenandoah (fastdebug and release) > > > [1] https://bugs.openjdk.java.net/browse/JDK-8225582 > > Thanks, > > -Zhengyu > > > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail > gesendet. > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From rkennke at redhat.com Sat Jun 15 19:35:21 2019 From: rkennke at redhat.com (Roman Kennke) Date: Sat, 15 Jun 2019 21:35:21 +0200 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> Message-ID: Can you give a little bit of explanation why workers need to be suspended at safepoints for concurrent root processing? Other than that, the patch looks good. Roman > Please review this patch that makes suspendible workers required, > instead of optional, and obsoletes the corresponding flag. > > Suspendible workers are required for concurrent root processing. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html > > Test: > ? hotspot_gc_shenandoah (fastdebug and release) > > Thanks, > > -Zhengyu From rkennke at redhat.com Sat Jun 15 20:08:42 2019 From: rkennke at redhat.com (Roman Kennke) Date: Sat, 15 Jun 2019 22:08:42 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> Message-ID: <5fea5e69-5213-85bb-fb87-6130728543c5@redhat.com> Looks ok to me. Thanks, Roman > Breaking out Suspendible workers changes to JDK-8225813 [1] > > Updated webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ > > Reran hotspot_gc_shenandoah tests (fastdebug and release) > > Thanks, > > -Zhengyu > > > [1] https://bugs.openjdk.java.net/browse/JDK-8225813 > > > > On 6/14/19 3:00 PM, Roman Kennke wrote: >> Maybe makes sense to also break out the suspendible workers part? >> >> Roman >> >> >> Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : >> >> ??? So, is this a review? >> >> ??? Thanks, >> >> ??? -Zhengyu >> >> ??? On 6/14/19 10:25 AM, Roman Kennke wrote: >> >> ??????? In this case we're good. >> ??????? Roman >> >> ??????? Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu >> : >> >> ??????? Hi Roman, >> >> ??????? Could you please take a look (Roland's comments) or if the CR is >> ??????? accurate? >> >> ??????? https://bugs.openjdk.java.net/browse/JDK-8225718 >> >> ??????? Thanks, >> >> ??????? -Zhengyu >> >> ??????? On 6/12/19 3:11 PM, Roman Kennke wrote: >> >> ??????? IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to >> ??????? getClass() >> ??????? intrinsic, which loads and unwraps the Class object from an obj >> ??????? via the >> ??????? Klass*. If the Klass* -> mirror reference is part of the CLDG >> ??????? roots (I >> ??????? don't know if that is the case), then you're gonna need the C1 >> ??????? and C2 >> ??????? barriers for concurrent evacuation of CLDG roots, otherwise you >> ??????? might >> ??????? leak from-space oops (the Class objects) in the getClass() >> ??????? intrinsics. >> >> >> ??????? Roman >> >> ??????? Hi Roman, >> >> ??????? This patch does not deal with class unloading, it is still >> ??????? done at final >> ??????? mark pause. What it does, is to move evacuate/update refs in >> ??????? CLDs from >> ??????? SH::evacuate_and_update_roots() to concurrent phase, and at >> ??????? this point, >> ??????? they are strongly reachable. >> >> ??????? I will put this through more tests. >> >> ??????? Thanks, >> >> ??????? -Zhengyu >> >> >> >> ??????? On 6/12/19 1:44 PM, Roman Kennke wrote: >> >> ??????? I suspect you're gonna need the C1 and C2 IN_NATIVE >> ??????? barriers, esp. for >> ??????? the CLDG roots. Should be relatively easy to wire up the >> ??????? LRB barriers >> ??????? there (probably ask shade or roland). It will be more >> ??????? complex to do the >> ??????? other parts and return NULL on unreachable objects, but >> ??????? this is not >> ??????? needed yet. When we do, we should probably just make it >> ??????? call out to >> ??????? runtime. >> >> ??????? Roman >> >> ??????? This is the last sub task of JDK-8225534 [1], that >> ??????? moves evacuation of >> ??????? JNIHandles and Class Loader Data into concurrent >> ??????? phase. This is the >> ??????? first step that moves some root processing into >> ??????? concurrent phase, and >> ??????? this step can be backported to the releases that >> ??????? don't support nmethod >> ??????? barrier. >> >> ??????? 1. Concurrent CLDG root evacuation can not run >> ??????? through safepoints, where >> ??????? there may also perform CLDG walk, e.g. heap >> ??????? iteration. So it requires >> ??????? suspendible workers always on, therefore, >> ??????? ShenandoahSuspendibleWorkers >> ??????? flag is removed, along with related test cases. >> ??????? There are many trivial >> ??????? changes just because of this flag. >> >> ??????? 2. A new concurrent phase "concurrent roots" is >> ??????? added to perform >> ??????? concurrent JNI and CLDG root evacuation. In Next >> ??????? step, it will also >> ??????? perform concurrent class unloading and nmethod cleanup. >> >> ??????? 3) This patch does not address Traversal GC. >> >> >> ??????? Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >> ??????? Webrev: >> ??????? http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >> >> ??????? Test: >> ???????? ?? hotspot_gc_shenandoah (fastdebug and release) >> >> >> ??????? [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >> >> ??????? Thanks, >> >> ??????? -Zhengyu >> >> >> >> >> ??????? -- ??????? Diese Nachricht wurde von meinem Android-Ger?t mit >> K-9 Mail >> ??????? gesendet. >> >> >> --? >> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Sun Jun 16 01:26:07 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Sat, 15 Jun 2019 21:26:07 -0400 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> Message-ID: <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> On 6/15/19 3:35 PM, Roman Kennke wrote: > Can you give a little bit of explanation why workers need to be > suspended at safepoints for concurrent root processing? Concurrent processing uses workers and safepoint parallel task also utilizes workers, and shenandoah shares workers, so they can not overlap. -Zhengyu > > Other than that, the patch looks good. > > Roman > >> Please review this patch that makes suspendible workers required, >> instead of optional, and obsoletes the corresponding flag. >> >> Suspendible workers are required for concurrent root processing. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >> >> Test: >> ? hotspot_gc_shenandoah (fastdebug and release) >> >> Thanks, >> >> -Zhengyu > From zgu at redhat.com Sun Jun 16 02:11:02 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Sat, 15 Jun 2019 22:11:02 -0400 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> Message-ID: <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> On 6/15/19 9:26 PM, Zhengyu Gu wrote: > On 6/15/19 3:35 PM, Roman Kennke wrote: >> Can you give a little bit of explanation why workers need to be >> suspended at safepoints for concurrent root processing? > > Concurrent processing uses workers and safepoint parallel task also > utilizes workers, and shenandoah shares workers, so they can not overlap. Should be more articulate. I don't mean GC safepoint parallel tasks, which can not overlap. But the tasks, such as, heap iteration that might utilize workers. Also, heap iteration walks CLDG at a safepoint, that may interfere CLDG walking during concurrent CLDG evacuation. -Zhengyu > > > -Zhengyu > >> >> Other than that, the patch looks good. >> >> Roman >> >>> Please review this patch that makes suspendible workers required, >>> instead of optional, and obsoletes the corresponding flag. >>> >>> Suspendible workers are required for concurrent root processing. >>> >>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >>> >>> Test: >>> ?? hotspot_gc_shenandoah (fastdebug and release) >>> >>> Thanks, >>> >>> -Zhengyu >> From rkennke at redhat.com Sun Jun 16 11:27:29 2019 From: rkennke at redhat.com (Roman Kennke) Date: Sun, 16 Jun 2019 13:27:29 +0200 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> Message-ID: <79d4e6d9-f21d-7085-99ab-13dc5cd923a3@redhat.com> Hi Zhengyu, So as far as I can see, we are looking at 2 potential issues: - Non-GC safepoint work might use our GC workers. This would only possibly be heap-iteration, and as far as I remember, heap-iteration is single-threaded and uses the VMThread. Besides: if this would happen, we'd already have the problem. I don't think this is the case. (Safepoint cleanup has this problem, and we use a separate thread pool for precisely this reason.) - Non-GC safepoint work needs to look at GC roots, and concurrent processing of GC roots might conflict with that. As far as I see it, this problem could also be solved by employing the correct barriers. I believe this only affects heap-iteration. So when heap-iteration scans the GC roots (during conc-evac), it needs to do the LRB to avoid exposing from-space-objects in the iteration. Later on, when we also want to do concurrent cleanup, it also needs to filter unreachable objects by not seeding the iteration with objects that are unreachable (as per the marking bitmap, not the aux bitmap!). I might be missing something there? The reason why I'm looking at avoiding stopping GC threads at safepoints is that it may introduce additional latencies when bringing Java threads to (non-GC) safepoints like biased locking or deopt, by having them wait for GC work (especially when we have non-interruptible not-quite-short GC work like GC roots processing). Roman > On 6/15/19 9:26 PM, Zhengyu Gu wrote: >> On 6/15/19 3:35 PM, Roman Kennke wrote: >>> Can you give a little bit of explanation why workers need to be >>> suspended at safepoints for concurrent root processing? >> >> Concurrent processing uses workers and safepoint parallel task also >> utilizes workers, and shenandoah shares workers, so they can not overlap. > > Should be more articulate. I don't mean GC safepoint parallel tasks, > which can not overlap. But the tasks, such as, heap iteration that might > utilize workers. > > Also, heap iteration walks CLDG at a safepoint, that may interfere CLDG > walking during concurrent CLDG evacuation. > > -Zhengyu > >> >> >> -Zhengyu >> >>> >>> Other than that, the patch looks good. >>> >>> Roman >>> >>>> Please review this patch that makes suspendible workers required, >>>> instead of optional, and obsoletes the corresponding flag. >>>> >>>> Suspendible workers are required for concurrent root processing. >>>> >>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >>>> Webrev: >>>> http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >>>> >>>> Test: >>>> ?? hotspot_gc_shenandoah (fastdebug and release) >>>> >>>> Thanks, >>>> >>>> -Zhengyu >>> From zgu at redhat.com Sun Jun 16 14:21:10 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Sun, 16 Jun 2019 10:21:10 -0400 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: <79d4e6d9-f21d-7085-99ab-13dc5cd923a3@redhat.com> References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> <79d4e6d9-f21d-7085-99ab-13dc5cd923a3@redhat.com> Message-ID: On 6/16/19 7:27 AM, Roman Kennke wrote: > Hi Zhengyu, > > So as far as I can see, we are looking at 2 potential issues: > > - Non-GC safepoint work might use our GC workers. This would only > possibly be heap-iteration, and as far as I remember, heap-iteration is > single-threaded and uses the VMThread. Besides: if this would happen, > we'd already have the problem. I don't think this is the case. > (Safepoint cleanup has this problem, and we use a separate thread pool > for precisely this reason.) Right. It is single-threaded. > > - Non-GC safepoint work needs to look at GC roots, and concurrent > processing of GC roots might conflict with that. > > As far as I see it, this problem could also be solved by employing the > correct barriers. I believe this only affects heap-iteration. So when > heap-iteration scans the GC roots (during conc-evac), it needs to do the > LRB to avoid exposing from-space-objects in the iteration. Later on, > when we also want to do concurrent cleanup, it also needs to filter > unreachable objects by not seeding the iteration with objects that are > unreachable (as per the marking bitmap, not the aux bitmap!). > Our current solution is to use the same roots for heap iteration, as current GC cycle, so both see the same live object graph. At this phase, the problems I saw, I think, can be solved with additional cares to avoid suspending workers, e.g. not clear claimed flag for CLDG and using _claim_none to for heap iteration, etc. but I don't think it worth the efforts. This change is inavoidable for concurrent class unloading and concurrent code root processing: - SystemDictionary::do_unloading(), by design, can not run through safepoints (JDK-8222223), - Some CLDG related VM operations, such as ClassLoaderStatsOperation and ClassLoaderHierarchyOperation are no longer safe, if class unloading run through them. - I suspect some IC related also no longer safe. -Zhengyu > I might be missing something there? > > The reason why I'm looking at avoiding stopping GC threads at safepoints > is that it may introduce additional latencies when bringing Java threads > to (non-GC) safepoints like biased locking or deopt, by having them wait > for GC work (especially when we have non-interruptible not-quite-short > GC work like GC roots processing). > > Roman > >> On 6/15/19 9:26 PM, Zhengyu Gu wrote: >>> On 6/15/19 3:35 PM, Roman Kennke wrote: >>>> Can you give a little bit of explanation why workers need to be >>>> suspended at safepoints for concurrent root processing? >>> >>> Concurrent processing uses workers and safepoint parallel task also >>> utilizes workers, and shenandoah shares workers, so they can not overlap. >> >> Should be more articulate. I don't mean GC safepoint parallel tasks, >> which can not overlap. But the tasks, such as, heap iteration that might >> utilize workers. >> >> Also, heap iteration walks CLDG at a safepoint, that may interfere CLDG >> walking during concurrent CLDG evacuation. >> >> -Zhengyu >> >>> >>> >>> -Zhengyu >>> >>>> >>>> Other than that, the patch looks good. >>>> >>>> Roman >>>> >>>>> Please review this patch that makes suspendible workers required, >>>>> instead of optional, and obsoletes the corresponding flag. >>>>> >>>>> Suspendible workers are required for concurrent root processing. >>>>> >>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >>>>> Webrev: >>>>> http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >>>>> >>>>> Test: >>>>> ?? hotspot_gc_shenandoah (fastdebug and release) >>>>> >>>>> Thanks, >>>>> >>>>> -Zhengyu >>>> > From rkennke at redhat.com Sun Jun 16 15:13:06 2019 From: rkennke at redhat.com (Roman Kennke) Date: Sun, 16 Jun 2019 17:13:06 +0200 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> <79d4e6d9-f21d-7085-99ab-13dc5cd923a3@redhat.com> Message-ID: Aha, OK then. This is what I needed to know. Thanks, Roman Am 16. Juni 2019 16:21:10 MESZ schrieb Zhengyu Gu : > > >On 6/16/19 7:27 AM, Roman Kennke wrote: >> Hi Zhengyu, >> >> So as far as I can see, we are looking at 2 potential issues: >> >> - Non-GC safepoint work might use our GC workers. This would only >> possibly be heap-iteration, and as far as I remember, heap-iteration >is >> single-threaded and uses the VMThread. Besides: if this would happen, >> we'd already have the problem. I don't think this is the case. >> (Safepoint cleanup has this problem, and we use a separate thread >pool >> for precisely this reason.) > >Right. It is single-threaded. > >> >> - Non-GC safepoint work needs to look at GC roots, and concurrent >> processing of GC roots might conflict with that. >> >> As far as I see it, this problem could also be solved by employing >the >> correct barriers. I believe this only affects heap-iteration. So when >> heap-iteration scans the GC roots (during conc-evac), it needs to do >the >> LRB to avoid exposing from-space-objects in the iteration. Later on, >> when we also want to do concurrent cleanup, it also needs to filter >> unreachable objects by not seeding the iteration with objects that >are >> unreachable (as per the marking bitmap, not the aux bitmap!). >> >Our current solution is to use the same roots for heap iteration, as >current GC cycle, so both see the same live object graph. > >At this phase, the problems I saw, I think, can be solved with >additional cares to avoid suspending workers, e.g. not clear claimed >flag for CLDG and using _claim_none to for heap iteration, etc. but I >don't think it worth the efforts. > >This change is inavoidable for concurrent class unloading and >concurrent >code root processing: > >- SystemDictionary::do_unloading(), by design, can not run through >safepoints (JDK-8222223), > >- Some CLDG related VM operations, such as ClassLoaderStatsOperation >and >ClassLoaderHierarchyOperation are no longer safe, if class unloading >run >through them. > >- I suspect some IC related also no longer safe. > >-Zhengyu > > > > >> I might be missing something there? >> >> The reason why I'm looking at avoiding stopping GC threads at >safepoints >> is that it may introduce additional latencies when bringing Java >threads >> to (non-GC) safepoints like biased locking or deopt, by having them >wait >> for GC work (especially when we have non-interruptible >not-quite-short >> GC work like GC roots processing). >> >> Roman >> >>> On 6/15/19 9:26 PM, Zhengyu Gu wrote: >>>> On 6/15/19 3:35 PM, Roman Kennke wrote: >>>>> Can you give a little bit of explanation why workers need to be >>>>> suspended at safepoints for concurrent root processing? >>>> >>>> Concurrent processing uses workers and safepoint parallel task also >>>> utilizes workers, and shenandoah shares workers, so they can not >overlap. >>> >>> Should be more articulate. I don't mean GC safepoint parallel tasks, >>> which can not overlap. But the tasks, such as, heap iteration that >might >>> utilize workers. >>> >>> Also, heap iteration walks CLDG at a safepoint, that may interfere >CLDG >>> walking during concurrent CLDG evacuation. >>> >>> -Zhengyu >>> >>>> >>>> >>>> -Zhengyu >>>> >>>>> >>>>> Other than that, the patch looks good. >>>>> >>>>> Roman >>>>> >>>>>> Please review this patch that makes suspendible workers required, >>>>>> instead of optional, and obsoletes the corresponding flag. >>>>>> >>>>>> Suspendible workers are required for concurrent root processing. >>>>>> >>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >>>>>> Webrev: >>>>>> http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >>>>>> >>>>>> Test: >>>>>> ?? hotspot_gc_shenandoah (fastdebug and release) >>>>>> >>>>>> Thanks, >>>>>> >>>>>> -Zhengyu >>>>> >> -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Sun Jun 16 16:37:26 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Sun, 16 Jun 2019 12:37:26 -0400 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> <79d4e6d9-f21d-7085-99ab-13dc5cd923a3@redhat.com> Message-ID: <94fdf43c-0da4-0572-96f1-b745eb60fae4@redhat.com> On 6/16/19 10:21 AM, Zhengyu Gu wrote: > > > On 6/16/19 7:27 AM, Roman Kennke wrote: >> Hi Zhengyu, >> >> So as far as I can see, we are looking at 2 potential issues: >> >> - Non-GC safepoint work might use our GC workers. This would only >> possibly be heap-iteration, and as far as I remember, heap-iteration is >> single-threaded and uses the VMThread. Besides: if this would happen, >> we'd already have the problem. I don't think this is the case. >> (Safepoint cleanup has this problem, and we use a separate thread pool >> for precisely this reason.) > > Right. It is single-threaded. > >> >> - Non-GC safepoint work needs to look at GC roots, and concurrent >> processing of GC roots might conflict with that. >> >> As far as I see it, this problem could also be solved by employing the >> correct barriers. I believe this only affects heap-iteration. So when >> heap-iteration scans the GC roots (during conc-evac), it needs to do the >> LRB to avoid exposing from-space-objects in the iteration. Later on, >> when we also want to do concurrent cleanup, it also needs to filter >> unreachable objects by not seeding the iteration with objects that are >> unreachable (as per the marking bitmap, not the aux bitmap!). >> > Our current solution is to use the same roots for heap iteration, as > current GC cycle, so both see the same live object graph. > > At this phase, the problems I saw, I think, can be solved with > additional cares to avoid suspending workers, e.g. not clear claimed > flag for CLDG and using _claim_none to for heap iteration, etc. but I > don't think it worth the efforts. Second thoughts, maybe worth for releases that can not do concurrent class unloading, e.g. pre-JDK13. -Zhengyu > > This change is inavoidable for concurrent class unloading and concurrent > code root processing: > > - SystemDictionary::do_unloading(), by design, can not run through > safepoints (JDK-8222223), > > - Some CLDG related VM operations, such as ClassLoaderStatsOperation and > ClassLoaderHierarchyOperation are no longer safe, if class unloading run > through them. > > - I suspect some IC related also no longer safe. > > -Zhengyu > > > > >> I might be missing something there? >> >> The reason why I'm looking at avoiding stopping GC threads at safepoints >> is that it may introduce additional latencies when bringing Java threads >> to (non-GC) safepoints like biased locking or deopt, by having them wait >> for GC work (especially when we have non-interruptible not-quite-short >> GC work like GC roots processing). >> >> Roman >> >>> On 6/15/19 9:26 PM, Zhengyu Gu wrote: >>>> On 6/15/19 3:35 PM, Roman Kennke wrote: >>>>> Can you give a little bit of explanation why workers need to be >>>>> suspended at safepoints for concurrent root processing? >>>> >>>> Concurrent processing uses workers and safepoint parallel task also >>>> utilizes workers, and shenandoah shares workers, so they can not >>>> overlap. >>> >>> Should be more articulate. I don't mean GC safepoint parallel tasks, >>> which can not overlap. But the tasks, such as, heap iteration that might >>> utilize workers. >>> >>> Also, heap iteration walks CLDG at a safepoint, that may interfere CLDG >>> walking during concurrent CLDG evacuation. >>> >>> -Zhengyu >>> >>>> >>>> >>>> -Zhengyu >>>> >>>>> >>>>> Other than that, the patch looks good. >>>>> >>>>> Roman >>>>> >>>>>> Please review this patch that makes suspendible workers required, >>>>>> instead of optional, and obsoletes the corresponding flag. >>>>>> >>>>>> Suspendible workers are required for concurrent root processing. >>>>>> >>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >>>>>> Webrev: >>>>>> http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >>>>>> >>>>>> Test: >>>>>> ??? hotspot_gc_shenandoah (fastdebug and release) >>>>>> >>>>>> Thanks, >>>>>> >>>>>> -Zhengyu >>>>> >> From rkennke at redhat.com Sun Jun 16 19:20:45 2019 From: rkennke at redhat.com (Roman Kennke) Date: Sun, 16 Jun 2019 21:20:45 +0200 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> <79d4e6d9-f21d-7085-99ab-13dc5cd923a3@redhat.com> Message-ID: <7598a42b-59be-f3d1-f42a-b10922190259@redhat.com> BTW, *if* we claim CLDs in heap-iteration we must change/fix it, because it'd be a bug: if heap-iteration would happen during marking, and it claims all the CLDs, then subsequent marking would fail to mark through those CLDs. Also, we should not neglect Traversal GC too much. We want to stabilize Traversal GC and get it to feature parity with conc-mark-GC. Ideally we would mirror whatever we do in conc-mark to traversal GC ASAP. It's ok to let it slip for a little now, I will take care of it when I'm back from PTO. Roman > On 6/16/19 7:27 AM, Roman Kennke wrote: >> Hi Zhengyu, >> >> So as far as I can see, we are looking at 2 potential issues: >> >> - Non-GC safepoint work might use our GC workers. This would only >> possibly be heap-iteration, and as far as I remember, heap-iteration is >> single-threaded and uses the VMThread. Besides: if this would happen, >> we'd already have the problem. I don't think this is the case. >> (Safepoint cleanup has this problem, and we use a separate thread pool >> for precisely this reason.) > > Right. It is single-threaded. > >> >> - Non-GC safepoint work needs to look at GC roots, and concurrent >> processing of GC roots might conflict with that. >> >> As far as I see it, this problem could also be solved by employing the >> correct barriers. I believe this only affects heap-iteration. So when >> heap-iteration scans the GC roots (during conc-evac), it needs to do the >> LRB to avoid exposing from-space-objects in the iteration. Later on, >> when we also want to do concurrent cleanup, it also needs to filter >> unreachable objects by not seeding the iteration with objects that are >> unreachable (as per the marking bitmap, not the aux bitmap!). >> > Our current solution is to use the same roots for heap iteration, as > current GC cycle, so both see the same live object graph. > > At this phase, the problems I saw, I think, can be solved with > additional cares to avoid suspending workers, e.g. not clear claimed > flag for CLDG and using _claim_none to for heap iteration, etc. but I > don't think it worth the efforts. > > This change is inavoidable for concurrent class unloading and concurrent > code root processing: > > - SystemDictionary::do_unloading(), by design, can not run through > safepoints (JDK-8222223), > > - Some CLDG related VM operations, such as ClassLoaderStatsOperation and > ClassLoaderHierarchyOperation are no longer safe, if class unloading run > through them. > > - I suspect some IC related also no longer safe. > > -Zhengyu > > > > >> I might be missing something there? >> >> The reason why I'm looking at avoiding stopping GC threads at safepoints >> is that it may introduce additional latencies when bringing Java threads >> to (non-GC) safepoints like biased locking or deopt, by having them wait >> for GC work (especially when we have non-interruptible not-quite-short >> GC work like GC roots processing). >> >> Roman >> >>> On 6/15/19 9:26 PM, Zhengyu Gu wrote: >>>> On 6/15/19 3:35 PM, Roman Kennke wrote: >>>>> Can you give a little bit of explanation why workers need to be >>>>> suspended at safepoints for concurrent root processing? >>>> >>>> Concurrent processing uses workers and safepoint parallel task also >>>> utilizes workers, and shenandoah shares workers, so they can not >>>> overlap. >>> >>> Should be more articulate. I don't mean GC safepoint parallel tasks, >>> which can not overlap. But the tasks, such as, heap iteration that might >>> utilize workers. >>> >>> Also, heap iteration walks CLDG at a safepoint, that may interfere CLDG >>> walking during concurrent CLDG evacuation. >>> >>> -Zhengyu >>> >>>> >>>> >>>> -Zhengyu >>>> >>>>> >>>>> Other than that, the patch looks good. >>>>> >>>>> Roman >>>>> >>>>>> Please review this patch that makes suspendible workers required, >>>>>> instead of optional, and obsoletes the corresponding flag. >>>>>> >>>>>> Suspendible workers are required for concurrent root processing. >>>>>> >>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >>>>>> Webrev: >>>>>> http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >>>>>> >>>>>> Test: >>>>>> ??? hotspot_gc_shenandoah (fastdebug and release) >>>>>> >>>>>> Thanks, >>>>>> >>>>>> -Zhengyu >>>>> >> From rkennke at redhat.com Mon Jun 17 08:55:50 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 17 Jun 2019 10:55:50 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> Message-ID: Also, I wonder if we need to deal with CLDG roots here. It seems simpler to only do JNIHandles, which puts in a lot of required infrastructure into place. Then we'd also add concurrent marking of JNIHandles and call that part done. And then we shall probably add weak handles, and with this we have a basis on which to build CLDG processing. What do you think? Roman > Breaking out Suspendible workers changes to JDK-8225813 [1] > > Updated webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ > > Reran hotspot_gc_shenandoah tests (fastdebug and release) > > Thanks, > > -Zhengyu > > > [1] https://bugs.openjdk.java.net/browse/JDK-8225813 > > > > On 6/14/19 3:00 PM, Roman Kennke wrote: >> Maybe makes sense to also break out the suspendible workers part? >> >> Roman >> >> >> Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : >> >> ??? So, is this a review? >> >> ??? Thanks, >> >> ??? -Zhengyu >> >> ??? On 6/14/19 10:25 AM, Roman Kennke wrote: >> >> ??????? In this case we're good. >> ??????? Roman >> >> ??????? Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu >> : >> >> ??????? Hi Roman, >> >> ??????? Could you please take a look (Roland's comments) or if the CR is >> ??????? accurate? >> >> ??????? https://bugs.openjdk.java.net/browse/JDK-8225718 >> >> ??????? Thanks, >> >> ??????? -Zhengyu >> >> ??????? On 6/12/19 3:11 PM, Roman Kennke wrote: >> >> ??????? IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to >> ??????? getClass() >> ??????? intrinsic, which loads and unwraps the Class object from an obj >> ??????? via the >> ??????? Klass*. If the Klass* -> mirror reference is part of the CLDG >> ??????? roots (I >> ??????? don't know if that is the case), then you're gonna need the C1 >> ??????? and C2 >> ??????? barriers for concurrent evacuation of CLDG roots, otherwise you >> ??????? might >> ??????? leak from-space oops (the Class objects) in the getClass() >> ??????? intrinsics. >> >> >> ??????? Roman >> >> ??????? Hi Roman, >> >> ??????? This patch does not deal with class unloading, it is still >> ??????? done at final >> ??????? mark pause. What it does, is to move evacuate/update refs in >> ??????? CLDs from >> ??????? SH::evacuate_and_update_roots() to concurrent phase, and at >> ??????? this point, >> ??????? they are strongly reachable. >> >> ??????? I will put this through more tests. >> >> ??????? Thanks, >> >> ??????? -Zhengyu >> >> >> >> ??????? On 6/12/19 1:44 PM, Roman Kennke wrote: >> >> ??????? I suspect you're gonna need the C1 and C2 IN_NATIVE >> ??????? barriers, esp. for >> ??????? the CLDG roots. Should be relatively easy to wire up the >> ??????? LRB barriers >> ??????? there (probably ask shade or roland). It will be more >> ??????? complex to do the >> ??????? other parts and return NULL on unreachable objects, but >> ??????? this is not >> ??????? needed yet. When we do, we should probably just make it >> ??????? call out to >> ??????? runtime. >> >> ??????? Roman >> >> ??????? This is the last sub task of JDK-8225534 [1], that >> ??????? moves evacuation of >> ??????? JNIHandles and Class Loader Data into concurrent >> ??????? phase. This is the >> ??????? first step that moves some root processing into >> ??????? concurrent phase, and >> ??????? this step can be backported to the releases that >> ??????? don't support nmethod >> ??????? barrier. >> >> ??????? 1. Concurrent CLDG root evacuation can not run >> ??????? through safepoints, where >> ??????? there may also perform CLDG walk, e.g. heap >> ??????? iteration. So it requires >> ??????? suspendible workers always on, therefore, >> ??????? ShenandoahSuspendibleWorkers >> ??????? flag is removed, along with related test cases. >> ??????? There are many trivial >> ??????? changes just because of this flag. >> >> ??????? 2. A new concurrent phase "concurrent roots" is >> ??????? added to perform >> ??????? concurrent JNI and CLDG root evacuation. In Next >> ??????? step, it will also >> ??????? perform concurrent class unloading and nmethod cleanup. >> >> ??????? 3) This patch does not address Traversal GC. >> >> >> ??????? Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >> ??????? Webrev: >> ??????? http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >> >> ??????? Test: >> ???????? ?? hotspot_gc_shenandoah (fastdebug and release) >> >> >> ??????? [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >> >> ??????? Thanks, >> >> ??????? -Zhengyu >> >> >> >> >> ??????? -- ??????? Diese Nachricht wurde von meinem Android-Ger?t mit >> K-9 Mail >> ??????? gesendet. >> >> >> --? >> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From rkennke at redhat.com Mon Jun 17 10:57:02 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 17 Jun 2019 12:57:02 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> Message-ID: <6fed21a2-26d2-50af-daea-95ada4ea646c@redhat.com> I am not totally sure, but I don't think JNIHandles need extra handling for cleaning, do they? Also, concurrent marking of JNIHandles is probably easy because they are immutable (not sure, please check). IOW, strictly speaking they wouldn't need SATB handling, but it doesn't hurt to put this into place for later anyway. Roman > Also, I wonder if we need to deal with CLDG roots here. It seems simpler > to only do JNIHandles, which puts in a lot of required infrastructure > into place. Then we'd also add concurrent marking of JNIHandles and call > that part done. And then we shall probably add weak handles, and with > this we have a basis on which to build CLDG processing. What do you think? > > Roman > >> Breaking out Suspendible workers changes to JDK-8225813 [1] >> >> Updated webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ >> >> Reran hotspot_gc_shenandoah tests (fastdebug and release) >> >> Thanks, >> >> -Zhengyu >> >> >> [1] https://bugs.openjdk.java.net/browse/JDK-8225813 >> >> >> >> On 6/14/19 3:00 PM, Roman Kennke wrote: >>> Maybe makes sense to also break out the suspendible workers part? >>> >>> Roman >>> >>> >>> Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : >>> >>> ??? So, is this a review? >>> >>> ??? Thanks, >>> >>> ??? -Zhengyu >>> >>> ??? On 6/14/19 10:25 AM, Roman Kennke wrote: >>> >>> ??????? In this case we're good. >>> ??????? Roman >>> >>> ??????? Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu >>> : >>> >>> ??????? Hi Roman, >>> >>> ??????? Could you please take a look (Roland's comments) or if the CR is >>> ??????? accurate? >>> >>> ??????? https://bugs.openjdk.java.net/browse/JDK-8225718 >>> >>> ??????? Thanks, >>> >>> ??????? -Zhengyu >>> >>> ??????? On 6/12/19 3:11 PM, Roman Kennke wrote: >>> >>> ??????? IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to >>> ??????? getClass() >>> ??????? intrinsic, which loads and unwraps the Class object from an obj >>> ??????? via the >>> ??????? Klass*. If the Klass* -> mirror reference is part of the CLDG >>> ??????? roots (I >>> ??????? don't know if that is the case), then you're gonna need the C1 >>> ??????? and C2 >>> ??????? barriers for concurrent evacuation of CLDG roots, otherwise you >>> ??????? might >>> ??????? leak from-space oops (the Class objects) in the getClass() >>> ??????? intrinsics. >>> >>> >>> ??????? Roman >>> >>> ??????? Hi Roman, >>> >>> ??????? This patch does not deal with class unloading, it is still >>> ??????? done at final >>> ??????? mark pause. What it does, is to move evacuate/update refs in >>> ??????? CLDs from >>> ??????? SH::evacuate_and_update_roots() to concurrent phase, and at >>> ??????? this point, >>> ??????? they are strongly reachable. >>> >>> ??????? I will put this through more tests. >>> >>> ??????? Thanks, >>> >>> ??????? -Zhengyu >>> >>> >>> >>> ??????? On 6/12/19 1:44 PM, Roman Kennke wrote: >>> >>> ??????? I suspect you're gonna need the C1 and C2 IN_NATIVE >>> ??????? barriers, esp. for >>> ??????? the CLDG roots. Should be relatively easy to wire up the >>> ??????? LRB barriers >>> ??????? there (probably ask shade or roland). It will be more >>> ??????? complex to do the >>> ??????? other parts and return NULL on unreachable objects, but >>> ??????? this is not >>> ??????? needed yet. When we do, we should probably just make it >>> ??????? call out to >>> ??????? runtime. >>> >>> ??????? Roman >>> >>> ??????? This is the last sub task of JDK-8225534 [1], that >>> ??????? moves evacuation of >>> ??????? JNIHandles and Class Loader Data into concurrent >>> ??????? phase. This is the >>> ??????? first step that moves some root processing into >>> ??????? concurrent phase, and >>> ??????? this step can be backported to the releases that >>> ??????? don't support nmethod >>> ??????? barrier. >>> >>> ??????? 1. Concurrent CLDG root evacuation can not run >>> ??????? through safepoints, where >>> ??????? there may also perform CLDG walk, e.g. heap >>> ??????? iteration. So it requires >>> ??????? suspendible workers always on, therefore, >>> ??????? ShenandoahSuspendibleWorkers >>> ??????? flag is removed, along with related test cases. >>> ??????? There are many trivial >>> ??????? changes just because of this flag. >>> >>> ??????? 2. A new concurrent phase "concurrent roots" is >>> ??????? added to perform >>> ??????? concurrent JNI and CLDG root evacuation. In Next >>> ??????? step, it will also >>> ??????? perform concurrent class unloading and nmethod cleanup. >>> >>> ??????? 3) This patch does not address Traversal GC. >>> >>> >>> ??????? Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >>> ??????? Webrev: >>> ??????? http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >>> >>> ??????? Test: >>> ???????? ?? hotspot_gc_shenandoah (fastdebug and release) >>> >>> >>> ??????? [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >>> >>> ??????? Thanks, >>> >>> ??????? -Zhengyu >>> >>> >>> >>> >>> ??????? -- ??????? Diese Nachricht wurde von meinem Android-Ger?t mit >>> K-9 Mail >>> ??????? gesendet. >>> >>> >>> --? >>> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. > From zgu at redhat.com Mon Jun 17 12:44:31 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Mon, 17 Jun 2019 08:44:31 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> Message-ID: <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> Hi Roman, On 6/17/19 4:55 AM, Roman Kennke wrote: > Also, I wonder if we need to deal with CLDG roots here. It seems simpler > to only do JNIHandles, which puts in a lot of required infrastructure > into place. Then we'd also add concurrent marking of JNIHandles and call > that part done. And then we shall probably add weak handles, and with > this we have a basis on which to build CLDG processing. What do you think? I am not sure what's your argument here. The purpose of its main task (JDK-8225534) is to lay stepping stones for concurrent class unloading, and I break out this part for backport purpose, as stated in CR, for the releases that do not have nmethod barrier infrastructure (pre JDK13). Once we introduce nmethod barrier, the code starts to diverge, so I want to put nmethod barrier independent code under this main CR, probably a handful of followups. Make senses? Adding weak handles, is quite straight forward, but let's do it in followup CR. If you want to further break down this changeset into two, I am fine with that. This part of changes is stable. I ran specJVM and specJBB with -XX:+ClassUnloadingWithConcurrentMark -XX:ShenandoahUnloadClassesFrequency=1 Thanks, -Zhengyu > > Roman > >> Breaking out Suspendible workers changes to JDK-8225813 [1] >> >> Updated webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ >> >> Reran hotspot_gc_shenandoah tests (fastdebug and release) >> >> Thanks, >> >> -Zhengyu >> >> >> [1] https://bugs.openjdk.java.net/browse/JDK-8225813 >> >> >> >> On 6/14/19 3:00 PM, Roman Kennke wrote: >>> Maybe makes sense to also break out the suspendible workers part? >>> >>> Roman >>> >>> >>> Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : >>> >>> ??? So, is this a review? >>> >>> ??? Thanks, >>> >>> ??? -Zhengyu >>> >>> ??? On 6/14/19 10:25 AM, Roman Kennke wrote: >>> >>> ??????? In this case we're good. >>> ??????? Roman >>> >>> ??????? Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu >>> : >>> >>> ??????? Hi Roman, >>> >>> ??????? Could you please take a look (Roland's comments) or if the CR is >>> ??????? accurate? >>> >>> ??????? https://bugs.openjdk.java.net/browse/JDK-8225718 >>> >>> ??????? Thanks, >>> >>> ??????? -Zhengyu >>> >>> ??????? On 6/12/19 3:11 PM, Roman Kennke wrote: >>> >>> ??????? IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to >>> ??????? getClass() >>> ??????? intrinsic, which loads and unwraps the Class object from an obj >>> ??????? via the >>> ??????? Klass*. If the Klass* -> mirror reference is part of the CLDG >>> ??????? roots (I >>> ??????? don't know if that is the case), then you're gonna need the C1 >>> ??????? and C2 >>> ??????? barriers for concurrent evacuation of CLDG roots, otherwise you >>> ??????? might >>> ??????? leak from-space oops (the Class objects) in the getClass() >>> ??????? intrinsics. >>> >>> >>> ??????? Roman >>> >>> ??????? Hi Roman, >>> >>> ??????? This patch does not deal with class unloading, it is still >>> ??????? done at final >>> ??????? mark pause. What it does, is to move evacuate/update refs in >>> ??????? CLDs from >>> ??????? SH::evacuate_and_update_roots() to concurrent phase, and at >>> ??????? this point, >>> ??????? they are strongly reachable. >>> >>> ??????? I will put this through more tests. >>> >>> ??????? Thanks, >>> >>> ??????? -Zhengyu >>> >>> >>> >>> ??????? On 6/12/19 1:44 PM, Roman Kennke wrote: >>> >>> ??????? I suspect you're gonna need the C1 and C2 IN_NATIVE >>> ??????? barriers, esp. for >>> ??????? the CLDG roots. Should be relatively easy to wire up the >>> ??????? LRB barriers >>> ??????? there (probably ask shade or roland). It will be more >>> ??????? complex to do the >>> ??????? other parts and return NULL on unreachable objects, but >>> ??????? this is not >>> ??????? needed yet. When we do, we should probably just make it >>> ??????? call out to >>> ??????? runtime. >>> >>> ??????? Roman >>> >>> ??????? This is the last sub task of JDK-8225534 [1], that >>> ??????? moves evacuation of >>> ??????? JNIHandles and Class Loader Data into concurrent >>> ??????? phase. This is the >>> ??????? first step that moves some root processing into >>> ??????? concurrent phase, and >>> ??????? this step can be backported to the releases that >>> ??????? don't support nmethod >>> ??????? barrier. >>> >>> ??????? 1. Concurrent CLDG root evacuation can not run >>> ??????? through safepoints, where >>> ??????? there may also perform CLDG walk, e.g. heap >>> ??????? iteration. So it requires >>> ??????? suspendible workers always on, therefore, >>> ??????? ShenandoahSuspendibleWorkers >>> ??????? flag is removed, along with related test cases. >>> ??????? There are many trivial >>> ??????? changes just because of this flag. >>> >>> ??????? 2. A new concurrent phase "concurrent roots" is >>> ??????? added to perform >>> ??????? concurrent JNI and CLDG root evacuation. In Next >>> ??????? step, it will also >>> ??????? perform concurrent class unloading and nmethod cleanup. >>> >>> ??????? 3) This patch does not address Traversal GC. >>> >>> >>> ??????? Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >>> ??????? Webrev: >>> ??????? http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >>> >>> ??????? Test: >>> ???????? ?? hotspot_gc_shenandoah (fastdebug and release) >>> >>> >>> ??????? [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >>> >>> ??????? Thanks, >>> >>> ??????? -Zhengyu >>> >>> >>> >>> >>> ??????? -- ??????? Diese Nachricht wurde von meinem Android-Ger?t mit >>> K-9 Mail >>> ??????? gesendet. >>> >>> >>> -- >>> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. > From zgu at redhat.com Mon Jun 17 12:48:17 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Mon, 17 Jun 2019 08:48:17 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: <6fed21a2-26d2-50af-daea-95ada4ea646c@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <6fed21a2-26d2-50af-daea-95ada4ea646c@redhat.com> Message-ID: On 6/17/19 6:57 AM, Roman Kennke wrote: > I am not totally sure, but I don't think JNIHandles need extra handling > for cleaning, do they? > > Also, concurrent marking of JNIHandles is probably easy because they are > immutable (not sure, please check). IOW, strictly speaking they wouldn't > need SATB handling, but it doesn't hurt to put this into place for later > anyway. I am confused here. This CR only moves evacuation of JNIHandles into concurrent phase, no marking involved. What do I miss? Thanks, -Zhengyu > > Roman > >> Also, I wonder if we need to deal with CLDG roots here. It seems simpler >> to only do JNIHandles, which puts in a lot of required infrastructure >> into place. Then we'd also add concurrent marking of JNIHandles and call >> that part done. And then we shall probably add weak handles, and with >> this we have a basis on which to build CLDG processing. What do you think? >> >> Roman >> >>> Breaking out Suspendible workers changes to JDK-8225813 [1] >>> >>> Updated webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ >>> >>> Reran hotspot_gc_shenandoah tests (fastdebug and release) >>> >>> Thanks, >>> >>> -Zhengyu >>> >>> >>> [1] https://bugs.openjdk.java.net/browse/JDK-8225813 >>> >>> >>> >>> On 6/14/19 3:00 PM, Roman Kennke wrote: >>>> Maybe makes sense to also break out the suspendible workers part? >>>> >>>> Roman >>>> >>>> >>>> Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : >>>> >>>> ??? So, is this a review? >>>> >>>> ??? Thanks, >>>> >>>> ??? -Zhengyu >>>> >>>> ??? On 6/14/19 10:25 AM, Roman Kennke wrote: >>>> >>>> ??????? In this case we're good. >>>> ??????? Roman >>>> >>>> ??????? Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu >>>> : >>>> >>>> ??????? Hi Roman, >>>> >>>> ??????? Could you please take a look (Roland's comments) or if the CR is >>>> ??????? accurate? >>>> >>>> ??????? https://bugs.openjdk.java.net/browse/JDK-8225718 >>>> >>>> ??????? Thanks, >>>> >>>> ??????? -Zhengyu >>>> >>>> ??????? On 6/12/19 3:11 PM, Roman Kennke wrote: >>>> >>>> ??????? IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied to >>>> ??????? getClass() >>>> ??????? intrinsic, which loads and unwraps the Class object from an obj >>>> ??????? via the >>>> ??????? Klass*. If the Klass* -> mirror reference is part of the CLDG >>>> ??????? roots (I >>>> ??????? don't know if that is the case), then you're gonna need the C1 >>>> ??????? and C2 >>>> ??????? barriers for concurrent evacuation of CLDG roots, otherwise you >>>> ??????? might >>>> ??????? leak from-space oops (the Class objects) in the getClass() >>>> ??????? intrinsics. >>>> >>>> >>>> ??????? Roman >>>> >>>> ??????? Hi Roman, >>>> >>>> ??????? This patch does not deal with class unloading, it is still >>>> ??????? done at final >>>> ??????? mark pause. What it does, is to move evacuate/update refs in >>>> ??????? CLDs from >>>> ??????? SH::evacuate_and_update_roots() to concurrent phase, and at >>>> ??????? this point, >>>> ??????? they are strongly reachable. >>>> >>>> ??????? I will put this through more tests. >>>> >>>> ??????? Thanks, >>>> >>>> ??????? -Zhengyu >>>> >>>> >>>> >>>> ??????? On 6/12/19 1:44 PM, Roman Kennke wrote: >>>> >>>> ??????? I suspect you're gonna need the C1 and C2 IN_NATIVE >>>> ??????? barriers, esp. for >>>> ??????? the CLDG roots. Should be relatively easy to wire up the >>>> ??????? LRB barriers >>>> ??????? there (probably ask shade or roland). It will be more >>>> ??????? complex to do the >>>> ??????? other parts and return NULL on unreachable objects, but >>>> ??????? this is not >>>> ??????? needed yet. When we do, we should probably just make it >>>> ??????? call out to >>>> ??????? runtime. >>>> >>>> ??????? Roman >>>> >>>> ??????? This is the last sub task of JDK-8225534 [1], that >>>> ??????? moves evacuation of >>>> ??????? JNIHandles and Class Loader Data into concurrent >>>> ??????? phase. This is the >>>> ??????? first step that moves some root processing into >>>> ??????? concurrent phase, and >>>> ??????? this step can be backported to the releases that >>>> ??????? don't support nmethod >>>> ??????? barrier. >>>> >>>> ??????? 1. Concurrent CLDG root evacuation can not run >>>> ??????? through safepoints, where >>>> ??????? there may also perform CLDG walk, e.g. heap >>>> ??????? iteration. So it requires >>>> ??????? suspendible workers always on, therefore, >>>> ??????? ShenandoahSuspendibleWorkers >>>> ??????? flag is removed, along with related test cases. >>>> ??????? There are many trivial >>>> ??????? changes just because of this flag. >>>> >>>> ??????? 2. A new concurrent phase "concurrent roots" is >>>> ??????? added to perform >>>> ??????? concurrent JNI and CLDG root evacuation. In Next >>>> ??????? step, it will also >>>> ??????? perform concurrent class unloading and nmethod cleanup. >>>> >>>> ??????? 3) This patch does not address Traversal GC. >>>> >>>> >>>> ??????? Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >>>> ??????? Webrev: >>>> ??????? http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >>>> >>>> ??????? Test: >>>> ???????? ?? hotspot_gc_shenandoah (fastdebug and release) >>>> >>>> >>>> ??????? [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >>>> >>>> ??????? Thanks, >>>> >>>> ??????? -Zhengyu >>>> >>>> >>>> >>>> >>>> ??????? -- ??????? Diese Nachricht wurde von meinem Android-Ger?t mit >>>> K-9 Mail >>>> ??????? gesendet. >>>> >>>> >>>> -- >>>> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. >> > From rkennke at redhat.com Mon Jun 17 13:20:15 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 17 Jun 2019 15:20:15 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles and CLDG roots In-Reply-To: <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> Message-ID: No worries, I am only thinking out loud ;-) I am thinking of broader features, which appear to be JNI handles, weak stuff (which overlaps with JNI handles via the weak handles), class unloading and reference processing. Is JNI handles needed for class unloading? If not, maybe split out one or the other? It appears to me that implementing JNI handles goes better with also implementing weak handles? Ultimately it's up to you. The other stuff I mentioned was only stuff that came up in my mind which would be needed for fully concurrent JNI handles, but not related to CLDG. Roman Roman Am 17. Juni 2019 14:44:31 MESZ schrieb Zhengyu Gu : >Hi Roman, > >On 6/17/19 4:55 AM, Roman Kennke wrote: >> Also, I wonder if we need to deal with CLDG roots here. It seems >simpler >> to only do JNIHandles, which puts in a lot of required infrastructure >> into place. Then we'd also add concurrent marking of JNIHandles and >call >> that part done. And then we shall probably add weak handles, and with >> this we have a basis on which to build CLDG processing. What do you >think? > >I am not sure what's your argument here. The purpose of its main task >(JDK-8225534) is to lay stepping stones for concurrent class unloading, > >and I break out this part for backport purpose, as stated in CR, for >the >releases that do not have nmethod barrier infrastructure (pre JDK13). >Once we introduce nmethod barrier, the code starts to diverge, so I >want >to put nmethod barrier independent code under this main CR, probably a >handful of followups. Make senses? > >Adding weak handles, is quite straight forward, but let's do it in >followup CR. If you want to further break down this changeset into two, > >I am fine with that. > >This part of changes is stable. I ran specJVM and specJBB with >-XX:+ClassUnloadingWithConcurrentMark >-XX:ShenandoahUnloadClassesFrequency=1 > >Thanks, > >-Zhengyu > >> >> Roman >> >>> Breaking out Suspendible workers changes to JDK-8225813 [1] >>> >>> Updated webrev: >http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ >>> >>> Reran hotspot_gc_shenandoah tests (fastdebug and release) >>> >>> Thanks, >>> >>> -Zhengyu >>> >>> >>> [1] https://bugs.openjdk.java.net/browse/JDK-8225813 >>> >>> >>> >>> On 6/14/19 3:00 PM, Roman Kennke wrote: >>>> Maybe makes sense to also break out the suspendible workers part? >>>> >>>> Roman >>>> >>>> >>>> Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu : >>>> >>>> ??? So, is this a review? >>>> >>>> ??? Thanks, >>>> >>>> ??? -Zhengyu >>>> >>>> ??? On 6/14/19 10:25 AM, Roman Kennke wrote: >>>> >>>> ??????? In this case we're good. >>>> ??????? Roman >>>> >>>> ??????? Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu >>>> : >>>> >>>> ??????? Hi Roman, >>>> >>>> ??????? Could you please take a look (Roland's comments) or if the >CR is >>>> ??????? accurate? >>>> >>>> ??????? https://bugs.openjdk.java.net/browse/JDK-8225718 >>>> >>>> ??????? Thanks, >>>> >>>> ??????? -Zhengyu >>>> >>>> ??????? On 6/12/19 3:11 PM, Roman Kennke wrote: >>>> >>>> ??????? IIRC (!) the IN_NATIVE barriers in C1 and C2 are applied >to >>>> ??????? getClass() >>>> ??????? intrinsic, which loads and unwraps the Class object from >an obj >>>> ??????? via the >>>> ??????? Klass*. If the Klass* -> mirror reference is part of the >CLDG >>>> ??????? roots (I >>>> ??????? don't know if that is the case), then you're gonna need >the C1 >>>> ??????? and C2 >>>> ??????? barriers for concurrent evacuation of CLDG roots, >otherwise you >>>> ??????? might >>>> ??????? leak from-space oops (the Class objects) in the getClass() >>>> ??????? intrinsics. >>>> >>>> >>>> ??????? Roman >>>> >>>> ??????? Hi Roman, >>>> >>>> ??????? This patch does not deal with class unloading, it is still >>>> ??????? done at final >>>> ??????? mark pause. What it does, is to move evacuate/update refs >in >>>> ??????? CLDs from >>>> ??????? SH::evacuate_and_update_roots() to concurrent phase, and >at >>>> ??????? this point, >>>> ??????? they are strongly reachable. >>>> >>>> ??????? I will put this through more tests. >>>> >>>> ??????? Thanks, >>>> >>>> ??????? -Zhengyu >>>> >>>> >>>> >>>> ??????? On 6/12/19 1:44 PM, Roman Kennke wrote: >>>> >>>> ??????? I suspect you're gonna need the C1 and C2 IN_NATIVE >>>> ??????? barriers, esp. for >>>> ??????? the CLDG roots. Should be relatively easy to wire up the >>>> ??????? LRB barriers >>>> ??????? there (probably ask shade or roland). It will be more >>>> ??????? complex to do the >>>> ??????? other parts and return NULL on unreachable objects, but >>>> ??????? this is not >>>> ??????? needed yet. When we do, we should probably just make it >>>> ??????? call out to >>>> ??????? runtime. >>>> >>>> ??????? Roman >>>> >>>> ??????? This is the last sub task of JDK-8225534 [1], that >>>> ??????? moves evacuation of >>>> ??????? JNIHandles and Class Loader Data into concurrent >>>> ??????? phase. This is the >>>> ??????? first step that moves some root processing into >>>> ??????? concurrent phase, and >>>> ??????? this step can be backported to the releases that >>>> ??????? don't support nmethod >>>> ??????? barrier. >>>> >>>> ??????? 1. Concurrent CLDG root evacuation can not run >>>> ??????? through safepoints, where >>>> ??????? there may also perform CLDG walk, e.g. heap >>>> ??????? iteration. So it requires >>>> ??????? suspendible workers always on, therefore, >>>> ??????? ShenandoahSuspendibleWorkers >>>> ??????? flag is removed, along with related test cases. >>>> ??????? There are many trivial >>>> ??????? changes just because of this flag. >>>> >>>> ??????? 2. A new concurrent phase "concurrent roots" is >>>> ??????? added to perform >>>> ??????? concurrent JNI and CLDG root evacuation. In Next >>>> ??????? step, it will also >>>> ??????? perform concurrent class unloading and nmethod cleanup. >>>> >>>> ??????? 3) This patch does not address Traversal GC. >>>> >>>> >>>> ??????? Bug: https://bugs.openjdk.java.net/browse/JDK-8225582 >>>> ??????? Webrev: >>>> ??????? http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >>>> >>>> ??????? Test: >>>> ???????? ?? hotspot_gc_shenandoah (fastdebug and release) >>>> >>>> >>>> ??????? [1] https://bugs.openjdk.java.net/browse/JDK-8225582 >>>> >>>> ??????? Thanks, >>>> >>>> ??????? -Zhengyu >>>> >>>> >>>> >>>> >>>> ??????? -- ??????? Diese Nachricht wurde von meinem Android-Ger?t >mit >>>> K-9 Mail >>>> ??????? gesendet. >>>> >>>> >>>> -- >>>> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail >gesendet. >> -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Mon Jun 17 14:29:34 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Mon, 17 Jun 2019 10:29:34 -0400 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: <7598a42b-59be-f3d1-f42a-b10922190259@redhat.com> References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> <79d4e6d9-f21d-7085-99ab-13dc5cd923a3@redhat.com> <7598a42b-59be-f3d1-f42a-b10922190259@redhat.com> Message-ID: On 6/16/19 3:20 PM, Roman Kennke wrote: > BTW, *if* we claim CLDs in heap-iteration we must change/fix it, because > it'd be a bug: if heap-iteration would happen during marking, and it > claims all the CLDs, then subsequent marking would fail to mark through > those CLDs. Yes, I intent to fix this, so that we don't have to enforce suspendible workers for pre-JDK13 releases. Also, I moved this subtask under concurrent class unloading (JDK-8226241) and will file another CR to address this and concurrent CLDG evacuation, as I narrowed JDK-8225534 just for JNIHandles and infrastructure. > > Also, we should not neglect Traversal GC too much. We want to stabilize > Traversal GC and get it to feature parity with conc-mark-GC. Ideally we > would mirror whatever we do in conc-mark to traversal GC ASAP. It's ok > to let it slip for a little now, I will take care of it when I'm back > from PTO. This CR does not address traversal, does not mean will not. We do want changeset relative small, right? -Zhengyu > > Roman > >> On 6/16/19 7:27 AM, Roman Kennke wrote: >>> Hi Zhengyu, >>> >>> So as far as I can see, we are looking at 2 potential issues: >>> >>> - Non-GC safepoint work might use our GC workers. This would only >>> possibly be heap-iteration, and as far as I remember, heap-iteration is >>> single-threaded and uses the VMThread. Besides: if this would happen, >>> we'd already have the problem. I don't think this is the case. >>> (Safepoint cleanup has this problem, and we use a separate thread pool >>> for precisely this reason.) >> >> Right. It is single-threaded. >> >>> >>> - Non-GC safepoint work needs to look at GC roots, and concurrent >>> processing of GC roots might conflict with that. >>> >>> As far as I see it, this problem could also be solved by employing the >>> correct barriers. I believe this only affects heap-iteration. So when >>> heap-iteration scans the GC roots (during conc-evac), it needs to do the >>> LRB to avoid exposing from-space-objects in the iteration. Later on, >>> when we also want to do concurrent cleanup, it also needs to filter >>> unreachable objects by not seeding the iteration with objects that are >>> unreachable (as per the marking bitmap, not the aux bitmap!). >>> >> Our current solution is to use the same roots for heap iteration, as >> current GC cycle, so both see the same live object graph. >> >> At this phase, the problems I saw, I think, can be solved with >> additional cares to avoid suspending workers, e.g. not clear claimed >> flag for CLDG and using _claim_none to for heap iteration, etc. but I >> don't think it worth the efforts. >> >> This change is inavoidable for concurrent class unloading and concurrent >> code root processing: >> >> - SystemDictionary::do_unloading(), by design, can not run through >> safepoints (JDK-8222223), >> >> - Some CLDG related VM operations, such as ClassLoaderStatsOperation and >> ClassLoaderHierarchyOperation are no longer safe, if class unloading run >> through them. >> >> - I suspect some IC related also no longer safe. >> >> -Zhengyu >> >> >> >> >>> I might be missing something there? >>> >>> The reason why I'm looking at avoiding stopping GC threads at safepoints >>> is that it may introduce additional latencies when bringing Java threads >>> to (non-GC) safepoints like biased locking or deopt, by having them wait >>> for GC work (especially when we have non-interruptible not-quite-short >>> GC work like GC roots processing). >>> >>> Roman >>> >>>> On 6/15/19 9:26 PM, Zhengyu Gu wrote: >>>>> On 6/15/19 3:35 PM, Roman Kennke wrote: >>>>>> Can you give a little bit of explanation why workers need to be >>>>>> suspended at safepoints for concurrent root processing? >>>>> >>>>> Concurrent processing uses workers and safepoint parallel task also >>>>> utilizes workers, and shenandoah shares workers, so they can not >>>>> overlap. >>>> >>>> Should be more articulate. I don't mean GC safepoint parallel tasks, >>>> which can not overlap. But the tasks, such as, heap iteration that might >>>> utilize workers. >>>> >>>> Also, heap iteration walks CLDG at a safepoint, that may interfere CLDG >>>> walking during concurrent CLDG evacuation. >>>> >>>> -Zhengyu >>>> >>>>> >>>>> >>>>> -Zhengyu >>>>> >>>>>> >>>>>> Other than that, the patch looks good. >>>>>> >>>>>> Roman >>>>>> >>>>>>> Please review this patch that makes suspendible workers required, >>>>>>> instead of optional, and obsoletes the corresponding flag. >>>>>>> >>>>>>> Suspendible workers are required for concurrent root processing. >>>>>>> >>>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >>>>>>> Webrev: >>>>>>> http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >>>>>>> >>>>>>> Test: >>>>>>> ??? hotspot_gc_shenandoah (fastdebug and release) >>>>>>> >>>>>>> Thanks, >>>>>>> >>>>>>> -Zhengyu >>>>>> >>> > From rkennke at redhat.com Mon Jun 17 14:32:50 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 17 Jun 2019 16:32:50 +0200 Subject: RFR(S) 8225813: Shenandoah: Obsolete ShenandoahSuspendibleWorkers flag, as suspendible workers are required In-Reply-To: References: <678fb022-5281-d5fc-84fa-06830a62b754@redhat.com> <9799fb39-0366-ecb2-7793-c657e60314fd@redhat.com> <43112762-a517-2956-d0e1-b5102ece4282@redhat.com> <79d4e6d9-f21d-7085-99ab-13dc5cd923a3@redhat.com> <7598a42b-59be-f3d1-f42a-b10922190259@redhat.com> Message-ID: Hi Zhengyu, Am 17. Juni 2019 16:29:34 MESZ schrieb Zhengyu Gu : >On 6/16/19 3:20 PM, Roman Kennke wrote: >> BTW, *if* we claim CLDs in heap-iteration we must change/fix it, >because >> it'd be a bug: if heap-iteration would happen during marking, and it >> claims all the CLDs, then subsequent marking would fail to mark >through >> those CLDs. > >Yes, I intent to fix this, so that we don't have to enforce suspendible > >workers for pre-JDK13 releases. Also, I moved this subtask under >concurrent class unloading (JDK-8226241) and will file another CR to >address this and concurrent CLDG evacuation, as I narrowed JDK-8225534 >just for JNIHandles and infrastructure. Great! Thanks! >> >> Also, we should not neglect Traversal GC too much. We want to >stabilize >> Traversal GC and get it to feature parity with conc-mark-GC. Ideally >we >> would mirror whatever we do in conc-mark to traversal GC ASAP. It's >ok >> to let it slip for a little now, I will take care of it when I'm back >> from PTO. > >This CR does not address traversal, does not mean will not. We do want >changeset relative small, right? Yes, it's OK. We'll take care of it later. Thanks, Roman >-Zhengyu > > > > >> >> Roman >> >>> On 6/16/19 7:27 AM, Roman Kennke wrote: >>>> Hi Zhengyu, >>>> >>>> So as far as I can see, we are looking at 2 potential issues: >>>> >>>> - Non-GC safepoint work might use our GC workers. This would only >>>> possibly be heap-iteration, and as far as I remember, >heap-iteration is >>>> single-threaded and uses the VMThread. Besides: if this would >happen, >>>> we'd already have the problem. I don't think this is the case. >>>> (Safepoint cleanup has this problem, and we use a separate thread >pool >>>> for precisely this reason.) >>> >>> Right. It is single-threaded. >>> >>>> >>>> - Non-GC safepoint work needs to look at GC roots, and concurrent >>>> processing of GC roots might conflict with that. >>>> >>>> As far as I see it, this problem could also be solved by employing >the >>>> correct barriers. I believe this only affects heap-iteration. So >when >>>> heap-iteration scans the GC roots (during conc-evac), it needs to >do the >>>> LRB to avoid exposing from-space-objects in the iteration. Later >on, >>>> when we also want to do concurrent cleanup, it also needs to filter >>>> unreachable objects by not seeding the iteration with objects that >are >>>> unreachable (as per the marking bitmap, not the aux bitmap!). >>>> >>> Our current solution is to use the same roots for heap iteration, as >>> current GC cycle, so both see the same live object graph. >>> >>> At this phase, the problems I saw, I think, can be solved with >>> additional cares to avoid suspending workers, e.g. not clear claimed >>> flag for CLDG and using _claim_none to for heap iteration, etc. but >I >>> don't think it worth the efforts. >>> >>> This change is inavoidable for concurrent class unloading and >concurrent >>> code root processing: >>> >>> - SystemDictionary::do_unloading(), by design, can not run through >>> safepoints (JDK-8222223), >>> >>> - Some CLDG related VM operations, such as ClassLoaderStatsOperation >and >>> ClassLoaderHierarchyOperation are no longer safe, if class unloading >run >>> through them. >>> >>> - I suspect some IC related also no longer safe. >>> >>> -Zhengyu >>> >>> >>> >>> >>>> I might be missing something there? >>>> >>>> The reason why I'm looking at avoiding stopping GC threads at >safepoints >>>> is that it may introduce additional latencies when bringing Java >threads >>>> to (non-GC) safepoints like biased locking or deopt, by having them >wait >>>> for GC work (especially when we have non-interruptible >not-quite-short >>>> GC work like GC roots processing). >>>> >>>> Roman >>>> >>>>> On 6/15/19 9:26 PM, Zhengyu Gu wrote: >>>>>> On 6/15/19 3:35 PM, Roman Kennke wrote: >>>>>>> Can you give a little bit of explanation why workers need to be >>>>>>> suspended at safepoints for concurrent root processing? >>>>>> >>>>>> Concurrent processing uses workers and safepoint parallel task >also >>>>>> utilizes workers, and shenandoah shares workers, so they can not >>>>>> overlap. >>>>> >>>>> Should be more articulate. I don't mean GC safepoint parallel >tasks, >>>>> which can not overlap. But the tasks, such as, heap iteration that >might >>>>> utilize workers. >>>>> >>>>> Also, heap iteration walks CLDG at a safepoint, that may interfere >CLDG >>>>> walking during concurrent CLDG evacuation. >>>>> >>>>> -Zhengyu >>>>> >>>>>> >>>>>> >>>>>> -Zhengyu >>>>>> >>>>>>> >>>>>>> Other than that, the patch looks good. >>>>>>> >>>>>>> Roman >>>>>>> >>>>>>>> Please review this patch that makes suspendible workers >required, >>>>>>>> instead of optional, and obsoletes the corresponding flag. >>>>>>>> >>>>>>>> Suspendible workers are required for concurrent root >processing. >>>>>>>> >>>>>>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225813 >>>>>>>> Webrev: >>>>>>>> >http://cr.openjdk.java.net/~zgu/JDK-8225813/webrev.00/index.html >>>>>>>> >>>>>>>> Test: >>>>>>>> ??? hotspot_gc_shenandoah (fastdebug and release) >>>>>>>> >>>>>>>> Thanks, >>>>>>>> >>>>>>>> -Zhengyu >>>>>>> >>>> >> -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Mon Jun 17 19:15:14 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Mon, 17 Jun 2019 15:15:14 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> Message-ID: <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> Narrowed CR to only evacuating JNIHandles. Updated Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.02/ Reran hotspot_gc_shenandoah (fastdebug and release) Okay now? Thanks, -Zhengyu On 6/17/19 9:20 AM, Roman Kennke wrote: > No worries, I am only thinking out loud ;-) > > I am thinking of broader features, which appear to be JNI handles, weak > stuff (which overlaps with JNI handles via the weak handles), class > unloading and reference processing. > > Is JNI handles needed for class unloading? If not, maybe split out one > or the other? It appears to me that implementing JNI handles goes better > with also implementing weak handles? Ultimately it's up to you. > > The other stuff I mentioned was only stuff that came up in my mind which > would be needed for fully concurrent JNI handles, but not related to CLDG. > > Roman > > > Roman > > > Am 17. Juni 2019 14:44:31 MESZ schrieb Zhengyu Gu : > > Hi Roman, > > On 6/17/19 4:55 AM, Roman Kennke wrote: > > Also, I wonder if we need to deal with CLDG roots here. It seems > simpler > to only do JNIHandles, which puts in a lot of required > infrastructure > into place. Then we'd also add concurrent marking of JNIHandles > and call > that part done. And then we shall probably add weak handles, and > with > this we have a basis on which to build CLDG processing. What do > you think? > > > I am not sure what's your argument here. The purpose of its main task > (JDK-8225534) is to lay stepping stones for concurrent class unloading, > and I break out this part for backport purpose, as stated in CR, for the > releases that do not have nmethod barrier infrastructure (pre JDK13). > Once we introduce nmethod barrier, the code starts to diverge, so I want > to put nmethod barrier independent code under this main CR, probably a > handful of followups. Make senses? > > Adding weak handles, is quite straight forward, but let's do it in > followup CR. If you want to further break down this changeset into two, > I am fine with that. > > This part of changes is stable. I ran specJVM and specJBB with > -XX:+ClassUnloadingWithConcurrentMark > -XX:ShenandoahUnloadClassesFrequency=1 > > Thanks, > > -Zhengyu > > > Roman > > Breaking out Suspendible workers changes to JDK-8225813 [1] > > Updated webrev: > http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ > > Reran hotspot_gc_shenandoah tests (fastdebug and release) > > Thanks, > > -Zhengyu > > > [1] https://bugs.openjdk.java.net/browse/JDK-8225813 > > > > On 6/14/19 3:00 PM, Roman Kennke wrote: > > Maybe makes sense to also break out the suspendible > workers part? > > Roman > > > Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu > : > > ??? So, is this a review? > > ??? Thanks, > > ??? -Zhengyu > > ??? On 6/14/19 10:25 AM, Roman Kennke wrote: > > ??????? In this case we're good. > ??????? Roman > > ??????? Am 14. Juni 2019 15:27:37 MESZ schrieb Zhengyu Gu > : > > ??????? Hi Roman, > > ??????? Could you please take a look (Roland's > comments) or if the CR is > ??????? accurate? > > https://bugs.openjdk.java.net/browse/JDK-8225718 > > ??????? Thanks, > > ??????? -Zhengyu > > ??????? On 6/12/19 3:11 PM, Roman Kennke wrote: > > ??????? IIRC (!) the IN_NATIVE barriers in C1 and C2 > are applied to > ??????? getClass() > ??????? intrinsic, which loads and unwraps the Class > object from an obj > ??????? via the > ??????? Klass*. If the Klass* -> mirror reference is > part of the CLDG > ??????? roots (I > ??????? don't know if that is the case), then you're > gonna need the C1 > ??????? and C2 > ??????? barriers for concurrent evacuation of CLDG > roots, otherwise you > ??????? might > ??????? leak from-space oops (the Class objects) in the > getClass() > ??????? intrinsics. > > > ??????? Roman > > ??????? Hi Roman, > > ??????? This patch does not deal with class unloading, > it is still > ??????? done at final > ??????? mark pause. What it does, is to move > evacuate/update refs in > ??????? CLDs from > ??????? SH::evacuate_and_update_roots() to concurrent > phase, and at > ??????? this point, > ??????? they are strongly reachable. > > ??????? I will put this through more tests. > > ??????? Thanks, > > ??????? -Zhengyu > > > > ??????? On 6/12/19 1:44 PM, Roman Kennke wrote: > > ??????? I suspect you're gonna need the C1 and C2 IN_NATIVE > ??????? barriers, esp. for > ??????? the CLDG roots. Should be relatively easy to > wire up the > ??????? LRB barriers > ??????? there (probably ask shade or roland). It will > be more > ??????? complex to do the > ??????? other parts and return NULL on unreachable > objects, but > ??????? this is not > ??????? needed yet. When we do, we should probably just > make it > ??????? call out to > ??????? runtime. > > ??????? Roman > > ??????? This is the last sub task of JDK-8225534 [1], that > ??????? moves evacuation of > ??????? JNIHandles and Class Loader Data into concurrent > ??????? phase. This is the > ??????? first step that moves some root processing into > ??????? concurrent phase, and > ??????? this step can be backported to the releases that > ??????? don't support nmethod > ??????? barrier. > > ??????? 1. Concurrent CLDG root evacuation can not run > ??????? through safepoints, where > ??????? there may also perform CLDG walk, e.g. heap > ??????? iteration. So it requires > ??????? suspendible workers always on, therefore, > ??????? ShenandoahSuspendibleWorkers > ??????? flag is removed, along with related test cases. > ??????? There are many trivial > ??????? changes just because of this flag. > > ??????? 2. A new concurrent phase "concurrent roots" is > ??????? added to perform > ??????? concurrent JNI and CLDG root evacuation. In Next > ??????? step, it will also > ??????? perform concurrent class unloading and nmethod > cleanup. > > ??????? 3) This patch does not address Traversal GC. > > > ??????? Bug: > https://bugs.openjdk.java.net/browse/JDK-8225582 > ??????? Webrev: > http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ > > ??????? Test: > ???????? ?? hotspot_gc_shenandoah (fastdebug and release) > > > ??????? [1] > https://bugs.openjdk.java.net/browse/JDK-8225582 > > ??????? Thanks, > > ??????? -Zhengyu > > > > > ??????? -- ??????? Diese Nachricht wurde von meinem > Android-Ger?t mit > K-9 Mail > ??????? gesendet. > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 > Mail gesendet. > > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From rkennke at redhat.com Mon Jun 17 20:03:53 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 17 Jun 2019 22:03:53 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles In-Reply-To: <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> Message-ID: <2be0bf6e-d3b5-a370-5532-f24c30044484@redhat.com> Hi Zhengyu, > Narrowed CR to only evacuating JNIHandles. Great! > Updated Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.02/ Looks good to me. Let Aleksey please also take a look. Thank you so much! This is cool stuff! Roman > Reran hotspot_gc_shenandoah (fastdebug and release) > > Okay now? > > Thanks, > > -Zhengyu > > > > > On 6/17/19 9:20 AM, Roman Kennke wrote: >> No worries, I am only thinking out loud ;-) >> >> I am thinking of broader features, which appear to be JNI handles, >> weak stuff (which overlaps with JNI handles via the weak handles), >> class unloading and reference processing. >> >> Is JNI handles needed for class unloading? If not, maybe split out one >> or the other? It appears to me that implementing JNI handles goes >> better with also implementing weak handles? Ultimately it's up to you. >> >> The other stuff I mentioned was only stuff that came up in my mind >> which would be needed for fully concurrent JNI handles, but not >> related to CLDG. >> >> Roman >> >> >> Roman >> >> >> Am 17. Juni 2019 14:44:31 MESZ schrieb Zhengyu Gu : >> >> ??? Hi Roman, >> >> ??? On 6/17/19 4:55 AM, Roman Kennke wrote: >> >> ??????? Also, I wonder if we need to deal with CLDG roots here. It seems >> ??????? simpler >> ??????? to only do JNIHandles, which puts in a lot of required >> ??????? infrastructure >> ??????? into place. Then we'd also add concurrent marking of JNIHandles >> ??????? and call >> ??????? that part done. And then we shall probably add weak handles, and >> ??????? with >> ??????? this we have a basis on which to build CLDG processing. What do >> ??????? you think? >> >> >> ??? I am not sure what's your argument here. The purpose of its main task >> ??? (JDK-8225534) is to lay stepping stones for concurrent class >> unloading, >> ??? and I break out this part for backport purpose, as stated in CR, >> for the >> ??? releases that do not have nmethod barrier infrastructure (pre JDK13). >> ??? Once we introduce nmethod barrier, the code starts to diverge, so >> I want >> ??? to put nmethod barrier independent code under this main CR, >> probably a >> ??? handful of followups. Make senses? >> >> ??? Adding weak handles, is quite straight forward, but let's do it in >> ??? followup CR. If you want to further break down this changeset into >> two, >> ??? I am fine with that. >> >> ??? This part of changes is stable. I ran specJVM and specJBB with >> ??? -XX:+ClassUnloadingWithConcurrentMark >> ??? -XX:ShenandoahUnloadClassesFrequency=1 >> >> ??? Thanks, >> >> ??? -Zhengyu >> >> >> ??????? Roman >> >> ??????????? Breaking out Suspendible workers changes to JDK-8225813 [1] >> >> ??????????? Updated webrev: >> ??????????? http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.01/ >> >> ??????????? Reran hotspot_gc_shenandoah tests (fastdebug and release) >> >> ??????????? Thanks, >> >> ??????????? -Zhengyu >> >> >> ??????????? [1] https://bugs.openjdk.java.net/browse/JDK-8225813 >> >> >> >> ??????????? On 6/14/19 3:00 PM, Roman Kennke wrote: >> >> ??????????????? Maybe makes sense to also break out the suspendible >> ??????????????? workers part? >> >> ??????????????? Roman >> >> >> ??????????????? Am 14. Juni 2019 20:22:52 MESZ schrieb Zhengyu Gu >> ??????????????? : >> >> ???????????????? ??? So, is this a review? >> >> ???????????????? ??? Thanks, >> >> ???????????????? ??? -Zhengyu >> >> ???????????????? ??? On 6/14/19 10:25 AM, Roman Kennke wrote: >> >> ???????????????? ??????? In this case we're good. >> ???????????????? ??????? Roman >> >> ???????????????? ??????? Am 14. Juni 2019 15:27:37 MESZ schrieb >> Zhengyu Gu >> ??????????????? : >> >> ???????????????? ??????? Hi Roman, >> >> ???????????????? ??????? Could you please take a look (Roland's >> ??????????????? comments) or if the CR is >> ???????????????? ??????? accurate? >> >> ??????????????? https://bugs.openjdk.java.net/browse/JDK-8225718 >> >> ???????????????? ??????? Thanks, >> >> ???????????????? ??????? -Zhengyu >> >> ???????????????? ??????? On 6/12/19 3:11 PM, Roman Kennke wrote: >> >> ???????????????? ??????? IIRC (!) the IN_NATIVE barriers in C1 and C2 >> ??????????????? are applied to >> ???????????????? ??????? getClass() >> ???????????????? ??????? intrinsic, which loads and unwraps the Class >> ??????????????? object from an obj >> ???????????????? ??????? via the >> ???????????????? ??????? Klass*. If the Klass* -> mirror reference is >> ??????????????? part of the CLDG >> ???????????????? ??????? roots (I >> ???????????????? ??????? don't know if that is the case), then you're >> ??????????????? gonna need the C1 >> ???????????????? ??????? and C2 >> ???????????????? ??????? barriers for concurrent evacuation of CLDG >> ??????????????? roots, otherwise you >> ???????????????? ??????? might >> ???????????????? ??????? leak from-space oops (the Class objects) in the >> ??????????????? getClass() >> ???????????????? ??????? intrinsics. >> >> >> ???????????????? ??????? Roman >> >> ???????????????? ??????? Hi Roman, >> >> ???????????????? ??????? This patch does not deal with class unloading, >> ??????????????? it is still >> ???????????????? ??????? done at final >> ???????????????? ??????? mark pause. What it does, is to move >> ??????????????? evacuate/update refs in >> ???????????????? ??????? CLDs from >> ???????????????? ??????? SH::evacuate_and_update_roots() to concurrent >> ??????????????? phase, and at >> ???????????????? ??????? this point, >> ???????????????? ??????? they are strongly reachable. >> >> ???????????????? ??????? I will put this through more tests. >> >> ???????????????? ??????? Thanks, >> >> ???????????????? ??????? -Zhengyu >> >> >> >> ???????????????? ??????? On 6/12/19 1:44 PM, Roman Kennke wrote: >> >> ???????????????? ??????? I suspect you're gonna need the C1 and C2 >> IN_NATIVE >> ???????????????? ??????? barriers, esp. for >> ???????????????? ??????? the CLDG roots. Should be relatively easy to >> ??????????????? wire up the >> ???????????????? ??????? LRB barriers >> ???????????????? ??????? there (probably ask shade or roland). It will >> ??????????????? be more >> ???????????????? ??????? complex to do the >> ???????????????? ??????? other parts and return NULL on unreachable >> ??????????????? objects, but >> ???????????????? ??????? this is not >> ???????????????? ??????? needed yet. When we do, we should probably just >> ??????????????? make it >> ???????????????? ??????? call out to >> ???????????????? ??????? runtime. >> >> ???????????????? ??????? Roman >> >> ???????????????? ??????? This is the last sub task of JDK-8225534 [1], >> that >> ???????????????? ??????? moves evacuation of >> ???????????????? ??????? JNIHandles and Class Loader Data into concurrent >> ???????????????? ??????? phase. This is the >> ???????????????? ??????? first step that moves some root processing into >> ???????????????? ??????? concurrent phase, and >> ???????????????? ??????? this step can be backported to the releases that >> ???????????????? ??????? don't support nmethod >> ???????????????? ??????? barrier. >> >> ???????????????? ??????? 1. Concurrent CLDG root evacuation can not run >> ???????????????? ??????? through safepoints, where >> ???????????????? ??????? there may also perform CLDG walk, e.g. heap >> ???????????????? ??????? iteration. So it requires >> ???????????????? ??????? suspendible workers always on, therefore, >> ???????????????? ??????? ShenandoahSuspendibleWorkers >> ???????????????? ??????? flag is removed, along with related test cases. >> ???????????????? ??????? There are many trivial >> ???????????????? ??????? changes just because of this flag. >> >> ???????????????? ??????? 2. A new concurrent phase "concurrent roots" is >> ???????????????? ??????? added to perform >> ???????????????? ??????? concurrent JNI and CLDG root evacuation. In Next >> ???????????????? ??????? step, it will also >> ???????????????? ??????? perform concurrent class unloading and nmethod >> ??????????????? cleanup. >> >> ???????????????? ??????? 3) This patch does not address Traversal GC. >> >> >> ???????????????? ??????? Bug: >> ??????????????? https://bugs.openjdk.java.net/browse/JDK-8225582 >> ???????????????? ??????? Webrev: >> ??????????????? http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.00/ >> >> ???????????????? ??????? Test: >> ???????????????? ???????? ?? hotspot_gc_shenandoah (fastdebug and >> release) >> >> >> ???????????????? ??????? [1] >> ??????????????? https://bugs.openjdk.java.net/browse/JDK-8225582 >> >> ???????????????? ??????? Thanks, >> >> ???????????????? ??????? -Zhengyu >> >> >> >> >> ???????????????? ??????? -- ??????? Diese Nachricht wurde von meinem >> ??????????????? Android-Ger?t mit >> ??????????????? K-9 Mail >> ???????????????? ??????? gesendet. >> >> >> ??????????????? -- ??????????????? Diese Nachricht wurde von meinem >> Android-Ger?t mit K-9 >> ??????????????? Mail gesendet. >> >> >> >> --? >> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Tue Jun 18 16:57:43 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 18 Jun 2019 12:57:43 -0400 Subject: RFR 8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots to-space invariant In-Reply-To: <97cb2092-6a11-80f0-4257-a78f61e5d6cc@redhat.com> References: <97cb2092-6a11-80f0-4257-a78f61e5d6cc@redhat.com> Message-ID: <698f987a-7a56-0795-4d08-c1be5af8de99@redhat.com> On 6/11/19 1:21 PM, Zhengyu Gu wrote: > This patch adds a new API to Shenandoah verifier, the verifies all roots > only contain to-space references. This API should help concurrent root > processing work, to catch bad references in roots. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225573 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225573/webrev.00/8225573 Sorry, bad link. Should be: Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225573/webrev.00/ Thanks, -Zhengyu > > Test: > ? hotspot_gc_shenandoah (fastdebug and release) with -XX:+ShenandoahVerify > > Thanks, > > -Zhengyu From zgu at redhat.com Tue Jun 18 17:07:05 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 18 Jun 2019 13:07:05 -0400 Subject: RFR 8226311: Shenandoah: Concurrent evacuation of OopStorage backed weak roots Message-ID: <3c13fe6c-678e-ca93-2b39-4ae6b315427c@redhat.com> Please review this patch that moves evacuation of OopStorage backed weak roots to concurrent phase, while JVMTI and JFR weak roots are still evacuated at pauses. It is a followup of JDK-8225534 [1], where we put infrastructure for moving root evacuation to concurrent phase. Bug: https://bugs.openjdk.java.net/browse/JDK-8226311 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226311/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu [1] https://bugs.openjdk.java.net/browse/JDK-8225534 From shade at redhat.com Tue Jun 18 18:46:24 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Tue, 18 Jun 2019 20:46:24 +0200 Subject: RFR 8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots to-space invariant In-Reply-To: <698f987a-7a56-0795-4d08-c1be5af8de99@redhat.com> References: <97cb2092-6a11-80f0-4257-a78f61e5d6cc@redhat.com> <698f987a-7a56-0795-4d08-c1be5af8de99@redhat.com> Message-ID: <873e917d-6f45-212f-17a6-595a956bf925@redhat.com> On 6/18/19 6:57 PM, Zhengyu Gu wrote: > On 6/11/19 1:21 PM, Zhengyu Gu wrote: >> This patch adds a new API to Shenandoah verifier, the verifies all roots only contain to-space >> references. This API should help concurrent root processing work, to catch bad references in roots. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225573 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225573/webrev.00/8225573 > > Sorry, bad link. Should be: > > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225573/webrev.00/ Looks okay. *) The mix of SA::assert_* and SA::print_failure irritates me. I think it is cleaner to stick with one way of doing things. "assert" kinda implies in can be turned off (even though it does not in this case). For example: class ShenandoahVerifyInToSpaceClosure : public OopClosure { private: template void do_oop_work(T* p) { T o = RawAccess<>::oop_load(p); if (!CompressedOops::is_null(o)) { oop obj = CompressedOops::decode_not_null(o); ShenandoahHeap* heap = ShenandoahHeap::heap_no_check(); if (!heap->marking_context()->is_marked(obj)) { ShenandoahAsserts::print_failure(ShenandoahAsserts::_safe_all, obj, p, NULL, "Verify Roots In To-Space", "Should be marked", __FILE__, __LINE__); } if (heap->in_collection_set(obj)) { ShenandoahAsserts::print_failure(ShenandoahAsserts::_safe_all, obj, p, NULL, "Verify Roots In To-Space", "Should not be in collection set", __FILE__, __LINE__); } oop fwd = (oop) ShenandoahForwarding::get_forwardee_raw_unchecked(obj); if (!oopDesc::equals_raw(obj, fwd)) { ShenandoahAsserts::print_failure(ShenandoahAsserts::_safe_all, obj, p, NULL, "Verify Roots In To-Space", "Should not be forwarded", __FILE__, __LINE__); } } } -Aleksey From shade at redhat.com Tue Jun 18 20:18:29 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Tue, 18 Jun 2019 22:18:29 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles In-Reply-To: <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> Message-ID: On 6/17/19 9:15 PM, Zhengyu Gu wrote: > Narrowed CR to only evacuating JNIHandles. > > Updated Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.02/ I know you have updated patch in works, but here are the things that caught my eye in current patch. *) Do we really need separate shenandoahConcurrentRoots.*? I.e. is there an additional value over keeping those deciders in ShenandoahHeap, given they are accessing ShenandoahHeap anyway? *) The local var can probably be inlined, and comment be a little clearer, e.g.: Instead of: 1076 // Include concurrent roots if current cycle can not process those roots concurrently 1077 bool include_concurrent_roots = !ShenandoahConcurrentRoots::should_do_concurrent_roots(); 1078 1079 ShenandoahRootEvacuator rp(workers()->active_workers(), ShenandoahPhaseTimings::init_evac, include_concurrent_roots); Do: // If concurrent cycle cannot process concurrent roots, force their processing here, at safepoint ShenandoahRootEvacuator rp(workers()->active_workers(), ShenandoahPhaseTimings::init_evac, !ShenandoahConcurrentRoots::should_do_concurrent_roots()); *) I think it is more consistent to call it "entry_roots" and "op_roots", without "concurrent": 389 // Entry methods to normally concurrent GC operations. These set up logging, monitoring 390 // for concurrent operation. 391 void entry_reset(); 392 void entry_mark(); 393 void entry_preclean(); 394 void entry_concurrent_roots(); // <---- ere 395 void entry_cleanup(); 396 void entry_evac(); 397 void entry_updaterefs(); 415 void op_reset(); 416 void op_mark(); 417 void op_preclean(); 418 void op_concurrent_roots(); // <--- and here 419 void op_cleanup(); 420 void op_conc_evac(); 421 void op_stw_evac(); 422 void op_updaterefs(); 423 void op_traversal(); *) Can we drop default template argument, and use explicit "false" where needed? template class ShenandoahJNIHandleRoots { *) Maybe use ShenandoahSharedFlag::try_set() here? This would also give you automatic padding. Instead of this: 47 if (!_claimed && Atomic::cmpxchg(true, &_claimed, false) == false) { Do: 47 if (_claimed.try_set()) { *) New-line to separate "private" and "public" blocks here: 1588 class ShenandoahConcurrentRootsEvacUpdateTask : public AbstractGangTask { 1589 private: 1590 ShenandoahJNIHandleRoots _jni_roots; 1591 public: Thanks, -Aleksey From zgu at redhat.com Tue Jun 18 20:58:48 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 18 Jun 2019 16:58:48 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> Message-ID: Hi Aleksey, Thanks for reviewing. On 6/18/19 4:18 PM, Aleksey Shipilev wrote: > On 6/17/19 9:15 PM, Zhengyu Gu wrote: >> Narrowed CR to only evacuating JNIHandles. >> >> Updated Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.02/ > > I know you have updated patch in works, but here are the things that caught my eye in current patch. > > *) Do we really need separate shenandoahConcurrentRoots.*? I.e. is there an additional value over > keeping those deciders in ShenandoahHeap, given they are accessing ShenandoahHeap anyway? I would prefer the separation. ShenandoahConcurrentRoots is an AllStatic class, and the decision is not solely based on heap, but some other factors, especially when concurrent class unloading comes in. > > *) The local var can probably be inlined, and comment be a little clearer, e.g.: > > Instead of: > > 1076 // Include concurrent roots if current cycle can not process those roots concurrently > 1077 bool include_concurrent_roots = !ShenandoahConcurrentRoots::should_do_concurrent_roots(); > 1078 > 1079 ShenandoahRootEvacuator rp(workers()->active_workers(), ShenandoahPhaseTimings::init_evac, > include_concurrent_roots); > > Do: > > // If concurrent cycle cannot process concurrent roots, force their processing here, at safepoint > ShenandoahRootEvacuator rp(workers()->active_workers(), ShenandoahPhaseTimings::init_evac, > !ShenandoahConcurrentRoots::should_do_concurrent_roots()); > > Okay. > > *) I think it is more consistent to call it "entry_roots" and "op_roots", without "concurrent": > > 389 // Entry methods to normally concurrent GC operations. These set up logging, monitoring > 390 // for concurrent operation. > 391 void entry_reset(); > 392 void entry_mark(); > 393 void entry_preclean(); > 394 void entry_concurrent_roots(); // <---- ere > 395 void entry_cleanup(); > 396 void entry_evac(); > 397 void entry_updaterefs(); > > 415 void op_reset(); > 416 void op_mark(); > 417 void op_preclean(); > 418 void op_concurrent_roots(); // <--- and here > 419 void op_cleanup(); > 420 void op_conc_evac(); > 421 void op_stw_evac(); > 422 void op_updaterefs(); > 423 void op_traversal(); > Fixed > *) Can we drop default template argument, and use explicit "false" where needed? > > template > class ShenandoahJNIHandleRoots { > > *) Maybe use ShenandoahSharedFlag::try_set() here? This would also give you automatic padding. > > Instead of this: > > 47 if (!_claimed && Atomic::cmpxchg(true, &_claimed, false) == false) { > > Do: > > 47 if (_claimed.try_set()) { > > *) New-line to separate "private" and "public" blocks here: This is gone. For none concurrent case, should still use parallel version. http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.03_inc/ > > 1588 class ShenandoahConcurrentRootsEvacUpdateTask : public AbstractGangTask { > 1589 private: > 1590 ShenandoahJNIHandleRoots _jni_roots; > 1591 public: Fixed. Updated full webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.03/ Reran hotspot_gc_shenandoah (fastdebug and release) -Zhengyu > > Thanks, > -Aleksey > From rkennke at redhat.com Tue Jun 18 21:00:37 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 18 Jun 2019 23:00:37 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> Message-ID: <295422d5-4563-46b6-7db9-adb6d3530f1c@redhat.com> > Thanks for reviewing. > > On 6/18/19 4:18 PM, Aleksey Shipilev wrote: >> On 6/17/19 9:15 PM, Zhengyu Gu wrote: >>> Narrowed CR to only evacuating JNIHandles. >>> >>> Updated Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.02/ >> >> I know you have updated patch in works, but here are the things that >> caught my eye in current patch. >> >> *) Do we really need separate shenandoahConcurrentRoots.*? I.e. is >> there an additional value over >> keeping those deciders in ShenandoahHeap, given they are accessing >> ShenandoahHeap anyway? > > I would prefer the separation. ShenandoahConcurrentRoots is an AllStatic > class, and the decision is not solely based on heap, but some other > factors, especially when concurrent class unloading comes in. Doesn't it also help back-portability of this code? Roman From zgu at redhat.com Tue Jun 18 21:59:41 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 18 Jun 2019 17:59:41 -0400 Subject: RFR 8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots to-space invariant In-Reply-To: <873e917d-6f45-212f-17a6-595a956bf925@redhat.com> References: <97cb2092-6a11-80f0-4257-a78f61e5d6cc@redhat.com> <698f987a-7a56-0795-4d08-c1be5af8de99@redhat.com> <873e917d-6f45-212f-17a6-595a956bf925@redhat.com> Message-ID: <89afb4e9-bd5f-465e-f77f-67807b69e057@redhat.com> On 6/18/19 2:46 PM, Aleksey Shipilev wrote: > On 6/18/19 6:57 PM, Zhengyu Gu wrote: >> On 6/11/19 1:21 PM, Zhengyu Gu wrote: >>> This patch adds a new API to Shenandoah verifier, the verifies all roots only contain to-space >>> references. This API should help concurrent root processing work, to catch bad references in roots. >>> >>> Bug: https://bugs.openjdk.java.net/browse/JDK-8225573 >>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225573/webrev.00/8225573 >> >> Sorry, bad link. Should be: >> >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225573/webrev.00/ > > Looks okay. > > *) The mix of SA::assert_* and SA::print_failure irritates me. I think it is cleaner to stick with > one way of doing things. "assert" kinda implies in can be turned off (even though it does not in > this case). For example: > > class ShenandoahVerifyInToSpaceClosure : public OopClosure { > private: > template > void do_oop_work(T* p) { > T o = RawAccess<>::oop_load(p); > if (!CompressedOops::is_null(o)) { > oop obj = CompressedOops::decode_not_null(o); > > ShenandoahHeap* heap = ShenandoahHeap::heap_no_check(); > > if (!heap->marking_context()->is_marked(obj)) { > ShenandoahAsserts::print_failure(ShenandoahAsserts::_safe_all, obj, p, NULL, > "Verify Roots In To-Space", "Should be marked", __FILE__, __LINE__); > } > > if (heap->in_collection_set(obj)) { > ShenandoahAsserts::print_failure(ShenandoahAsserts::_safe_all, obj, p, NULL, > "Verify Roots In To-Space", "Should not be in collection set", __FILE__, __LINE__); > } > > oop fwd = (oop) ShenandoahForwarding::get_forwardee_raw_unchecked(obj); > if (!oopDesc::equals_raw(obj, fwd)) { > ShenandoahAsserts::print_failure(ShenandoahAsserts::_safe_all, obj, p, NULL, > "Verify Roots In To-Space", "Should not be forwarded", __FILE__, __LINE__); > } > } > } Took this version and pushed. Thanks, -Zhengyu > > -Aleksey > From shade at redhat.com Wed Jun 19 07:54:58 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 19 Jun 2019 09:54:58 +0200 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> Message-ID: On 6/18/19 10:58 PM, Zhengyu Gu wrote: >> *) Can we drop default template argument, and use explicit "false" where needed? >> >> template >> class ShenandoahJNIHandleRoots { This is not addressed? > Updated full webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.03/ Otherwise looks okay. -- Thanks, -Aleksey From zgu at redhat.com Wed Jun 19 12:53:20 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 19 Jun 2019 08:53:20 -0400 Subject: RFR 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles In-Reply-To: References: <09773450-4f20-bf9b-a2b9-d4c3c0591a61@redhat.com> <5bbe6c3e-5232-975d-809b-7cb33137d8d8@redhat.com> <4BF2DEAE-6AC5-4377-81CF-4AFE230E2AF4@redhat.com> <4b68cb86-54ab-3cb3-ba54-69a69e59304e@redhat.com> <01c1be31-c5c5-7be8-22e7-c99042c98986@redhat.com> <71444070-1fed-4f87-0ac3-cf422faee463@redhat.com> Message-ID: <830c0d2c-65bf-8f7f-dc1c-de10f9b20c08@redhat.com> On 6/19/19 3:54 AM, Aleksey Shipilev wrote: > On 6/18/19 10:58 PM, Zhengyu Gu wrote: >>> *) Can we drop default template argument, and use explicit "false" where needed? >>> >>> template >>> class ShenandoahJNIHandleRoots { > > This is not addressed? Fixed and pushed. Thanks, -Zhengyu > >> Updated full webrev: http://cr.openjdk.java.net/~zgu/JDK-8225582/webrev.03/ > > Otherwise looks okay. > From zgu at redhat.com Wed Jun 19 14:25:10 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 19 Jun 2019 10:25:10 -0400 Subject: RFR 8226311: Shenandoah: Concurrent evacuation of OopStorage backed weak roots In-Reply-To: <3c13fe6c-678e-ca93-2b39-4ae6b315427c@redhat.com> References: <3c13fe6c-678e-ca93-2b39-4ae6b315427c@redhat.com> Message-ID: Updated to address issues raised by Aleksey in another review. 1) Removed default values for template parameters. 2) Uses ShenandoahSharedFlag for _claimed flag in ShenandoahWeakSerialRoot. Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226311/webrev.01/index.html Test: reran hotspot_gc_shenandoah Thanks, -Zhengyu On 6/18/19 1:07 PM, Zhengyu Gu wrote: > Please review this patch that moves evacuation of OopStorage backed weak > roots to concurrent phase, while JVMTI and JFR weak roots are still > evacuated at pauses. > > It is a followup of JDK-8225534 [1], where we put infrastructure for > moving root evacuation to concurrent phase. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8226311 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226311/webrev.00/ > > Test: > ? hotspot_gc_shenandoah (fastdebug and release) > > Thanks, > > -Zhengyu > > [1] https://bugs.openjdk.java.net/browse/JDK-8225534 > From shade at redhat.com Wed Jun 19 15:09:08 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 19 Jun 2019 17:09:08 +0200 Subject: RFR [11]: Bulk backports to sh/jdk11 In-Reply-To: <4fab707f-631c-fc6a-f26c-634202f0a2b3@redhat.com> References: <4fab707f-631c-fc6a-f26c-634202f0a2b3@redhat.com> Message-ID: <52454b1e-6ebe-a8ec-23a9-9b930c858055@redhat.com> On 6/14/19 12:16 PM, Aleksey Shipilev wrote: > That repository is under stabilization for release, so we would like to push only the important > fixes that improve reliability, UX and testing: > [backport] 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC > [backport] 8225046: Shenandoah metrics logs refactoring > [backport] 8225017: [TESTBUG] gc/shenandoah/oom/TestThreadFailure.java takes too long > > Full webrev: > http://cr.openjdk.java.net/~shade/shenandoah/backports/jdk11-20190614/webrev.01/ Ping? -- Thanks, -Aleksey From zgu at redhat.com Wed Jun 19 19:26:51 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Wed, 19 Jun 2019 15:26:51 -0400 Subject: RFR 8226413: Shenandoah: Separate root scanner for SH::object_iterate() Message-ID: The patch is a prerequisite of concurrent CLD evacuation (JDK-8226310). By moving root scanner for SH::object_iterate() out of generic root scanner, we can enforce stricter restriction on this specialized scanner. In particular, it should not clear CLDG's claim mask and should use _claim_none to iterate CLDG to avoid interfering concurrent CLDG iteration. Bug: https://bugs.openjdk.java.net/browse/JDK-8226413 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226413/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From rkennke at redhat.com Thu Jun 20 10:13:47 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 20 Jun 2019 12:13:47 +0200 Subject: RFR [11]: Bulk backports to sh/jdk11 In-Reply-To: <52454b1e-6ebe-a8ec-23a9-9b930c858055@redhat.com> References: <4fab707f-631c-fc6a-f26c-634202f0a2b3@redhat.com> <52454b1e-6ebe-a8ec-23a9-9b930c858055@redhat.com> Message-ID: >> That repository is under stabilization for release, so we would like to push only the important >> fixes that improve reliability, UX and testing: >> [backport] 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC >> [backport] 8225046: Shenandoah metrics logs refactoring >> [backport] 8225017: [TESTBUG] gc/shenandoah/oom/TestThreadFailure.java takes too long >> >> Full webrev: >> http://cr.openjdk.java.net/~shade/shenandoah/backports/jdk11-20190614/webrev.01/ > > Ping? Looks good! Thanks, Roman From shade at redhat.com Thu Jun 20 10:14:49 2019 From: shade at redhat.com (shade at redhat.com) Date: Thu, 20 Jun 2019 10:14:49 +0000 Subject: hg: shenandoah/jdk11: 3 new changesets Message-ID: <201906201014.x5KAEoKI015417@aojmv0008.oracle.com> Changeset: 800aaf5e4d81 Author: shade Date: 2019-06-13 19:37 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/800aaf5e4d81 [backport] 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC Reviewed-by: rkennke, zgu ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp Changeset: 395d0defedf0 Author: shade Date: 2019-06-03 14:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/395d0defedf0 [backport] 8225046: Shenandoah metrics logs refactoring Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMetrics.cpp ! src/hotspot/share/gc/shenandoah/shenandoahMetrics.hpp Changeset: af1c97fd9e09 Author: shade Date: 2019-05-30 10:21 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/af1c97fd9e09 [backport] 8225017: [TESTBUG] gc/shenandoah/oom/TestThreadFailure.java takes too long Reviewed-by: rkennke ! test/hotspot/jtreg/gc/shenandoah/oom/TestThreadFailure.java From shade at redhat.com Thu Jun 20 10:14:59 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 20 Jun 2019 12:14:59 +0200 Subject: RFR [11]: Bulk backports to sh/jdk11 In-Reply-To: References: <4fab707f-631c-fc6a-f26c-634202f0a2b3@redhat.com> <52454b1e-6ebe-a8ec-23a9-9b930c858055@redhat.com> Message-ID: <0c4548b4-19c4-dae1-6622-d55b9c09b819@redhat.com> On 6/20/19 12:13 PM, Roman Kennke wrote: >>> That repository is under stabilization for release, so we would like to push only the important >>> fixes that improve reliability, UX and testing: >>> [backport] 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC >>> [backport] 8225046: Shenandoah metrics logs refactoring >>> [backport] 8225017: [TESTBUG] gc/shenandoah/oom/TestThreadFailure.java takes too long >>> >>> Full webrev: >>> http://cr.openjdk.java.net/~shade/shenandoah/backports/jdk11-20190614/webrev.01/ >> >> Ping? > > Looks good! Thank you, pushed. -Aleksey From shade at redhat.com Thu Jun 20 11:47:04 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 20 Jun 2019 13:47:04 +0200 Subject: RFC: Pick up 11.0.4+8 to sh/jdk11 Message-ID: Picking up 11.0.4+8 to sh/jdk11. Has only a few changesets: http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b8/changesets.txt Testing: hotspot_gc_shenandoah {fastdebug, release} -- Thanks, -Aleksey From zgu at redhat.com Thu Jun 20 11:49:02 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Thu, 20 Jun 2019 07:49:02 -0400 Subject: RFC: Pick up 11.0.4+8 to sh/jdk11 In-Reply-To: References: Message-ID: <1c946686-2c2e-a529-5092-eb231a372ee7@redhat.com> Looks good. -Zhengyu On 6/20/19 7:47 AM, Aleksey Shipilev wrote: > Picking up 11.0.4+8 to sh/jdk11. > > Has only a few changesets: > http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b8/changesets.txt > > Testing: hotspot_gc_shenandoah {fastdebug, release} > From rkennke at redhat.com Thu Jun 20 12:55:48 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 20 Jun 2019 14:55:48 +0200 Subject: RFR 8226413: Shenandoah: Separate root scanner for SH::object_iterate() In-Reply-To: References: Message-ID: <0B3989D8-67DC-417F-8DAA-8C19BC70EE65@redhat.com> Looks good to me. Thanks, Roman Am 19. Juni 2019 21:26:51 MESZ schrieb Zhengyu Gu : >The patch is a prerequisite of concurrent CLD evacuation (JDK-8226310). >By moving root scanner for SH::object_iterate() out of generic root >scanner, we can enforce stricter restriction on this specialized >scanner. In particular, it should not clear CLDG's claim mask and >should >use _claim_none to iterate CLDG to avoid interfering concurrent CLDG >iteration. > > >Bug: https://bugs.openjdk.java.net/browse/JDK-8226413 >Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226413/webrev.00/ > >Test: > hotspot_gc_shenandoah (fastdebug and release) > >Thanks, > >-Zhengyu -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Thu Jun 20 14:13:20 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Thu, 20 Jun 2019 10:13:20 -0400 Subject: RFR 8226413: Shenandoah: Separate root scanner for SH::object_iterate() In-Reply-To: <0B3989D8-67DC-417F-8DAA-8C19BC70EE65@redhat.com> References: <0B3989D8-67DC-417F-8DAA-8C19BC70EE65@redhat.com> Message-ID: <2db01eb8-2e07-9288-c434-5766c55fe7af@redhat.com> Thanks for reviewing, and pushed. -Zhengyu On 6/20/19 8:55 AM, Roman Kennke wrote: > Looks good to me. > > Thanks, > Roman > > > Am 19. Juni 2019 21:26:51 MESZ schrieb Zhengyu Gu : > > The patch is a prerequisite of concurrent CLD evacuation (JDK-8226310). > By moving root scanner for SH::object_iterate() out of generic root > scanner, we can enforce stricter restriction on this specialized > scanner. In particular, it should not clear CLDG's claim mask and should > use _claim_none to iterate CLDG to avoid interfering concurrent CLDG > iteration. > > > Bug:https://bugs.openjdk.java.net/browse/JDK-8226413 > Webrev:http://cr.openjdk.java.net/~zgu/JDK-8226413/webrev.00/ > > Test: > hotspot_gc_shenandoah (fastdebug and release) > > Thanks, > > -Zhengyu > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Thu Jun 20 15:25:12 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Thu, 20 Jun 2019 11:25:12 -0400 Subject: RFR 8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots API to mirror CLDG API In-Reply-To: References: Message-ID: <06b2245c-d34f-c8bf-9432-3e0d58e13b47@redhat.com> Brought webrev to current head: http://cr.openjdk.java.net/~zgu/JDK-8225590/webrev.01/index.html Could I get review of this refactoring? I would like concurrent CLDG evacuation to be based on this new API. Thanks, -Zhengyu On 6/12/19 11:31 AM, Zhengyu Gu wrote: > ShenandoahClassDataRoots only exports a generic CLDG iteration API > (roots_cld_do), which requires caller to pass in proper strong closure > and/or weak closure, while CLDG has two more explicit APIs: > always_strong_cld_do() and cld_do() for iterating strong class loader > data and all class loader data. > > This refactor converts ShenandoahClassDataRoots API to mirror the two > more explicit CLDG APIs. I think, should result more readable and less > error prone code. > > Bug: https://bugs.openjdk.java.net/browse/JDK-8225590 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225590/webrev.00/ > > Test: > ? hotspot_gc_shenandoah (fastdebug and release) > > Thanks, > > -Zhengyu From rkennke at redhat.com Thu Jun 20 20:20:01 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 20 Jun 2019 22:20:01 +0200 Subject: RFR 8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots API to mirror CLDG API In-Reply-To: <06b2245c-d34f-c8bf-9432-3e0d58e13b47@redhat.com> References: <06b2245c-d34f-c8bf-9432-3e0d58e13b47@redhat.com> Message-ID: <62AB7A2E-4D8E-44D9-A8AC-5B00AC4A1F68@redhat.com> It looks good to me. Thanks, Roman Am 20. Juni 2019 17:25:12 MESZ schrieb Zhengyu Gu : >Brought webrev to current head: >http://cr.openjdk.java.net/~zgu/JDK-8225590/webrev.01/index.html > >Could I get review of this refactoring? I would like concurrent CLDG >evacuation to be based on this new API. > >Thanks, > >-Zhengyu > > >On 6/12/19 11:31 AM, Zhengyu Gu wrote: >> ShenandoahClassDataRoots only exports a generic CLDG iteration API >> (roots_cld_do), which requires caller to pass in proper strong >closure >> and/or weak closure, while CLDG has two more explicit APIs: >> always_strong_cld_do() and cld_do() for iterating strong class loader > >> data and all class loader data. >> >> This refactor converts ShenandoahClassDataRoots API to mirror the two > >> more explicit CLDG APIs. I think, should result more readable and >less >> error prone code. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8225590 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8225590/webrev.00/ >> >> Test: >> ? hotspot_gc_shenandoah (fastdebug and release) >> >> Thanks, >> >> -Zhengyu -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From shade at redhat.com Thu Jun 20 20:52:01 2019 From: shade at redhat.com (shade at redhat.com) Date: Thu, 20 Jun 2019 20:52:01 +0000 Subject: hg: shenandoah/jdk11: 5 new changesets Message-ID: <201906202052.x5KKq2AW021350@aojmv0008.oracle.com> Changeset: 8fe869fd7b57 Author: fyang Date: 2019-05-30 10:29 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/8fe869fd7b57 8224828: aarch64: rflags is not correct after safepoint poll Reviewed-by: aph, adinn Contributed-by: Xiang Yuan ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp Changeset: ce601e800f56 Author: erikj Date: 2019-04-30 10:24 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/ce601e800f56 8222913: Add Jib support for VERSION_EXTRA* Reviewed-by: tbell, mikael ! make/conf/jib-profiles.js Changeset: 73c66f9a0425 Author: goetz Date: 2019-06-19 07:18 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/73c66f9a0425 Added tag jdk-11.0.4+8 for changeset ce601e800f56 ! .hgtags Changeset: 0502793cfc82 Author: shade Date: 2019-06-20 13:38 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/0502793cfc82 Merge ! .hgtags ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/sharedRuntime_aarch64.cpp Changeset: b091664b6fef Author: shade Date: 2019-06-20 13:38 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/b091664b6fef Added tag shenandoah-jdk-11.0.4+8 for changeset 0502793cfc82 ! .hgtags From rwestrel at redhat.com Fri Jun 21 07:11:35 2019 From: rwestrel at redhat.com (Roland Westrelin) Date: Fri, 21 Jun 2019 09:11:35 +0200 Subject: C2: adding things to EA In-Reply-To: <138af3ca-2e77-372d-fb14-56be441f93e8@redhat.com> References: <138af3ca-2e77-372d-fb14-56be441f93e8@redhat.com> Message-ID: <87blyr8law.fsf@redhat.com> > *) In SBSC2::escape_add_to_con_graph and SBSC2::escape_add_final_edges, shouldn't we add LoadAddr > input as well, like ShenandoahCompareAndExchange does? > > diff -r 3f2b4cc07dbd src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp > --- a/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp Thu Jun 06 22:24:23 2019 +0200 > +++ b/src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp Fri Jun 14 11:09:51 2019 +0200 > @@ -1159,4 +1159,5 @@ > case Op_ShenandoahLoadReferenceBarrier: > conn_graph->add_local_var_and_edge(n, PointsToNode::NoEscape, > n->in(ShenandoahLoadReferenceBarrierNode::ValueIn), delayed_worklist); > + conn_graph->add_local_var_and_edge(n, PointsToNode::NoEscape, > n->in(ShenandoahLoadReferenceBarrierNode::LoadAddr), delayed_worklist); > return true; > default: > @@ -1185,4 +1186,5 @@ > case Op_ShenandoahLoadReferenceBarrier: > conn_graph->add_local_var_and_edge(n, PointsToNode::NoEscape, > n->in(ShenandoahLoadReferenceBarrierNode::ValueIn), NULL); > + conn_graph->add_local_var_and_edge(n, PointsToNode::NoEscape, > n->in(ShenandoahLoadReferenceBarrierNode::LoadAddr), NULL); > return true; > default: > Not sure about that one but I would say no. We're not loading from the address, we're simply filtering the oop that was loaded from that address. So I suppose doing what's done for other filtering nodes like CheckCastPP is good enough. BTW, do we really need the LoadAddr edge? Can't we get the address from the load that should be input to the load barrier? If there's no load there then I suppose there should be a Phi and we could always push the barrier through the Phi so the barrier always take a load as input. If it doesn't then the barrier can be optimized out. > *) Why do we only add NoEscape "adr" to CompareAndExchange, and not to CompareAndSwap? Ditto, why do > we only do the unsafe_access for CompareAndSwap, and not to CompareAndExchange? There's a fallthrough. So there's one thing that we do for CAE that we don't do for CAS but there's nothing we do for CAS that we don't for CAE, right? I think the difference is that CAE returns an oop so it loads a value that the method can then used. That code mirrors what's done in escape.cpp for regular CAE/CAS so should be good. > *) ZGC also handles Op_Proj cases, do we care about those as well? I think they have projections from their load barriers. We don't. Roland. From zgu at redhat.com Fri Jun 21 17:36:37 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Fri, 21 Jun 2019 13:36:37 -0400 Subject: RFR 8226586: Shenandoah: No need to pre-evacuate roots for degenerated G Message-ID: <8af5496b-f176-ab10-2351-0d7cb84f8c5b@redhat.com> There is no need to pre-evacuate roots during degenerated GC. The roots are updated after evacuation in final update references phase. Bug: https://bugs.openjdk.java.net/browse/JDK-8226586 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226586/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From rkennke at redhat.com Mon Jun 24 12:22:57 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 24 Jun 2019 14:22:57 +0200 Subject: RFR 8226586: Shenandoah: No need to pre-evacuate roots for degenerated G In-Reply-To: <8af5496b-f176-ab10-2351-0d7cb84f8c5b@redhat.com> References: <8af5496b-f176-ab10-2351-0d7cb84f8c5b@redhat.com> Message-ID: <4d4d125f-32be-0918-62ef-d19e37a732c7@redhat.com> Looks good. Thanks! Roman > There is no need to pre-evacuate roots during degenerated GC. The roots > are updated after evacuation in final update references phase. > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8226586 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226586/webrev.00/ > > Test: > ? hotspot_gc_shenandoah (fastdebug and release) > > Thanks, > > -Zhengyu From rkennke at redhat.com Mon Jun 24 12:34:12 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 24 Jun 2019 14:34:12 +0200 Subject: RFR 8226311: Shenandoah: Concurrent evacuation of OopStorage backed weak roots In-Reply-To: References: <3c13fe6c-678e-ca93-2b39-4ae6b315427c@redhat.com> Message-ID: Looks good to me. Roman > Updated to address issues raised by Aleksey in another review. > > 1) Removed default values for template parameters. > 2) Uses ShenandoahSharedFlag for _claimed flag in ShenandoahWeakSerialRoot. > > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226311/webrev.01/index.html > > Test: > ? reran hotspot_gc_shenandoah > > Thanks, > > -Zhengyu > > > On 6/18/19 1:07 PM, Zhengyu Gu wrote: >> Please review this patch that moves evacuation of OopStorage backed >> weak roots to concurrent phase, while JVMTI and JFR weak roots are >> still evacuated at pauses. >> >> It is a followup of JDK-8225534 [1], where we put infrastructure for >> moving root evacuation to concurrent phase. >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8226311 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226311/webrev.00/ >> >> Test: >> ?? hotspot_gc_shenandoah (fastdebug and release) >> >> Thanks, >> >> -Zhengyu >> >> [1] https://bugs.openjdk.java.net/browse/JDK-8225534 >> From zgu at redhat.com Mon Jun 24 17:08:57 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Mon, 24 Jun 2019 13:08:57 -0400 Subject: RFR 8226310: Shenandoah: Concurrent evacuation of CLDG Message-ID: Please review this patch that moves evacuation of CLDG to concurrent phase. Bug: https://bugs.openjdk.java.net/browse/JDK-8226310 Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226310/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Thanks, -Zhengyu From rkennke at redhat.com Mon Jun 24 17:18:08 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 24 Jun 2019 19:18:08 +0200 Subject: RFR 8226310: Shenandoah: Concurrent evacuation of CLDG In-Reply-To: References: Message-ID: Hi Zhengyu, > Please review this patch that moves evacuation of CLDG to concurrent phase. > > > Bug: https://bugs.openjdk.java.net/browse/JDK-8226310 > Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226310/webrev.00/ > > Test: > ? hotspot_gc_shenandoah (fastdebug and release) Nice. + ShenandoahClassLoaderDataRoots _cld_roots; Why is it only single-threaded? Does it matter? Do you think this is back-portable? The question came up in IRC if we should start pushing this to sh/jdk for the start, let it bake there a little and at some point push it to jdk/jdk in one change. It doesn't have to be now, and I guess it depends upon how risky it is. Roman From zgu at redhat.com Mon Jun 24 17:32:18 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Mon, 24 Jun 2019 13:32:18 -0400 Subject: RFR 8226310: Shenandoah: Concurrent evacuation of CLDG In-Reply-To: References: Message-ID: <6b494806-f8a5-3883-8f27-9a6f3d51e0e9@redhat.com> On 6/24/19 1:18 PM, Roman Kennke wrote: > Hi Zhengyu, > >> Please review this patch that moves evacuation of CLDG to concurrent phase. >> >> >> Bug: https://bugs.openjdk.java.net/browse/JDK-8226310 >> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226310/webrev.00/ >> >> Test: >> ? hotspot_gc_shenandoah (fastdebug and release) > > Nice. > > + ShenandoahClassLoaderDataRoots threaded*/> _cld_roots; > > Why is it only single-threaded? Does it matter? single-threaded = false here. Only ShenandoahHeapIterationRootScanner should use single-threaded. > > Do you think this is back-portable? It is back-portable to where LRB is used. > > The question came up in IRC if we should start pushing this to sh/jdk > for the start, let it bake there a little and at some point push it to > jdk/jdk in one change. It doesn't have to be now, and I guess it depends > upon how risky it is. This patch does not address concurrent unloading, I think it is at the same risk level as JNIHandles and weak roots. All concurrent evacuation works are in jdk14, we can bake there for a while before backport to JDK13. We can move concurrent unloading work to sh-jdk, which is more risky. currently is under umbrella of JDK-8226241. Thanks, -Zhengyu > > Roman > From rkennke at redhat.com Mon Jun 24 17:41:05 2019 From: rkennke at redhat.com (Roman Kennke) Date: Mon, 24 Jun 2019 19:41:05 +0200 Subject: RFR 8226310: Shenandoah: Concurrent evacuation of CLDG In-Reply-To: <6b494806-f8a5-3883-8f27-9a6f3d51e0e9@redhat.com> References: <6b494806-f8a5-3883-8f27-9a6f3d51e0e9@redhat.com> Message-ID: <9ce4bb19-16f1-7633-75d2-ea9fb97ea622@redhat.com> Hi Zhengyu, >>> Please review this patch that moves evacuation of CLDG to concurrent >>> phase. >>> >>> >>> Bug: https://bugs.openjdk.java.net/browse/JDK-8226310 >>> Webrev: http://cr.openjdk.java.net/~zgu/JDK-8226310/webrev.00/ >>> >>> Test: >>> ?? hotspot_gc_shenandoah (fastdebug and release) >> >> Nice. >> >> +? ShenandoahClassLoaderDataRoots> threaded*/> _cld_roots; >> >> Why is it only single-threaded? Does it matter? > > single-threaded = false here. Only ShenandoahHeapIterationRootScanner > should use single-threaded. Ah! Ok then. >> Do you think this is back-portable? > It is back-portable to where LRB is used. Ok, good. >> The question came up in IRC if we should start pushing this to sh/jdk >> for the start, let it bake there a little and at some point push it to >> jdk/jdk in one change. It doesn't have to be now, and I guess it depends >> upon how risky it is. > > This patch does not address concurrent unloading, I think it is at the > same risk level as JNIHandles and weak roots. > > All concurrent evacuation works are in jdk14, we can bake there for a > while before backport to JDK13. > > We can move concurrent unloading work to sh-jdk, which is more risky. > currently is under umbrella of JDK-8226241. Sounds good to me. Thanks! Roman From zgu at redhat.com Tue Jun 25 14:34:21 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 25 Jun 2019 10:34:21 -0400 Subject: Cherry-pick: concurrent evacuation related changes Message-ID: <280282dd-9b2c-fb64-f849-0527fc0499fb@redhat.com> Hi, I would like to cherry-pick concurrent evacuation related changes to shenandoah/jdk, and continue concurrent class unloading work here, while we stabilize concurrent evacuation changes in jdk/jdk. JDK-8225514: Shenandoah: ShenandoahCodeRoots should inherit from AllStatic JDK-8225572: Shenandoah: Move JNIHandles root out of serial roots JDK-8225550: Shenandoah: Prevent SH::object_iterate() call's side-effects JDK-8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots to-space invariant JDK-8225582: Shenandoah: Enable concurrent evacuation of JNIHandles JDK-8226413: Shenandoah: Separate root scanner for SH::object_iterate() JDK-8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots API JDK-8226586: Shenandoah: No need to pre-evacuate roots for degenerated GC JDK-8226311: Shenandoah: Concurrent evacuation of OopStorage backed weak roots JDK-8226310: Shenandoah: Concurrent evacuation of CLDG JDK-8224151: Test vmTestbase/nsk/sysdict/vm/stress/chain/chain007/chain007.java might hang with release binaries Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/conc_evac/webrev.00/ Test: hotspot_gc_shenandoah (fastdebug and release) Okay? Thanks, -Zhengyu From rkennke at redhat.com Tue Jun 25 14:53:15 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 25 Jun 2019 16:53:15 +0200 Subject: Cherry-pick: concurrent evacuation related changes In-Reply-To: <280282dd-9b2c-fb64-f849-0527fc0499fb@redhat.com> References: <280282dd-9b2c-fb64-f849-0527fc0499fb@redhat.com> Message-ID: <7587D573-9BC5-47E0-BD6F-DD470567C2F3@redhat.com> Is 8224151 related to this? Otherwise OK by me. Roman Am 25. Juni 2019 16:34:21 MESZ schrieb Zhengyu Gu : >Hi, > >I would like to cherry-pick concurrent evacuation related changes to >shenandoah/jdk, and continue concurrent class unloading work here, >while >we stabilize concurrent evacuation changes in jdk/jdk. > >JDK-8225514: Shenandoah: ShenandoahCodeRoots should inherit from >AllStatic > >JDK-8225572: Shenandoah: Move JNIHandles root out of serial roots > >JDK-8225550: Shenandoah: Prevent SH::object_iterate() call's >side-effects > >JDK-8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots >to-space invariant > >JDK-8225582: Shenandoah: Enable concurrent evacuation of JNIHandles > >JDK-8226413: Shenandoah: Separate root scanner for SH::object_iterate() > >JDK-8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots API > >JDK-8226586: Shenandoah: No need to pre-evacuate roots for degenerated >GC > >JDK-8226311: Shenandoah: Concurrent evacuation of OopStorage backed >weak >roots > >JDK-8226310: Shenandoah: Concurrent evacuation of CLDG > >JDK-8224151: Test >vmTestbase/nsk/sysdict/vm/stress/chain/chain007/chain007.java might >hang >with release binaries > >Webrev: http://cr.openjdk.java.net/~zgu/shenandoah/conc_evac/webrev.00/ > >Test: > > hotspot_gc_shenandoah (fastdebug and release) > >Okay? > >Thanks, > >-Zhengyu -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Tue Jun 25 15:12:14 2019 From: zgu at redhat.com (Zhengyu Gu) Date: Tue, 25 Jun 2019 11:12:14 -0400 Subject: Cherry-pick: concurrent evacuation related changes In-Reply-To: <7587D573-9BC5-47E0-BD6F-DD470567C2F3@redhat.com> References: <280282dd-9b2c-fb64-f849-0527fc0499fb@redhat.com> <7587D573-9BC5-47E0-BD6F-DD470567C2F3@redhat.com> Message-ID: <38966e4a-fafc-dee9-75c1-d14cb42c2b19@redhat.com> On 6/25/19 10:53 AM, Roman Kennke wrote: > Is 8224151 related to this? Otherwise OK by me. Yep, it has change to ClassLoaderDataGraph::clear_claimed_marks() to avoid acquiring ClassLoaderDataGraph_lock; -Zhengyu > > Roman > > > Am 25. Juni 2019 16:34:21 MESZ schrieb Zhengyu Gu : > > Hi, > > I would like to cherry-pick concurrent evacuation related changes to > shenandoah/jdk, and continue concurrent class unloading work here, while > we stabilize concurrent evacuation changes in jdk/jdk. > > JDK-8225514: Shenandoah: ShenandoahCodeRoots should inherit from AllStatic > > JDK-8225572: Shenandoah: Move JNIHandles root out of serial roots > > JDK-8225550: Shenandoah: Prevent SH::object_iterate() call's side-effects > > JDK-8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots > to-space invariant > > JDK-8225582: Shenandoah: Enable concurrent evacuation of JNIHandles > > JDK-8226413: Shenandoah: Separate root scanner for SH::object_iterate() > > JDK-8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots API > > JDK-8226586: Shenandoah: No need to pre-evacuate roots for degenerated GC > > JDK-8226311: Shenandoah: Concurrent evacuation of OopStorage backed weak > roots > > JDK-8226310: Shenandoah: Concurrent evacuation of CLDG > > JDK-8224151: Test > vmTestbase/nsk/sysdict/vm/stress/chain/chain007/chain007.java might hang > with release binaries > > Webrev:http://cr.openjdk.java.net/~zgu/shenandoah/conc_evac/webrev.00/ > > Test: > > hotspot_gc_shenandoah (fastdebug and release) > > Okay? > > Thanks, > > -Zhengyu > > > > > -- > Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From rkennke at redhat.com Tue Jun 25 15:16:33 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 25 Jun 2019 17:16:33 +0200 Subject: Cherry-pick: concurrent evacuation related changes In-Reply-To: <38966e4a-fafc-dee9-75c1-d14cb42c2b19@redhat.com> References: <280282dd-9b2c-fb64-f849-0527fc0499fb@redhat.com> <7587D573-9BC5-47E0-BD6F-DD470567C2F3@redhat.com> <38966e4a-fafc-dee9-75c1-d14cb42c2b19@redhat.com> Message-ID: OK then. Am 25. Juni 2019 17:12:14 MESZ schrieb Zhengyu Gu : > > >On 6/25/19 10:53 AM, Roman Kennke wrote: >> Is 8224151 related to this? Otherwise OK by me. > >Yep, it has change to ClassLoaderDataGraph::clear_claimed_marks() to >avoid acquiring ClassLoaderDataGraph_lock; > >-Zhengyu > >> >> Roman >> >> >> Am 25. Juni 2019 16:34:21 MESZ schrieb Zhengyu Gu : >> >> Hi, >> >> I would like to cherry-pick concurrent evacuation related changes >to >> shenandoah/jdk, and continue concurrent class unloading work >here, while >> we stabilize concurrent evacuation changes in jdk/jdk. >> >> JDK-8225514: Shenandoah: ShenandoahCodeRoots should inherit from >AllStatic >> >> JDK-8225572: Shenandoah: Move JNIHandles root out of serial roots >> >> JDK-8225550: Shenandoah: Prevent SH::object_iterate() call's >side-effects >> >> JDK-8225573: Shenandoah: Enhance ShenandoahVerifier to ensure >roots >> to-space invariant >> >> JDK-8225582: Shenandoah: Enable concurrent evacuation of >JNIHandles >> >> JDK-8226413: Shenandoah: Separate root scanner for >SH::object_iterate() >> >> JDK-8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots >API >> >> JDK-8226586: Shenandoah: No need to pre-evacuate roots for >degenerated GC >> >> JDK-8226311: Shenandoah: Concurrent evacuation of OopStorage >backed weak >> roots >> >> JDK-8226310: Shenandoah: Concurrent evacuation of CLDG >> >> JDK-8224151: Test >> vmTestbase/nsk/sysdict/vm/stress/chain/chain007/chain007.java >might hang >> with release binaries >> >> >Webrev:http://cr.openjdk.java.net/~zgu/shenandoah/conc_evac/webrev.00/ >> >> Test: >> >> hotspot_gc_shenandoah (fastdebug and release) >> >> Okay? >> >> Thanks, >> >> -Zhengyu >> >> >> >> >> -- >> Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. -- Diese Nachricht wurde von meinem Android-Ger?t mit K-9 Mail gesendet. From zgu at redhat.com Tue Jun 25 15:20:42 2019 From: zgu at redhat.com (zgu at redhat.com) Date: Tue, 25 Jun 2019 15:20:42 +0000 Subject: hg: shenandoah/jdk: 11 new changesets Message-ID: <201906251520.x5PFKhYI017613@aojmv0008.oracle.com> Changeset: 9542ab6d0a08 Author: zgu Date: 2019-06-10 13:42 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9542ab6d0a08 Cherry-pick: 8225514: Shenandoah: ShenandoahCodeRoots should inherit from AllStatic Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.hpp Changeset: cfbd157a0d03 Author: zgu Date: 2019-06-11 19:15 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/cfbd157a0d03 Cherry-pick: 8225572: Shenandoah: Move JNIHandles root out of serial roots Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.hpp Changeset: 0ae6ce017c09 Author: zgu Date: 2019-06-14 11:58 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0ae6ce017c09 Cherry-pick: 8225550: Shenandoah: Prevent SH::object_iterate() call's side-effects Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp Changeset: bd3fd4db3ad1 Author: zgu Date: 2019-06-18 17:58 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/bd3fd4db3ad1 Cherry-pick: 8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots to-space invariant Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahVerifier.hpp Changeset: 1d0a692e8f45 Author: zgu Date: 2019-06-19 08:52 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1d0a692e8f45 Cherry-pick: 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles Reviewed-by: rkennke, shade + src/hotspot/share/gc/shenandoah/shenandoahConcurrentRoots.cpp + src/hotspot/share/gc/shenandoah/shenandoahConcurrentRoots.hpp ! src/hotspot/share/gc/shenandoah/shenandoahControlThread.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp ! src/hotspot/share/gc/shenandoah/shenandoahPhaseTimings.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahWorkerPolicy.cpp ! src/hotspot/share/gc/shenandoah/shenandoahWorkerPolicy.hpp Changeset: 718653581e6a Author: zgu Date: 2019-06-20 10:12 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/718653581e6a Cherry-pick: 8226413: Shenandoah: Separate root scanner for SH::object_iterate() Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp Changeset: a6eff11d5356 Author: zgu Date: 2019-06-20 18:29 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a6eff11d5356 Cherry-pick: 8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots API Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp Changeset: cf1c1c3b1749 Author: zgu Date: 2019-06-24 09:51 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/cf1c1c3b1749 Cherry-pick: 8226586: Shenandoah: No need to pre-evacuate roots for degenerated GC Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp Changeset: ac46c04bd13f Author: zgu Date: 2019-06-24 11:46 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ac46c04bd13f Cherry-pick: 8226311: Shenandoah: Concurrent evacuation of OopStorage backed weak roots Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.hpp Changeset: 8be0ff63cb70 Author: zgu Date: 2019-06-24 14:13 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8be0ff63cb70 Cherry-pick: 8226310: Shenandoah: Concurrent evacuation of CLDG Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp Changeset: ff43e514f182 Author: coleenp Date: 2019-06-06 15:09 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ff43e514f182 Cherry-pick: 8224151: Test vmTestbase/nsk/sysdict/vm/stress/chain/chain007/chain007.java might hang with release binaries Summary: Fix deadlock on ClassLoaderDataGraph_lock and g1 clear_claimed_marks. Reviewed-by: tschatzl, lfoltan, eosterlund ! src/hotspot/share/classfile/classLoaderData.hpp ! src/hotspot/share/classfile/classLoaderDataGraph.cpp ! src/hotspot/share/classfile/classLoaderDataGraph.hpp ! src/hotspot/share/gc/g1/g1ConcurrentMarkThread.cpp ! src/hotspot/share/runtime/vmStructs.cpp From rkennke at redhat.com Tue Jun 25 18:09:36 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 25 Jun 2019 20:09:36 +0200 Subject: RFR: JDK-8226757: Shenandoah: Make Traversal a separate mode Message-ID: Currently, Traversal GC is activated by selecting the 'traversal' heuristic. However, Traversal GC is not exactly a heuristic. It is a whole different mode, that is structurally different from the normal Shenandoah GC operation. In addition to that, it would be useful to have several Traveral GC heuristics, aggressive for testing, compact for low memory footprint, passive to drive Traversal without barriers, etc. The current traversal heuristic would become the Traversal mode's 'adaptive' heuristic. I propose to add a new option -XX:ShenandoahGCMode=normal|traversal that selects the mode of operation, and then Traversal GC can also pick up different heuristics via the usual -XX:ShenandoahGCHeuristics option. The change drops Traversal-specific parts from ShenandoahHeuristics, and re-wires them in more useful ways. A big part of the change is adjusting tests for changed options. http://cr.openjdk.java.net/~rkennke/JDK-8226757/webrev.00/ Can I please get a review? Thanks, Roman From shade at redhat.com Tue Jun 25 18:31:16 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Tue, 25 Jun 2019 20:31:16 +0200 Subject: RFC/RFR: Pick up 8u222-b06 to sh/jdk8 Message-ID: <3bc0d00a-8cd1-0bed-9467-7b0bf0947b38@redhat.com> This picks up the pre-final 8u222-b06 to sh/jdk8. Changesets: http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk8-8u222-b06/changesets.txt Hotspot webrev: http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk8-8u222-b06/webrev.01/ Testing: hotspot_gc_shenandoah -- Thanks, -Aleksey From shade at redhat.com Tue Jun 25 19:44:51 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Tue, 25 Jun 2019 21:44:51 +0200 Subject: RFR: JDK-8226757: Shenandoah: Make Traversal a separate mode In-Reply-To: References: Message-ID: On 6/25/19 8:09 PM, Roman Kennke wrote: > Currently, Traversal GC is activated by selecting the 'traversal' > heuristic. However, Traversal GC is not exactly a heuristic. It is a > whole different mode, that is structurally different from the normal > Shenandoah GC operation. In addition to that, it would be useful to have > several Traveral GC heuristics, aggressive for testing, compact for low > memory footprint, passive to drive Traversal without barriers, etc. The > current traversal heuristic would become the Traversal mode's 'adaptive' > heuristic. > > I propose to add a new option -XX:ShenandoahGCMode=normal|traversal that > selects the mode of operation, and then Traversal GC can also pick up > different heuristics via the usual -XX:ShenandoahGCHeuristics option. > > The change drops Traversal-specific parts from ShenandoahHeuristics, and > re-wires them in more useful ways. A big part of the change is adjusting > tests for changed options. > > http://cr.openjdk.java.net/~rkennke/JDK-8226757/webrev.00/ Brief look: *) I wonder if it makes sense to rework it more thoroughly: modes: {passive, normal, traversal} heuristics: {aggressive, compact, adaptive, static} ...so that modes select barriers, and heuristics only selects when to start the cycle. *) should_start_normal_gc() is now simply should_start_gc()? *) I guess this can be done in "default_cause", near "default_mode": 156 cause = mode == concurrent_traversal ? GCCause::_shenandoah_traversal_gc : GCCause::_shenandoah_concurrent_gc; *) Looks to me, there would be no message printed if we supply wrong mode? *) I don't think it is fair to call it scavenge. Description also implies "normal" is not concurrent? I'd say "normal (mark, then evac, then update)" and "traversal (mark+evac+update)". 75 experimental(ccstr, ShenandoahGCMode, "normal", \ 76 "The GC mode to use in Shenandoah GC. Possible values" \ 77 " *) normal - normal GC (mark-evac-update)" \ 78 " *) traversal - Traversal GC (concurent scavange)") \ *) TestWrongBarrierDisable.java: indenting, L58: 54 shouldFailAll("-XX:ShenandoahGCHeuristics=adaptive", concurrent); 55 shouldFailAll("-XX:ShenandoahGCHeuristics=static", concurrent); 56 shouldFailAll("-XX:ShenandoahGCHeuristics=compact", concurrent); 57 shouldFailAll("-XX:ShenandoahGCHeuristics=aggressive", concurrent); 58 shouldFailAll("-XX:ShenandoahGCMode=traversal", traversal); 59 shouldPassAll("-XX:ShenandoahGCHeuristics=passive", concurrent); 60 shouldPassAll("-XX:ShenandoahGCHeuristics=passive", traversal); -- Thanks, -Aleksey From rkennke at redhat.com Tue Jun 25 21:04:09 2019 From: rkennke at redhat.com (Roman Kennke) Date: Tue, 25 Jun 2019 23:04:09 +0200 Subject: RFR: JDK-8226757: Shenandoah: Make Traversal a separate mode In-Reply-To: References: Message-ID: Hi Aleksey, >> Currently, Traversal GC is activated by selecting the 'traversal' >> heuristic. However, Traversal GC is not exactly a heuristic. It is a >> whole different mode, that is structurally different from the normal >> Shenandoah GC operation. In addition to that, it would be useful to have >> several Traveral GC heuristics, aggressive for testing, compact for low >> memory footprint, passive to drive Traversal without barriers, etc. The >> current traversal heuristic would become the Traversal mode's 'adaptive' >> heuristic. >> >> I propose to add a new option -XX:ShenandoahGCMode=normal|traversal that >> selects the mode of operation, and then Traversal GC can also pick up >> different heuristics via the usual -XX:ShenandoahGCHeuristics option. >> >> The change drops Traversal-specific parts from ShenandoahHeuristics, and >> re-wires them in more useful ways. A big part of the change is adjusting >> tests for changed options. >> >> http://cr.openjdk.java.net/~rkennke/JDK-8226757/webrev.00/ > > Brief look: > > *) I wonder if it makes sense to rework it more thoroughly: > modes: {passive, normal, traversal} > heuristics: {aggressive, compact, adaptive, static} > > ...so that modes select barriers, and heuristics only selects when to start the cycle. I agree. So let's say we make a similar class hierarchy like we have for heuristics, but higher-level, called ShenandoahGCMode. This would: - Select barriers - It could also actually drive the GC by moving the various service_XXX_cycle() as virtual methods in ShenandoahGCMode. Not sure how degen and fullgc fit into this though. Heuristics would then only: - Figure out when to start GC - Figure out the cset > *) should_start_normal_gc() is now simply should_start_gc()? Right. > *) I guess this can be done in "default_cause", near "default_mode": > > 156 cause = mode == concurrent_traversal ? GCCause::_shenandoah_traversal_gc : > GCCause::_shenandoah_concurrent_gc; Yup. > *) Looks to me, there would be no message printed if we supply wrong mode? Ah yes, good point. Will fix it. > *) I don't think it is fair to call it scavenge. Ah I meant to change it. I think it is kind of scavenging: it starts at roots, and then scavenges out objects that it encounters while traversing the heap. Difference to classical scavenge is that it does not copy objects that are not in cset. So let's call it 'single-pass' and the normal mode mark-evac-update? > *) TestWrongBarrierDisable.java: indenting, L58: > > 54 shouldFailAll("-XX:ShenandoahGCHeuristics=adaptive", concurrent); > 55 shouldFailAll("-XX:ShenandoahGCHeuristics=static", concurrent); > 56 shouldFailAll("-XX:ShenandoahGCHeuristics=compact", concurrent); > 57 shouldFailAll("-XX:ShenandoahGCHeuristics=aggressive", concurrent); > 58 shouldFailAll("-XX:ShenandoahGCMode=traversal", traversal); > 59 shouldPassAll("-XX:ShenandoahGCHeuristics=passive", concurrent); > 60 shouldPassAll("-XX:ShenandoahGCHeuristics=passive", traversal); Good catch. Will fix it. Let me figure out a useful abstraction for the ShenandoahGCMode and then I'll post a new webrev. Thanks for reviewing! Roman From rkennke at redhat.com Wed Jun 26 09:52:28 2019 From: rkennke at redhat.com (Roman Kennke) Date: Wed, 26 Jun 2019 11:52:28 +0200 Subject: RFC/RFR: Pick up 8u222-b06 to sh/jdk8 In-Reply-To: <3bc0d00a-8cd1-0bed-9467-7b0bf0947b38@redhat.com> References: <3bc0d00a-8cd1-0bed-9467-7b0bf0947b38@redhat.com> Message-ID: <7e960038-6631-9653-ddb1-de0521886c7e@redhat.com> Ok. Thanks! Roman > This picks up the pre-final 8u222-b06 to sh/jdk8. > > Changesets: > http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk8-8u222-b06/changesets.txt > > Hotspot webrev: > http://cr.openjdk.java.net/~shade/shenandoah/merges/jdk8-8u222-b06/webrev.01/ > > Testing: hotspot_gc_shenandoah > From patrick at os.amperecomputing.com Wed Jun 26 09:57:36 2019 From: patrick at os.amperecomputing.com (Patrick Zhang OS) Date: Wed, 26 Jun 2019 09:57:36 +0000 Subject: A tiny typo at Shenandoah GC wiki page Message-ID: Hi, I found a tiny typo at Shenandoah GC wiki page, could anyone please fix it. Thanks. https://wiki.openjdk.java.net/display/shenandoah/Main, In "Failure Modes" section, "-XX:ConcCGThreads" it should be GC not CG. Regards Patrick From shade at redhat.com Wed Jun 26 10:02:34 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Wed, 26 Jun 2019 12:02:34 +0200 Subject: A tiny typo at Shenandoah GC wiki page In-Reply-To: References: Message-ID: <49222f83-e5c5-a002-4e9f-82cdb0f6b9d6@redhat.com> On 6/26/19 11:57 AM, Patrick Zhang OS wrote: > I found a tiny typo at Shenandoah GC wiki page, could anyone please fix it. Thanks. > https://wiki.openjdk.java.net/display/shenandoah/Main, In "Failure Modes" section, > "-XX:ConcCGThreads" it should be GC not CG. Fixed! -- Thanks, -Aleksey From shade at redhat.com Wed Jun 26 11:48:19 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 26 Jun 2019 11:48:19 +0000 Subject: hg: shenandoah/jdk8/langtools: 5 new changesets Message-ID: <201906261148.x5QBmJB1016769@aojmv0008.oracle.com> Changeset: 563e06335c25 Author: andrew Date: 2019-06-05 04:48 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/563e06335c25 Added tag jdk8u222-b05 for changeset 2ad39b194cc1 ! .hgtags Changeset: 1b641cb01496 Author: andrew Date: 2019-06-14 13:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/1b641cb01496 Added tag jdk8u222-b06 for changeset 563e06335c25 ! .hgtags Changeset: c64212206beb Author: andrew Date: 2019-06-14 17:02 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/c64212206beb Merge jdk8u222-b06 ! .hgtags Changeset: 3e8734f8a604 Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/3e8734f8a604 Added tag aarch64-shenandoah-jdk8u222-b06 for changeset c64212206beb ! .hgtags Changeset: 7bf07a7af7aa Author: andrew Date: 2019-06-24 12:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/langtools/rev/7bf07a7af7aa Merge ! .hgtags From shade at redhat.com Wed Jun 26 11:48:20 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 26 Jun 2019 11:48:20 +0000 Subject: hg: shenandoah/jdk8/corba: 5 new changesets Message-ID: <201906261148.x5QBmKRV016808@aojmv0008.oracle.com> Changeset: 74bdd387f873 Author: andrew Date: 2019-06-05 04:47 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/74bdd387f873 Added tag jdk8u222-b05 for changeset 5837b825d94b ! .hgtags Changeset: 3abf299d26c4 Author: andrew Date: 2019-06-14 13:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/3abf299d26c4 Added tag jdk8u222-b06 for changeset 74bdd387f873 ! .hgtags Changeset: 0f463b20f0aa Author: andrew Date: 2019-06-14 17:02 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/0f463b20f0aa Merge jdk8u222-b06 ! .hgtags Changeset: c24a732fa431 Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/c24a732fa431 Added tag aarch64-shenandoah-jdk8u222-b06 for changeset 0f463b20f0aa ! .hgtags Changeset: 68037ff5e2b0 Author: andrew Date: 2019-06-24 12:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/corba/rev/68037ff5e2b0 Merge ! .hgtags From shade at redhat.com Wed Jun 26 11:48:22 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 26 Jun 2019 11:48:22 +0000 Subject: hg: shenandoah/jdk8/hotspot: 8 new changesets Message-ID: <201906261148.x5QBmMEQ016931@aojmv0008.oracle.com> Changeset: 9442883f9c42 Author: shade Date: 2019-06-18 23:21 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/9442883f9c42 Adjust code stub sizes for Shenandoah and future backports Reviewed-by: rkennke, andrew ! src/cpu/aarch64/vm/stubRoutines_aarch64.hpp ! src/cpu/x86/vm/stubRoutines_x86_32.hpp ! src/cpu/x86/vm/stubRoutines_x86_64.hpp Changeset: fba8dbd018a6 Author: adinn Date: 2019-05-29 09:09 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/fba8dbd018a6 8202884: SA: Attach/detach might fail on Linux if debugee application create/destroy threads during attaching Summary: While doing a ptrace attach, do not attach to threads which are in the process of exiting or are zombies -- skip these threads. Reviewed-by: jcbeyler, ysuenaga ! agent/src/os/linux/libproc_impl.c ! agent/src/os/linux/libproc_impl.h ! agent/src/os/linux/ps_proc.c Changeset: 33776ba5db80 Author: andrew Date: 2019-06-05 04:48 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/33776ba5db80 Added tag jdk8u222-b05 for changeset 1ec20e8a3d8a ! .hgtags Changeset: 17778f8991c8 Author: andrew Date: 2019-06-05 05:15 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/17778f8991c8 Merge Changeset: b9f6b711e9da Author: andrew Date: 2019-06-14 13:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/b9f6b711e9da Added tag jdk8u222-b06 for changeset 17778f8991c8 ! .hgtags Changeset: db1f792cfd24 Author: andrew Date: 2019-06-14 17:02 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/db1f792cfd24 Merge jdk8u222-b06 ! .hgtags ! agent/src/os/linux/ps_proc.c Changeset: 2d797105c730 Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/2d797105c730 Added tag aarch64-shenandoah-jdk8u222-b06 for changeset db1f792cfd24 ! .hgtags Changeset: c32c275d00b1 Author: andrew Date: 2019-06-24 12:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/hotspot/rev/c32c275d00b1 Merge ! .hgtags From shade at redhat.com Wed Jun 26 11:48:23 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 26 Jun 2019 11:48:23 +0000 Subject: hg: shenandoah/jdk8/jaxp: 5 new changesets Message-ID: <201906261148.x5QBmNDl017011@aojmv0008.oracle.com> Changeset: e18fe3687a51 Author: andrew Date: 2019-06-05 04:47 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/e18fe3687a51 Added tag jdk8u222-b05 for changeset de624afa6e75 ! .hgtags Changeset: 08cd0a82185d Author: andrew Date: 2019-06-14 13:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/08cd0a82185d Added tag jdk8u222-b06 for changeset e18fe3687a51 ! .hgtags Changeset: 8614aadc4d72 Author: andrew Date: 2019-06-14 17:02 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/8614aadc4d72 Merge jdk8u222-b06 ! .hgtags Changeset: 59d92eefd8c8 Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/59d92eefd8c8 Added tag aarch64-shenandoah-jdk8u222-b06 for changeset 8614aadc4d72 ! .hgtags Changeset: 5ba2f4b335e6 Author: andrew Date: 2019-06-24 12:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxp/rev/5ba2f4b335e6 Merge ! .hgtags From shade at redhat.com Wed Jun 26 11:48:25 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 26 Jun 2019 11:48:25 +0000 Subject: hg: shenandoah/jdk8: 5 new changesets Message-ID: <201906261148.x5QBmPO7017093@aojmv0008.oracle.com> Changeset: f0f617923ceb Author: andrew Date: 2019-06-05 04:47 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/f0f617923ceb Added tag jdk8u222-b05 for changeset 8f29b4acc5d2 ! .hgtags Changeset: f321c0bb9fb3 Author: andrew Date: 2019-06-14 13:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/f321c0bb9fb3 Added tag jdk8u222-b06 for changeset f0f617923ceb ! .hgtags Changeset: aad9e60507f8 Author: andrew Date: 2019-06-14 17:02 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/aad9e60507f8 Merge jdk8u222-b06 ! .hgtags Changeset: 026e310360b3 Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/026e310360b3 Added tag aarch64-shenandoah-jdk8u222-b06 for changeset aad9e60507f8 ! .hgtags Changeset: d792db37c3ad Author: andrew Date: 2019-06-24 12:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/rev/d792db37c3ad Merge ! .hgtags From shade at redhat.com Wed Jun 26 11:48:26 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 26 Jun 2019 11:48:26 +0000 Subject: hg: shenandoah/jdk8/jaxws: 5 new changesets Message-ID: <201906261148.x5QBmQP1017172@aojmv0008.oracle.com> Changeset: dfe2ef52003c Author: andrew Date: 2019-06-05 04:48 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/dfe2ef52003c Added tag jdk8u222-b05 for changeset bd5323b37905 ! .hgtags Changeset: 2fa997404a5c Author: andrew Date: 2019-06-14 13:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/2fa997404a5c Added tag jdk8u222-b06 for changeset dfe2ef52003c ! .hgtags Changeset: 3c1ab1e3f970 Author: andrew Date: 2019-06-14 17:02 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/3c1ab1e3f970 Merge jdk8u222-b06 ! .hgtags Changeset: 6cf0368f98fd Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/6cf0368f98fd Added tag aarch64-shenandoah-jdk8u222-b06 for changeset 3c1ab1e3f970 ! .hgtags Changeset: 37f6bc592e86 Author: andrew Date: 2019-06-24 12:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jaxws/rev/37f6bc592e86 Merge ! .hgtags From shade at redhat.com Wed Jun 26 11:48:29 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 26 Jun 2019 11:48:29 +0000 Subject: hg: shenandoah/jdk8/jdk: 8 new changesets Message-ID: <201906261148.x5QBmTUZ017183@aojmv0008.oracle.com> Changeset: 32c88d12f6ae Author: adinn Date: 2019-05-24 15:26 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/32c88d12f6ae 8173910: (fs) java/nio/file/FileSystem/Basic.java should conditionally check FileStores Summary: On Unix platforms, spawn a 'df' process and skip FileStore check if it hangs Reviewed-by: alanb ! test/java/nio/file/FileSystem/Basic.java Changeset: d0cccfd32b1e Author: adinn Date: 2019-05-24 16:15 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/d0cccfd32b1e 8176237: (fs) java/nio/file/FileStore/Basic.java should conditionally check FileStores Summary: On Unix platforms, spawn a 'df' process and skip FileStore check if it hangs Reviewed-by: alanb, chegar ! test/java/nio/file/FileStore/Basic.java ! test/java/nio/file/FileSystem/Basic.java ! test/lib/testlibrary/jdk/testlibrary/FileUtils.java Changeset: 087541244a57 Author: andrew Date: 2019-06-05 04:48 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/087541244a57 Added tag jdk8u222-b05 for changeset 887c8314411d ! .hgtags Changeset: 63b345c88831 Author: andrew Date: 2019-06-05 05:16 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/63b345c88831 Merge - src/solaris/classes/sun/print/UnixPrintServiceLookup.java - src/solaris/classes/sun/print/services/javax.print.PrintServiceLookup - src/solaris/classes/sun/print/services/javax.print.StreamPrintServiceFactory - src/windows/classes/sun/print/Win32PrintServiceLookup.java - src/windows/classes/sun/print/services/javax.print.PrintServiceLookup - src/windows/classes/sun/print/services/javax.print.StreamPrintServiceFactory - test/sun/java2d/pisces/OpenJDKFillBug.java Changeset: fdf8e86e8126 Author: andrew Date: 2019-06-14 13:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/fdf8e86e8126 Added tag jdk8u222-b06 for changeset 63b345c88831 ! .hgtags Changeset: 12092a3ff12e Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/12092a3ff12e Merge jdk8u222-b06 ! .hgtags Changeset: 9f609747ccc1 Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/9f609747ccc1 Added tag aarch64-shenandoah-jdk8u222-b06 for changeset 12092a3ff12e ! .hgtags Changeset: 900a236644e1 Author: andrew Date: 2019-06-24 12:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/jdk/rev/900a236644e1 Merge ! .hgtags From shade at redhat.com Wed Jun 26 11:48:30 2019 From: shade at redhat.com (shade at redhat.com) Date: Wed, 26 Jun 2019 11:48:30 +0000 Subject: hg: shenandoah/jdk8/nashorn: 5 new changesets Message-ID: <201906261148.x5QBmUDe017189@aojmv0008.oracle.com> Changeset: 8c7734737f76 Author: andrew Date: 2019-06-05 04:48 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/8c7734737f76 Added tag jdk8u222-b05 for changeset 22144dab9c5d ! .hgtags Changeset: 2ce015266d75 Author: andrew Date: 2019-06-14 13:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/2ce015266d75 Added tag jdk8u222-b06 for changeset 8c7734737f76 ! .hgtags Changeset: 19dab648eee1 Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/19dab648eee1 Merge jdk8u222-b06 ! .hgtags Changeset: adc8ae9a92cd Author: andrew Date: 2019-06-14 17:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/adc8ae9a92cd Added tag aarch64-shenandoah-jdk8u222-b06 for changeset 19dab648eee1 ! .hgtags Changeset: d7e9f3c7dbb8 Author: andrew Date: 2019-06-24 12:30 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk8/nashorn/rev/d7e9f3c7dbb8 Merge ! .hgtags From shade at redhat.com Thu Jun 27 09:32:05 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 27 Jun 2019 11:32:05 +0200 Subject: RFC/RFR: Pick up 11.0.4+9 to sh/jdk11 Message-ID: Updates projects published the pre-final tag for 11.0.4, in preparation for going dark for CPU work. We need to pick that up into our integration repo. I will tag it shenandoah-jdk-11.0.4+9 immediately. Webrev: https://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b9/webrev.01/ Changesets: https://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b9/changesets.txt Testing: hotspot_gc_shenandoah {fastdebug|release} -- Thanks, -Aleksey From rkennke at redhat.com Thu Jun 27 09:46:45 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 27 Jun 2019 11:46:45 +0200 Subject: RFC/RFR: Pick up 11.0.4+9 to sh/jdk11 In-Reply-To: References: Message-ID: Yes! Thanks! Roman > Updates projects published the pre-final tag for 11.0.4, in preparation for going dark for CPU work. > We need to pick that up into our integration repo. I will tag it shenandoah-jdk-11.0.4+9 immediately. > > Webrev: > https://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b9/webrev.01/ > > Changesets: > https://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b9/changesets.txt > > Testing: hotspot_gc_shenandoah {fastdebug|release} > From shade at redhat.com Thu Jun 27 09:47:53 2019 From: shade at redhat.com (shade at redhat.com) Date: Thu, 27 Jun 2019 09:47:53 +0000 Subject: hg: shenandoah/jdk11: 6 new changesets Message-ID: <201906270947.x5R9lsIN024533@aojmv0008.oracle.com> Changeset: e86c5c20e188 Author: aph Date: 2019-06-18 16:15 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/e86c5c20e188 8225716: G1 GC: Undefined behaviour in G1BlockOffsetTablePart::block_at_or_preceding Reviewed-by: kbarrett, tschatzl ! src/hotspot/share/gc/g1/g1BlockOffsetTable.cpp ! src/hotspot/share/gc/g1/g1BlockOffsetTable.hpp ! src/hotspot/share/gc/g1/g1BlockOffsetTable.inline.hpp Changeset: 72d5b0083925 Author: mbaesken Date: 2019-02-18 16:17 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/72d5b0083925 8218811: replace open by os::open in hotspot coding Reviewed-by: dholmes, iklam, stuefe ! src/hotspot/os/linux/os_perf_linux.cpp ! src/hotspot/os/linux/perfMemory_linux.cpp ! src/hotspot/os/solaris/os_perf_solaris.cpp ! src/hotspot/os_cpu/linux_x86/gc/z/zBackingFile_linux_x86.cpp ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/classfile/compactHashtable.cpp ! src/hotspot/share/memory/filemap.cpp ! src/hotspot/share/utilities/ostream.cpp Changeset: 26958299a5f8 Author: mbaesken Date: 2019-06-06 09:30 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/26958299a5f8 8225402: events logging in deoptimization.cpp should go to deopt-log Reviewed-by: mdoerr, stuefe, coleenp ! src/hotspot/share/runtime/deoptimization.cpp Changeset: edad26aedff7 Author: goetz Date: 2019-06-26 07:30 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/edad26aedff7 Added tag jdk-11.0.4+9 for changeset 26958299a5f8 ! .hgtags Changeset: 66232a92bb70 Author: shade Date: 2019-06-27 11:27 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/66232a92bb70 Merge ! .hgtags Changeset: 4181fdd3bd17 Author: shade Date: 2019-06-27 11:27 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk11/rev/4181fdd3bd17 Added tag shenandoah-jdk-11.0.4+9 for changeset 66232a92bb70 ! .hgtags From shade at redhat.com Thu Jun 27 09:48:15 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Thu, 27 Jun 2019 11:48:15 +0200 Subject: RFC/RFR: Pick up 11.0.4+9 to sh/jdk11 In-Reply-To: References: Message-ID: Pushed. -Aleksey On 6/27/19 11:46 AM, Roman Kennke wrote: > Yes! Thanks! > Roman > >> Updates projects published the pre-final tag for 11.0.4, in preparation for going dark for CPU work. >> We need to pick that up into our integration repo. I will tag it shenandoah-jdk-11.0.4+9 immediately. >> >> Webrev: >> https://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b9/webrev.01/ >> >> Changesets: >> https://cr.openjdk.java.net/~shade/shenandoah/merges/jdk11-11.0.4%2b9/changesets.txt >> >> Testing: hotspot_gc_shenandoah {fastdebug|release} >> From rkennke at redhat.com Thu Jun 27 12:26:39 2019 From: rkennke at redhat.com (Roman Kennke) Date: Thu, 27 Jun 2019 14:26:39 +0200 Subject: RFR: Merge jdk-14+4 Message-ID: Let's bring in jdk-14+4 from jdk/jdk: http://cr.openjdk.java.net/~rkennke/upstream-jdk14-merge-2019-06-27/changes.txt Merge was trivial, testing (hotspot_gc_shenandoah) passed. Ok? Roman From shade at redhat.com Fri Jun 28 08:26:57 2019 From: shade at redhat.com (Aleksey Shipilev) Date: Fri, 28 Jun 2019 10:26:57 +0200 Subject: RFR: Merge jdk-14+4 In-Reply-To: References: Message-ID: On 6/27/19 2:26 PM, Roman Kennke wrote: > Let's bring in jdk-14+4 from jdk/jdk: > > http://cr.openjdk.java.net/~rkennke/upstream-jdk14-merge-2019-06-27/changes.txt > > Merge was trivial, testing (hotspot_gc_shenandoah) passed. Ok? Looks good. I think it is jdk-14+3, though. -- Thanks, -Aleksey From rkennke at redhat.com Fri Jun 28 08:30:54 2019 From: rkennke at redhat.com (rkennke at redhat.com) Date: Fri, 28 Jun 2019 08:30:54 +0000 Subject: hg: shenandoah/jdk: 258 new changesets Message-ID: <201906280831.x5S8VCWT020242@aojmv0008.oracle.com> Changeset: 77b54b2822cc Author: vromero Date: 2019-06-05 16:01 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/77b54b2822cc 8216261: Javap ignores default modifier on interfaces Reviewed-by: jjg, darcy ! src/jdk.jdeps/share/classes/com/sun/tools/javap/ClassWriter.java + test/langtools/tools/javap/default_methods/JavapNotPrintingDefaultModifierTest.java Changeset: 647593fdea53 Author: erikj Date: 2019-06-05 13:46 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/647593fdea53 8209381: Default CDS classlist generation should run with an explicit locale setting Reviewed-by: iklam, tbell ! make/GenerateLinkOptData.gmk Changeset: 0d326e0f474c Author: vromero Date: 2019-06-05 17:01 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0d326e0f474c 8223942: Missing methods in ClientCodeWrapper$WrappedJavaFileManager Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/tools/javac/api/ClientCodeWrapper.java + test/langtools/tools/javac/T8223942/ClientCodeWrappersShouldOverrideAllMethodsTest.java Changeset: e2987b9baa93 Author: naoto Date: 2019-06-05 16:10 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e2987b9baa93 8225182: JNI exception pending in DestroyXIMCallback of awt_InputMethod.c:1327 Reviewed-by: serb ! src/java.desktop/unix/native/libawt_xawt/awt/awt_InputMethod.c Changeset: 184b05daf50f Author: vromero Date: 2019-06-05 21:50 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/184b05daf50f 8225386: test for JDK-8216261 fails in Windows Reviewed-by: jjg ! test/langtools/tools/javap/default_methods/JavapNotPrintingDefaultModifierTest.java Changeset: 261cd181eb50 Author: jwilhelm Date: 2019-06-06 04:04 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/261cd181eb50 Added tag jdk-13+24 for changeset 7e2238451585 ! .hgtags Changeset: 10a2778ecbbf Author: jjiang Date: 2019-06-06 10:11 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/10a2778ecbbf 8225390: ProblemList sun/security/pkcs11/sslecc/ClientJSSEServerJSSE.java due to JDK-8161536 Reviewed-by: xuelei ! test/jdk/ProblemList.txt Changeset: 1402a03f214e Author: sspitsyn Date: 2019-06-05 21:02 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1402a03f214e 8205126: JVMTI spec incorrectly states that PopFrame can not be called on the current thread Summary: Align the PopFrame spec with the implementation Reviewed-by: amenkov, jcbeyler, cjplummer, dcubed ! src/hotspot/share/prims/jvmti.xml Changeset: f74f0d3033a9 Author: lfoltan Date: 2019-06-05 22:19 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f74f0d3033a9 8225325: Add tests for redefining a class' private method during resolution of the bootstrap specifier Summary: Add new tests Reviewed-by: dholmes, sspitsyn + test/jdk/java/lang/instrument/RedefineInterfaceMethods/RedefineInterfaceMethods.java + test/jdk/java/lang/instrument/RedefineInterfaceMethods/redef/Xost.java + test/jdk/java/lang/instrument/RedefineMathTesterMethods/RedefineMathTesterMethods.java + test/jdk/java/lang/instrument/RedefineMathTesterMethods/redef/Xost.java Changeset: 92eec0732eed Author: ngasson Date: 2019-06-04 17:56 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/92eec0732eed 8224853: CDS address sanitizer errors Reviewed-by: iklam, dholmes ! src/hotspot/share/classfile/javaClasses.cpp ! src/hotspot/share/memory/iterator.hpp ! src/hotspot/share/memory/metaspaceShared.cpp ! src/hotspot/share/memory/metaspaceShared.hpp Changeset: 6502d6a92fe2 Author: jiefu Date: 2019-06-06 13:45 +0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6502d6a92fe2 8224162: assert(profile.count() == 0) failed: sanity in InlineTree::is_not_reached Reviewed-by: vlivanov, kvn ! src/hotspot/share/ci/ciMethod.cpp ! src/hotspot/share/ci/ciMethod.hpp ! src/hotspot/share/oops/methodData.hpp ! src/hotspot/share/utilities/globalDefinitions.hpp + test/hotspot/jtreg/compiler/profiling/TestProfileCounterOverflow.java Changeset: 3c905e67e380 Author: vlivanov Date: 2019-06-06 13:46 +0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3c905e67e380 8225106: C2: Parse::clinit_deopt asserts when holder klass is in error state Reviewed-by: mdoerr ! src/hotspot/cpu/x86/c1_LIRAssembler_x86.cpp ! src/hotspot/cpu/x86/macroAssembler_x86.cpp ! src/hotspot/cpu/x86/x86_64.ad ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/ci/ciInstanceKlass.hpp ! src/hotspot/share/opto/parse1.cpp ! test/hotspot/jtreg/runtime/clinit/ClassInitBarrier.java Changeset: 36cb654a690f Author: vlivanov Date: 2019-06-06 13:46 +0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/36cb654a690f 8225141: Better handling of classes in error state in fast class initialization checks Reviewed-by: dlong, dholmes ! src/hotspot/share/oops/instanceKlass.cpp ! src/hotspot/share/oops/instanceKlass.hpp Changeset: d49b72808414 Author: weijun Date: 2019-06-06 21:19 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d49b72808414 8225304: Tiny HTML error (bad heading) in org.ietf.jgss package-info.java Reviewed-by: xuelei ! src/java.security.jgss/share/classes/org/ietf/jgss/package-info.java Changeset: 3b22c7e00573 Author: egahlin Date: 2019-06-06 15:22 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3b22c7e00573 8224217: RecordingInfo should use textual representation of path Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecorder.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecording.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/WriteableUserPath.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/management/ManagementSupport.java ! src/jdk.management.jfr/share/classes/jdk/management/jfr/RecordingInfo.java Changeset: 442b86eb633c Author: rriggs Date: 2019-06-06 10:03 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/442b86eb633c 8224905: java/lang/ProcessBuilder/Basic.java#id1 failed with stream closed Reviewed-by: lancea, bpb, naoto ! test/jdk/java/lang/ProcessBuilder/Basic.java Changeset: d65d3c37232c Author: mbalao Date: 2019-06-05 01:42 -0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d65d3c37232c 8215032: Support Kerberos cross-realm referrals (RFC 6806) Reviewed-by: weijun ! src/java.base/share/conf/security/java.security ! src/java.security.jgss/share/classes/javax/security/auth/kerberos/KerberosPrincipal.java ! src/java.security.jgss/share/classes/sun/security/krb5/Checksum.java ! src/java.security.jgss/share/classes/sun/security/krb5/Config.java ! src/java.security.jgss/share/classes/sun/security/krb5/KrbAsRep.java ! src/java.security.jgss/share/classes/sun/security/krb5/KrbAsReq.java ! src/java.security.jgss/share/classes/sun/security/krb5/KrbAsReqBuilder.java ! src/java.security.jgss/share/classes/sun/security/krb5/KrbKdcRep.java ! src/java.security.jgss/share/classes/sun/security/krb5/KrbTgsRep.java ! src/java.security.jgss/share/classes/sun/security/krb5/KrbTgsReq.java ! src/java.security.jgss/share/classes/sun/security/krb5/PrincipalName.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/CredentialsUtil.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/EncASRepPart.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/EncKDCRepPart.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/EncTGSRepPart.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/KDCOptions.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/KDCReq.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/KRBError.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/Krb5.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/PAData.java + src/java.security.jgss/share/classes/sun/security/krb5/internal/ReferralsCache.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/TicketFlags.java ! src/java.security.jgss/share/classes/sun/security/krb5/internal/crypto/KeyUsage.java ! test/jdk/sun/security/krb5/auto/KDC.java + test/jdk/sun/security/krb5/auto/ReferralsTest.java Changeset: 61fff1345ee6 Author: bpb Date: 2019-06-06 08:11 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/61fff1345ee6 8219992: Correct the documentation of PrintWriter to refer System.lineSeparator Reviewed-by: darcy, lancea, rriggs ! src/java.base/share/classes/java/io/PrintWriter.java Changeset: cc0f117f4405 Author: jlaskey Date: 2019-06-06 12:24 -0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/cc0f117f4405 8223775: String::stripIndent (Preview) Reviewed-by: abuckley, vromero, jlahoda, bchristi, rriggs, smarks ! src/java.base/share/classes/java/lang/String.java ! src/java.base/share/classes/java/lang/StringLatin1.java ! src/java.base/share/classes/java/lang/StringUTF16.java + test/jdk/java/lang/String/StripIndent.java Changeset: dff30b1557ee Author: jlaskey Date: 2019-06-06 12:24 -0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/dff30b1557ee 8223780: String::translateEscapes (Preview) Reviewed-by: abuckley, vromero, jlahoda, bchristi, igerasim, smarks ! src/java.base/share/classes/java/lang/String.java + test/jdk/java/lang/String/TranslateEscapes.java Changeset: 7d83cf1cfa74 Author: jlaskey Date: 2019-06-06 12:24 -0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7d83cf1cfa74 8203444: String::formatted (Preview) Reviewed-by: smarks, rriggs, sherman ! src/java.base/share/classes/java/lang/String.java + test/jdk/java/lang/String/Formatted.java Changeset: 830ca7b43b95 Author: jlaskey Date: 2019-06-06 12:24 -0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/830ca7b43b95 8223967: Implement Text Blocks (Preview) in the Java compiler Reviewed-by: vromero, jlahoda, abuckley ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Lint.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Preview.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavaTokenizer.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/ScannerFactory.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/UnicodeReader.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties + test/langtools/tools/javac/TextBlockAPI.java + test/langtools/tools/javac/TextBlockLang.java + test/langtools/tools/javac/diags/examples/TextBlockCloseDelimiter.java + test/langtools/tools/javac/diags/examples/TextBlockOpenDelimiter.java + test/langtools/tools/javac/diags/examples/TextBlockWhitespace.java ! test/langtools/tools/javap/WhitespaceTest.java Changeset: b7ad292e686c Author: aeubanks Date: 2019-05-23 10:06 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b7ad292e686c 8224645: Only test multicast interfaces if they exist Reviewed-by: alanb, dfuchs, chegar Contributed-by: aeubanks at google.com ! test/jdk/java/nio/channels/DatagramChannel/BasicMulticastTests.java Changeset: d80becbcd3c1 Author: mr Date: 2019-06-06 10:01 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d80becbcd3c1 8197927: Allow the system property `java.vendor.version` to be undefined Reviewed-by: lancea, mchung, clanger ! src/java.base/share/classes/java/lang/System.java Changeset: fb250e9cfe67 Author: jjg Date: 2019-06-06 10:36 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fb250e9cfe67 8225321: Repeated use of {@systemProperty} in a file causes duplicate ids Reviewed-by: hannesw ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/TagletWriterImpl.java ! test/langtools/jdk/javadoc/doclet/testIndexTaglet/TestIndexTaglet.java ! test/langtools/jdk/javadoc/doclet/testSystemPropertyTaglet/TestSystemPropertyTaglet.java Changeset: eabe64456156 Author: egahlin Date: 2019-06-06 20:19 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/eabe64456156 8216283: Allow shorter method sampling interval than 10 ms Reviewed-by: mgronlun ! src/hotspot/share/jfr/periodic/sampling/jfrThreadSampler.cpp ! src/jdk.jfr/share/conf/jfr/default.jfc ! src/jdk.jfr/share/conf/jfr/profile.jfc Changeset: c5fe45d1281d Author: coleenp Date: 2019-06-06 15:09 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c5fe45d1281d 8224151: Test vmTestbase/nsk/sysdict/vm/stress/chain/chain007/chain007.java might hang with release binaries Summary: Fix deadlock on ClassLoaderDataGraph_lock and g1 clear_claimed_marks. Reviewed-by: tschatzl, lfoltan, eosterlund ! src/hotspot/share/classfile/classLoaderData.hpp ! src/hotspot/share/classfile/classLoaderDataGraph.cpp ! src/hotspot/share/classfile/classLoaderDataGraph.hpp ! src/hotspot/share/gc/g1/g1ConcurrentMarkThread.cpp ! src/hotspot/share/runtime/vmStructs.cpp Changeset: 098fa5ddb308 Author: egahlin Date: 2019-06-06 22:31 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/098fa5ddb308 8219205: JFR file without license header Reviewed-by: mgronlun ! src/jdk.jfr/share/classes/jdk/jfr/internal/MirrorEvent.java Changeset: 759acbfb9fde Author: iignatyev Date: 2019-06-06 13:42 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/759acbfb9fde 8225450: use @file in CtwRunner Reviewed-by: kvn ! test/hotspot/jtreg/testlibrary/ctw/src/sun/hotspot/tools/ctw/CtwRunner.java Changeset: 5c7c3662c386 Author: bpb Date: 2019-06-06 14:13 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5c7c3662c386 8224617: (fs) java/nio/file/FileStore/Basic.java found filesystem twice Reviewed-by: alanb ! test/jdk/java/nio/file/FileStore/Basic.java ! test/lib/jdk/test/lib/util/FileUtils.java Changeset: 1b17d09e3e05 Author: kvn Date: 2019-06-06 15:12 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1b17d09e3e05 8208379: compiler/jvmci/events/JvmciNotifyInstallEventTest.java failed with "Got unexpected event count after 2nd install attempt: expected 9 to equal 2" Reviewed-by: iignatyev ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyBootstrapFinishedEventTest.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyInstallEventTest.java Changeset: 64b76867851b Author: kvn Date: 2019-06-06 16:06 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/64b76867851b 8222371: Use UL for TraceNMethodInstalls code Reviewed-by: dholmes ! src/hotspot/share/ci/ciEnv.cpp ! src/hotspot/share/jvmci/jvmciRuntime.cpp ! src/hotspot/share/logging/logTag.hpp ! src/hotspot/share/runtime/arguments.cpp Changeset: 8cd2d6dee328 Author: igerasim Date: 2019-06-06 17:20 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8cd2d6dee328 8225397: Integer value miscalculation in toString() method of BitSet Reviewed-by: aph ! src/java.base/share/classes/java/util/BitSet.java + test/jdk/java/util/BitSet/HugeToString.java Changeset: 0a7af38ef32a Author: darcy Date: 2019-06-06 17:48 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0a7af38ef32a 8225465: Add @jls tags to receiver type methods Reviewed-by: lancea, jjg ! src/java.base/share/classes/java/lang/reflect/Executable.java ! src/java.compiler/share/classes/javax/lang/model/element/ExecutableElement.java ! src/java.compiler/share/classes/javax/lang/model/type/ExecutableType.java Changeset: 5a5f83da57eb Author: dtitov Date: 2019-06-06 18:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5a5f83da57eb 8206074: nsk/jdi/EventRequestManager/createStepRequest/crstepreq001/TestDescription.java is timing out Reviewed-by: cjplummer, gadams ! test/hotspot/jtreg/vmTestbase/nsk/jdi/EventRequestManager/createStepRequest/crstepreq001.java Changeset: 0d44bf1ead37 Author: egahlin Date: 2019-06-07 04:57 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0d44bf1ead37 8224139: Deprecate -XX:FlightRecorder option Reviewed-by: mgronlun, mseledtsov ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/globals.hpp Changeset: 9772d90df0d0 Author: iignatyev Date: 2019-06-06 23:06 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9772d90df0d0 8225469: clean up problem lists Reviewed-by: kvn ! test/hotspot/jtreg/ProblemList-graal.txt ! test/jdk/ProblemList-graal.txt Changeset: d59aec2ead21 Author: mbaesken Date: 2019-06-06 09:30 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d59aec2ead21 8225402: events logging in deoptimization.cpp should go to deopt-log Reviewed-by: mdoerr, stuefe, coleenp ! src/hotspot/share/runtime/deoptimization.cpp Changeset: d868727d8f0b Author: jlahoda Date: 2019-06-07 10:09 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d868727d8f0b 8223782: jshell parser should handle Text Blocks Summary: Completion analysis should detect text blocks properly. Reviewed-by: jlaskey, rfield ! src/jdk.jshell/share/classes/jdk/jshell/MaskCommentsAndModifiers.java ! test/langtools/jdk/jshell/CompletenessTest.java ! test/langtools/jdk/jshell/CompletionSuggestionTest.java Changeset: eaa1e236f305 Author: mdoerr Date: 2019-06-07 10:13 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/eaa1e236f305 8225347: [s390] Unexpected exit from stack overflow test Reviewed-by: simonis ! src/hotspot/cpu/s390/globals_s390.hpp Changeset: 07ff89762205 Author: pliden Date: 2019-06-07 11:19 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/07ff89762205 8225340: ZGC: Add logging of High Usage rule Reviewed-by: stefank, eosterlund ! src/hotspot/share/gc/z/zDirector.cpp Changeset: 4556dd808daa Author: pliden Date: 2019-06-07 11:19 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4556dd808daa 8222145: Add -XX:SoftMaxHeapSize flag Reviewed-by: eosterlund, tschatzl ! src/hotspot/share/gc/shared/gcArguments.cpp ! src/hotspot/share/gc/shared/gc_globals.hpp ! src/hotspot/share/gc/shared/jvmFlagConstraintsGC.cpp ! src/hotspot/share/gc/shared/jvmFlagConstraintsGC.hpp + test/hotspot/jtreg/gc/arguments/TestSoftMaxHeapSizeFlag.java ! test/hotspot/jtreg/runtime/CommandLine/OptionsValidation/TestOptionsWithRangesDynamic.java ! test/hotspot/jtreg/runtime/CommandLine/OptionsValidation/common/optionsvalidation/JVMOption.java Changeset: 38006f020b94 Author: pliden Date: 2019-06-07 11:19 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/38006f020b94 8222182: ZGC: Use SoftMaxHeapSize to guide GC heuristics Reviewed-by: stefank, tschatzl ! src/hotspot/share/gc/z/zDirector.cpp ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/zHeap.hpp ! src/hotspot/share/gc/z/zPageAllocator.cpp ! src/hotspot/share/gc/z/zPageAllocator.hpp Changeset: 9a120214e732 Author: pliden Date: 2019-06-07 11:19 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9a120214e732 8222467: ZGC: Log min/max/softmax capacity Reviewed-by: stefank ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/zStat.cpp ! src/hotspot/share/gc/z/zStat.hpp Changeset: 55319b27b346 Author: shade Date: 2019-06-07 11:47 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/55319b27b346 8225357: Rewire ShenandoahHeap::maybe_update_with_forwarded for contending fixups Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.inline.hpp Changeset: 09b09388f197 Author: shade Date: 2019-06-07 11:48 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/09b09388f197 8225441: Cleanup ShenandoahHeap::atomic_compare_exchange_oop Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahTraversalGC.inline.hpp Changeset: ae41e1037bde Author: chegar Date: 2019-06-07 11:47 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ae41e1037bde 8225424: Add jdk.net.usePlainSocketImpl runs to a couple of tests Reviewed-by: alanb ! test/jdk/java/net/SocketOption/AfterClose.java ! test/jdk/java/net/SocketOption/NullsAndBadValues.java Changeset: fe87ca416753 Author: chegar Date: 2019-06-07 11:51 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fe87ca416753 8216988: ServerSocket.implAccept should include warnings about Socket type/state Reviewed-by: alanb ! src/java.base/share/classes/java/net/ServerSocket.java Changeset: ceabad800468 Author: jlaskey Date: 2019-06-07 08:47 -0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ceabad800468 8225448: String::translateEscapes javadoc has accessibility issues Reviewed-by: jjg ! src/java.base/share/classes/java/lang/String.java Changeset: 47ee6c00d27c Author: mbaesken Date: 2019-06-05 16:53 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/47ee6c00d27c 8224958: add os::dll_load calls to event log Reviewed-by: dholmes, mdoerr, stuefe ! src/hotspot/os/aix/os_aix.cpp ! src/hotspot/os/bsd/os_bsd.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/solaris/os_solaris.cpp ! src/hotspot/os/windows/os_windows.cpp Changeset: f4b2d5b83ebf Author: erikj Date: 2019-06-07 09:16 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f4b2d5b83ebf 8217739: Cannot reuse java.base UnixConstants.java from target in BuildJDK when cross compiling Reviewed-by: tbell, aoqi - make/CreateBuildJdkCopy.gmk ! make/ExplodedImageOptimize.gmk ! make/Main.gmk ! make/autoconf/buildjdk-spec.gmk.in ! make/common/MakeBase.gmk ! make/common/NativeCompilation.gmk ! make/gensrc/GensrcMisc.gmk Changeset: d19dc5b10fbb Author: never Date: 2019-06-07 10:26 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d19dc5b10fbb 8209626: [JVMCI] Use implicit exception table for dispatch and printing Reviewed-by: kvn ! src/hotspot/share/aot/aotCompiledMethod.hpp ! src/hotspot/share/code/compiledMethod.cpp ! src/hotspot/share/code/compiledMethod.hpp ! src/hotspot/share/code/exceptionHandlerTable.cpp ! src/hotspot/share/code/exceptionHandlerTable.hpp ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/jvmci/jvmciCodeInstaller.cpp ! src/hotspot/share/jvmci/jvmciCodeInstaller.hpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/jvmci/jvmciJavaClasses.hpp ! src/hotspot/share/jvmci/jvmciRuntime.cpp ! src/hotspot/share/jvmci/jvmciRuntime.hpp ! src/hotspot/share/runtime/sharedRuntime.cpp ! src/hotspot/share/runtime/sharedRuntime.hpp ! src/jdk.aot/share/classes/jdk.tools.jaotc/src/jdk/tools/jaotc/MetadataBuilder.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotMetaData.java Changeset: 3493c1bc59fd Author: lmesnik Date: 2019-06-07 12:26 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3493c1bc59fd 8225388: Running jcmd Compiler.CodeHeap_Analytics all 0 cause crash. Reviewed-by: thartmann, sspitsyn ! src/hotspot/share/code/codeCache.cpp ! src/hotspot/share/code/codeCache.hpp ! src/hotspot/share/code/codeHeapState.cpp ! src/hotspot/share/code/codeHeapState.hpp ! src/hotspot/share/compiler/compileBroker.cpp ! src/hotspot/share/compiler/compileBroker.hpp ! src/hotspot/share/runtime/java.cpp ! src/hotspot/share/services/diagnosticCommand.cpp ! src/hotspot/share/services/diagnosticCommand.hpp + test/hotspot/jtreg/serviceability/dcmd/compiler/CodeHeapAnalyticsParams.java Changeset: 14283f280695 Author: kvn Date: 2019-06-07 13:57 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/14283f280695 8225350: compiler/jvmci/compilerToVM/IsCompilableTest.java timed out Reviewed-by: iignatyev ! test/hotspot/jtreg/compiler/jvmci/TestJVMCIPrintProperties.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/IsCompilableTest.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/MaterializeVirtualObjectTest.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyBootstrapFinishedEventTest.java ! test/hotspot/jtreg/compiler/jvmci/events/JvmciNotifyInstallEventTest.java ! test/hotspot/jtreg/runtime/appcds/GraalWithLimitedMetaspace.java Changeset: 357c9dcb6eb9 Author: ccheung Date: 2019-06-07 14:03 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/357c9dcb6eb9 8224497: Remove FIXME in metaspaceClosure.cpp Summary: Also cleaned up some comment and code related to the od (optional data) region. Reviewed-by: iklam, jiangli ! src/hotspot/share/memory/filemap.cpp ! src/hotspot/share/memory/metaspaceClosure.cpp ! src/hotspot/share/memory/metaspaceShared.cpp ! src/hotspot/share/memory/metaspaceShared.hpp Changeset: fd61ef6c4091 Author: jjg Date: 2019-06-07 14:32 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fd61ef6c4091 8224257: fix issues in files generated by pandoc Reviewed-by: mchung ! make/jdk/src/classes/build/tools/fixuppandoc/Main.java Changeset: 1fe17d2be502 Author: dlong Date: 2019-06-07 18:11 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1fe17d2be502 8223050: JVMCI: findUniqueConcreteMethod() should not use Dependencies::find_unique_concrete_method() for non-virtual methods Reviewed-by: kvn, dnsimon ! src/hotspot/share/code/dependencies.hpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedJavaMethodImpl.java ! test/hotspot/jtreg/compiler/jvmci/compilerToVM/FindUniqueConcreteMethodTest.java Changeset: 40320fb1920a Author: sviswanathan Date: 2019-06-07 15:35 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/40320fb1920a 8224234: compiler/codegen/TestCharVect2.java fails in test_mulc Reviewed-by: vlivanov, thartmann ! src/hotspot/cpu/x86/x86.ad Changeset: 1e0b948cc122 Author: jjg Date: 2019-06-07 16:38 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1e0b948cc122 8224257: fix issues in files generated by pandoc Reviewed-by: mchung ! make/jdk/src/classes/build/tools/fixuppandoc/Main.java Changeset: a9188ba494a3 Author: iignatyev Date: 2019-06-07 21:35 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a9188ba494a3 8149040: Cleanup compiler/jsr292/NonInlinedCall tests after JDK-8148994 Reviewed-by: kvn, thartmann - test/hotspot/jtreg/compiler/jsr292/NonInlinedCall/GCTest.java ! test/hotspot/jtreg/compiler/jsr292/NonInlinedCall/InvokeTest.java ! test/hotspot/jtreg/compiler/jsr292/NonInlinedCall/RedefineTest.java ! test/hotspot/jtreg/compiler/jsr292/patches/java.base/java/lang/invoke/MethodHandleHelper.java Changeset: 686dedba1d9a Author: egahlin Date: 2019-06-09 11:28 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/686dedba1d9a 8216064: -XX:StartFlightRecording:settings= doesn't work properly Reviewed-by: mgronlun ! src/hotspot/share/jfr/dcmd/jfrDcmds.cpp ! src/hotspot/share/jfr/jni/jfrJavaCall.cpp ! src/hotspot/share/jfr/jni/jfrJavaSupport.cpp ! src/jdk.jfr/share/classes/jdk/jfr/internal/dcmd/DCmdStart.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/jfc/JFC.java + test/jdk/jdk/jfr/startupargs/TestStartNoSettings.java Changeset: fcc702f17582 Author: lancea Date: 2019-06-09 05:56 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fcc702f17582 8225322: Broken links in java.sql Reviewed-by: darcy, jjg ! src/java.sql/share/classes/java/sql/package-info.java ! src/java.sql/share/classes/javax/sql/package-info.java Changeset: 84b9996abbee Author: darcy Date: 2019-06-09 15:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/84b9996abbee 8181869: getAnnotatedParameterTypes%G???%@() specification should be clarified Reviewed-by: lancea ! src/java.base/share/classes/java/lang/reflect/Executable.java Changeset: 6e432194ee97 Author: darcy Date: 2019-06-09 15:48 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6e432194ee97 8042748: Clarify exception thrown by ParameterizedTypeImpl.validateConstructorArguments() Reviewed-by: lancea ! src/java.base/share/classes/sun/reflect/generics/reflectiveObjects/ParameterizedTypeImpl.java Changeset: ea43db53de91 Author: jlahoda Date: 2019-06-10 05:09 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ea43db53de91 8223305: Compiler support for Switch Expressions Reviewed-by: mcimadamore, vromero ! src/java.compiler/share/classes/javax/lang/model/SourceVersion.java ! src/jdk.compiler/share/classes/com/sun/source/tree/BreakTree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/Tree.java ! src/jdk.compiler/share/classes/com/sun/source/tree/TreeVisitor.java + src/jdk.compiler/share/classes/com/sun/source/tree/YieldTree.java ! src/jdk.compiler/share/classes/com/sun/source/util/SimpleTreeVisitor.java ! src/jdk.compiler/share/classes/com/sun/source/util/TreeScanner.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Kinds.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/ArgumentAttr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/AttrContext.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/DeferredAttr.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Flow.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Lower.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/MemberEnter.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Resolve.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TransTypes.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/TreeDiffer.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/CRTable.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/compiler.properties ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/JCTree.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/Pretty.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeCopier.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeMaker.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeScanner.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/tree/TreeTranslator.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Log.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/util/Names.java ! test/langtools/tools/javac/diags/examples/BracketsNotAllowedImplicitLambda.java - test/langtools/tools/javac/diags/examples/BreakAmbiguousTarget.java - test/langtools/tools/javac/diags/examples/BreakComplexValueNoSwitchExpression.java - test/langtools/tools/javac/diags/examples/BreakExprNotImmediate.java - test/langtools/tools/javac/diags/examples/BreakMissingValue.java ! test/langtools/tools/javac/diags/examples/FutureVarNotAllowed.java + test/langtools/tools/javac/diags/examples/IllegalRefToRestrictedType.java ! test/langtools/tools/javac/diags/examples/IllegalRefToVarType.java + test/langtools/tools/javac/diags/examples/InvalidYield.java + test/langtools/tools/javac/diags/examples/InvalidYieldWarning.java + test/langtools/tools/javac/diags/examples/NoSwitchExpression.java + test/langtools/tools/javac/diags/examples/NoSwitchExpressionQualify.java + test/langtools/tools/javac/diags/examples/RestrictedTypeNotAllowedPreview.java ! test/langtools/tools/javac/diags/examples/SwitchExpressions.java ! test/langtools/tools/javac/diags/examples/VarNotAllowed.java ! test/langtools/tools/javac/diags/examples/VarNotAllowedArray.java ! test/langtools/tools/javac/diags/examples/VarNotAllowedCompound.java ! test/langtools/tools/javac/diags/examples/VarNotAllowedHere.java ! test/langtools/tools/javac/expswitch/ExpSwitchNestingTest.java ! test/langtools/tools/javac/lambda/deduplication/Deduplication.java ! test/langtools/tools/javac/lambda/deduplication/DeduplicationTest.java ! test/langtools/tools/javac/lib/DPrinter.java ! test/langtools/tools/javac/lvti/ParserTest.out ! test/langtools/tools/javac/lvti/ParserTest9.out ! test/langtools/tools/javac/lvti/badTypeReference/BadTypeReference.out ! test/langtools/tools/javac/parser/JavacParserTest.java ! test/langtools/tools/javac/switchexpr/BreakTest.java ! test/langtools/tools/javac/switchexpr/DefiniteAssignment1.java ! test/langtools/tools/javac/switchexpr/DefiniteAssignment2.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitch.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchBreaks1.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchBreaks2.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchBreaks2.out ! test/langtools/tools/javac/switchexpr/ExpressionSwitchBugs.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchDA.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchEmbedding.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchFallThrough.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchFallThrough1.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchFlow.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchInExpressionSwitch.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchInfer.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchNotExhaustive.java + test/langtools/tools/javac/switchexpr/ExpressionSwitchToString.java ! test/langtools/tools/javac/switchexpr/ExpressionSwitchUnreachable.java ! test/langtools/tools/javac/switchexpr/ParseIncomplete.java ! test/langtools/tools/javac/switchexpr/SwitchExpressionIsNotAConstant.java ! test/langtools/tools/javac/switchexpr/SwitchExpressionScopesIsolated.java ! test/langtools/tools/javac/switchexpr/SwitchExpressionSimpleVisitorTest.java ! test/langtools/tools/javac/switchexpr/TryCatch.java + test/langtools/tools/javac/switchexpr/WarnWrongYieldTest.java + test/langtools/tools/javac/switchexpr/WarnWrongYieldTest.out + test/langtools/tools/javac/switchexpr/WrongBreakTest.java + test/langtools/tools/javac/switchexpr/WrongBreakTest.out + test/langtools/tools/javac/switchexpr/WrongYieldTest.java + test/langtools/tools/javac/switchexpr/WrongYieldTest.out + test/langtools/tools/javac/switchextra/DefiniteAssignment1.java + test/langtools/tools/javac/switchextra/DefiniteAssignment2.java + test/langtools/tools/javac/switchextra/DefiniteAssignment2.out ! test/langtools/tools/javac/switchextra/MultipleLabelsExpression.java ! test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01.out ! test/langtools/tools/javac/var_implicit_lambda/VarInImplicitLambdaNegTest01_source10.out Changeset: ed12027517c0 Author: neliasso Date: 2019-02-14 14:54 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ed12027517c0 8224675: Late GC barrier insertion for ZGC Reviewed-by: roland, eosterlund, pliden ! src/hotspot/cpu/x86/gc/z/z_x86_64.ad ! src/hotspot/share/adlc/formssel.cpp ! src/hotspot/share/compiler/compilerDirectives.hpp ! src/hotspot/share/gc/shared/c2/barrierSetC2.hpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.hpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp ! src/hotspot/share/gc/z/c2/zBarrierSetC2.hpp ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/z_globals.hpp ! src/hotspot/share/opto/classes.hpp ! src/hotspot/share/opto/compile.cpp ! src/hotspot/share/opto/compile.hpp ! src/hotspot/share/opto/idealGraphPrinter.cpp ! src/hotspot/share/opto/idealGraphPrinter.hpp ! src/hotspot/share/opto/lcm.cpp ! src/hotspot/share/opto/loopnode.cpp ! src/hotspot/share/opto/loopnode.hpp ! src/hotspot/share/opto/loopopts.cpp ! src/hotspot/share/opto/memnode.cpp ! src/hotspot/share/opto/memnode.hpp ! src/hotspot/share/opto/node.cpp ! src/hotspot/share/opto/node.hpp ! src/hotspot/share/opto/phaseX.cpp ! src/hotspot/share/opto/phasetype.hpp ! src/hotspot/share/opto/vectornode.cpp ! src/hotspot/share/runtime/stackValue.cpp ! src/hotspot/share/utilities/growableArray.hpp Changeset: 871bc449ce06 Author: stefank Date: 2019-06-07 13:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/871bc449ce06 8223837: Add -XX:MinHeapSize flag to set the minimum heap size Reviewed-by: pliden, tschatzl ! src/hotspot/share/gc/shared/gcArguments.cpp ! src/hotspot/share/gc/shared/gcArguments.hpp ! src/hotspot/share/gc/shared/gc_globals.hpp ! src/hotspot/share/gc/shared/genArguments.cpp ! src/hotspot/share/gc/shared/jvmFlagConstraintsGC.cpp ! src/hotspot/share/gc/shared/jvmFlagConstraintsGC.hpp ! src/hotspot/share/runtime/arguments.cpp ! test/hotspot/jtreg/gc/arguments/TestMaxHeapSizeTools.java Changeset: 8081b181bba8 Author: dfuchs Date: 2019-06-10 11:17 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8081b181bba8 8224865: Replace wildcard address with loopback or local host in tests - part 13 Summary: Fixes intermittent failures observed in some network tests Reviewed-by: chegar ! test/jdk/com/sun/net/httpserver/Test1.java ! test/jdk/com/sun/net/httpserver/bugs/B6373555.java ! test/jdk/com/sun/net/httpserver/bugs/B6401598.java ! test/jdk/com/sun/net/httpserver/bugs/B6431193.java ! test/jdk/com/sun/net/httpserver/bugs/B6433018.java ! test/jdk/com/sun/net/httpserver/bugs/B8211420.java ! test/jdk/java/net/ResponseCache/Test2.java ! test/jdk/java/net/URL/GetContent.java ! test/jdk/sun/net/www/http/HttpClient/StreamingRetry.java ! test/jdk/sun/net/www/protocol/http/DigestTest.java ! test/jdk/sun/net/www/protocol/http/RelativeRedirect.java Changeset: 966a51af2986 Author: pliden Date: 2019-06-10 12:52 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/966a51af2986 8224966: ZGC: Don't skip oop verification in OopMapSet::all_do() Reviewed-by: stefank, eosterlund ! src/hotspot/share/compiler/oopMap.cpp Changeset: d60b24a09900 Author: pliden Date: 2019-06-10 12:52 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d60b24a09900 8225227: ZGC: Be exact in what load barrier to use in ZHeapIterator Reviewed-by: stefank ! src/hotspot/share/gc/z/zHeap.cpp ! src/hotspot/share/gc/z/zHeapIterator.cpp ! src/hotspot/share/gc/z/zHeapIterator.hpp Changeset: d8942f5d6c75 Author: weijun Date: 2019-06-10 20:38 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d8942f5d6c75 8221719: Jarsigner fails to verify signed by alias if alias given in wrong case Reviewed-by: weijun Contributed-by: Philipp Kunz ! src/jdk.jartool/share/classes/sun/security/tools/jarsigner/Main.java + test/jdk/sun/security/tools/jarsigner/JavaKeyStoreAliasCaseInsensitive.java Changeset: f72f801b00bd Author: hseigel Date: 2019-06-10 09:52 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f72f801b00bd 8224952: RI deviates from JVMS - non-zero minor_version for class files throws UnsupportedClassVersionError. Summary: Change the JVM to follow the JVM Spec and accept non-zero minor_version for appropriate older class file versions. Reviewed-by: acorn, dholmes, iignatyev ! src/hotspot/share/classfile/classFileParser.cpp ! test/hotspot/jtreg/runtime/ClassFile/PreviewVersion.java Changeset: 811df7c64724 Author: dpochepk Date: 2019-06-10 17:02 +0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/811df7c64724 8222412: AARCH64: multiple instructions encoding issues Reviewed-by: aph + src/hotspot/cpu/aarch64/aarch64-asmtest.py ! src/hotspot/cpu/aarch64/assembler_aarch64.cpp ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/register_aarch64.hpp Changeset: 4cf21c5c956a Author: dtitov Date: 2019-06-10 09:41 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4cf21c5c956a 8222828: vmTestbase/nsk/jdi/BScenarios/multithrd/tc02x004/TestDescription.java failed Reviewed-by: cjplummer, gadams, jcbeyler ! test/hotspot/jtreg/vmTestbase/nsk/jdi/BScenarios/multithrd/tc02x004.java Changeset: 218f5a414379 Author: zgu Date: 2019-06-10 13:42 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/218f5a414379 8225514: Shenandoah: ShenandoahCodeRoots should inherit from AllStatic Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.hpp Changeset: b76aee290002 Author: dnsimon Date: 2019-06-10 15:55 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b76aee290002 8225492: Update JVMCI Reviewed-by: iveresov, kvn ! src/hotspot/share/jvmci/jvmciRuntime.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.runtime/src/jdk/vm/ci/runtime/JVMCI.java Changeset: 040e1c6dab96 Author: darcy Date: 2019-06-10 15:53 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/040e1c6dab96 8225532: Update source enums to describe 12 and 13 language features Reviewed-by: jjg ! src/java.compiler/share/classes/javax/lang/model/SourceVersion.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java Changeset: c6498066a0a5 Author: smarks Date: 2019-06-10 17:33 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c6498066a0a5 8205131: remove Runtime trace methods Reviewed-by: lancea, rriggs, iklam ! src/java.base/share/classes/java/lang/Runtime.java ! test/jaxp/javax/xml/jaxp/unittest/transform/ProcessXSLT.java ! test/jdk/java/rmi/activation/CommandEnvironment/SetChildEnv.java ! test/jdk/sun/rmi/log/ReliableLog/Recovery.java Changeset: 670b4794f51e Author: iignatyev Date: 2019-06-10 17:11 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/670b4794f51e 8209917: fix TODO in GatherDiagnosticInfoObserver Reviewed-by: jjg, dholmes ! test/failure_handler/src/share/classes/jdk/test/failurehandler/jtreg/GatherDiagnosticInfoObserver.java Changeset: ddda023e6f66 Author: neliasso Date: 2019-06-11 09:27 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ddda023e6f66 8225509: clean_catch_blocks must add preds first Reviewed-by: kvn ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp Changeset: bc5baf205475 Author: mdoerr Date: 2019-06-11 09:51 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/bc5baf205475 8224826: Implement fast class initialization checks on PPC64 Reviewed-by: vlivanov, gromero ! src/hotspot/cpu/ppc/c1_LIRAssembler_ppc.cpp ! src/hotspot/cpu/ppc/interp_masm_ppc.hpp ! src/hotspot/cpu/ppc/interp_masm_ppc_64.cpp ! src/hotspot/cpu/ppc/macroAssembler_ppc.cpp ! src/hotspot/cpu/ppc/macroAssembler_ppc.hpp ! src/hotspot/cpu/ppc/ppc.ad ! src/hotspot/cpu/ppc/sharedRuntime_ppc.cpp ! src/hotspot/cpu/ppc/templateTable_ppc_64.cpp ! src/hotspot/cpu/ppc/vm_version_ppc.hpp Changeset: fc4042870cc4 Author: chegar Date: 2019-06-11 09:21 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fc4042870cc4 8225426: Replace plain with system-default in Socket and ServerSocket Reviewed-by: alanb, dfuchs ! src/java.base/share/classes/java/net/ServerSocket.java ! src/java.base/share/classes/java/net/Socket.java Changeset: b42cadf7eb4a Author: rraghavan Date: 2019-06-11 14:33 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b42cadf7eb4a 8225567: Wrong file headers with 8202414 fix changeset Summary: Corrected source file headers Reviewed-by: thartmann ! src/hotspot/share/opto/memnode.cpp ! test/hotspot/jtreg/compiler/c2/Test8202414.java Changeset: 24c59b1579d7 Author: eosterlund Date: 2019-06-11 10:55 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/24c59b1579d7 8224871: os::attempt_reserve_memory_at() tries too hard Reviewed-by: pliden, coleenp, stuefe ! src/hotspot/os/bsd/os_bsd.cpp ! src/hotspot/os/linux/os_linux.cpp ! src/hotspot/os/solaris/os_solaris.cpp Changeset: 50270ff05a65 Author: neliasso Date: 2019-06-11 12:39 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/50270ff05a65 8225564: Remove wrong assert in clean_catch_blocks Reviewed-by: thartmann ! src/hotspot/share/gc/z/c2/zBarrierSetC2.cpp Changeset: 27e810f1f8a3 Author: dholmes Date: 2019-06-11 08:03 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/27e810f1f8a3 8225568: ProblemList compiler/compilercontrol/jcmd/ClearDirectivesFileStackTest.java Reviewed-by: thartmann ! test/hotspot/jtreg/ProblemList.txt Changeset: d9a157f6fd71 Author: coleenp Date: 2019-06-11 07:31 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d9a157f6fd71 8224847: gc/stress/TestReclaimStringsLeaksMemory.java fails with reserved greater than expected Summary: Rehash threshold was too low for StringTable, and rehashed size table was too large. Reviewed-by: rehn, gziemski ! src/hotspot/share/classfile/stringTable.cpp ! src/hotspot/share/classfile/symbolTable.cpp ! test/hotspot/jtreg/ProblemList.txt ! test/hotspot/jtreg/gc/stress/TestReclaimStringsLeaksMemory.java Changeset: 03af124751f5 Author: aph Date: 2019-06-10 10:11 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/03af124751f5 8225429: Regression in disassembly quality Reviewed-by: never ! src/hotspot/share/asm/codeBuffer.hpp ! src/hotspot/share/compiler/abstractDisassembler.cpp ! src/hotspot/share/compiler/disassembler.cpp Changeset: 1fef7d9309a9 Author: dfuchs Date: 2019-06-11 15:46 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1fef7d9309a9 8225512: Replace wildcard address with loopback or local host in tests - part 15 Summary: Updates httpserver tests to use the loopback instead of the wildcard wherever possible. Reviewed-by: michaelm ! test/jdk/com/sun/net/httpserver/MissingTrailingSpace.java ! test/jdk/com/sun/net/httpserver/Test10.java ! test/jdk/com/sun/net/httpserver/Test11.java ! test/jdk/com/sun/net/httpserver/Test12.java ! test/jdk/com/sun/net/httpserver/Test13.java ! test/jdk/com/sun/net/httpserver/Test14.java ! test/jdk/com/sun/net/httpserver/Test2.java ! test/jdk/com/sun/net/httpserver/Test3.java ! test/jdk/com/sun/net/httpserver/Test4.java ! test/jdk/com/sun/net/httpserver/Test5.java ! test/jdk/com/sun/net/httpserver/Test6.java ! test/jdk/com/sun/net/httpserver/Test7.java ! test/jdk/com/sun/net/httpserver/Test7a.java ! test/jdk/com/sun/net/httpserver/Test8.java ! test/jdk/com/sun/net/httpserver/Test8a.java ! test/jdk/com/sun/net/httpserver/Test9.java ! test/jdk/com/sun/net/httpserver/Test9a.java ! test/jdk/com/sun/net/httpserver/TestLogging.java ! test/jdk/com/sun/net/httpserver/bugs/B6339483.java ! test/jdk/com/sun/net/httpserver/bugs/B6341616.java ! test/jdk/com/sun/net/httpserver/bugs/B6393710.java ! test/jdk/com/sun/net/httpserver/bugs/B6526158.java ! test/jdk/com/sun/net/httpserver/bugs/B6526913.java ! test/jdk/com/sun/net/httpserver/bugs/B6529200.java ! test/jdk/com/sun/net/httpserver/bugs/B6744329.java ! test/jdk/com/sun/net/httpserver/bugs/B6886436.java ! test/jdk/com/sun/net/httpserver/bugs/FixedLengthInputStream.java ! test/jdk/com/sun/net/httpserver/bugs/HeadTest.java ! test/jdk/com/sun/net/httpserver/bugs/TruncatedRequestBody.java Changeset: dbf5cda9843d Author: lancea Date: 2019-06-11 13:04 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/dbf5cda9843d 8225189: Multiple JNI calls within critical region in ZIP Library Reviewed-by: alanb ! src/java.base/share/native/libzip/Deflater.c ! src/java.base/share/native/libzip/Inflater.c Changeset: f492567244ab Author: valeriep Date: 2019-06-11 21:30 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f492567244ab 8080462: Update SunPKCS11 provider with PKCS11 v2.40 support Summary: Added support for GCM, PSS, and other mechanisms Reviewed-by: jnimeh + src/java.base/share/classes/sun/security/util/GCMParameters.java + src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11AEADCipher.java + src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11PSSSignature.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/P11RSACipher.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/SunPKCS11.java + src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/CK_CCM_PARAMS.java + src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/CK_GCM_PARAMS.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/CK_MECHANISM.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/CK_RSA_PKCS_PSS_PARAMS.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/Functions.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/PKCS11.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/PKCS11Constants.java ! src/jdk.crypto.cryptoki/share/classes/sun/security/pkcs11/wrapper/PKCS11Exception.java ! src/jdk.crypto.cryptoki/share/legal/pkcs11cryptotoken.md ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_convert.c ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_crypt.c ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_digest.c ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_general.c ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_keymgmt.c ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_mutex.c ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_sign.c ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_util.c - src/jdk.crypto.cryptoki/share/native/libj2pkcs11/pkcs-11v2-20a3.h ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/pkcs11.h ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/pkcs11f.h ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/pkcs11t.h ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/pkcs11wrapper.h + test/jdk/sun/security/pkcs11/Cipher/Test4512704.java + test/jdk/sun/security/pkcs11/Cipher/TestCICOWithGCM.java + test/jdk/sun/security/pkcs11/Cipher/TestCICOWithGCMAndAAD.java + test/jdk/sun/security/pkcs11/Cipher/TestGCMKeyAndIvCheck.java + test/jdk/sun/security/pkcs11/Cipher/TestKATForGCM.java ! test/jdk/sun/security/pkcs11/MessageDigest/ByteBuffers.java + test/jdk/sun/security/pkcs11/Signature/InitAgainPSS.java + test/jdk/sun/security/pkcs11/Signature/KeyAndParamCheckForPSS.java + test/jdk/sun/security/pkcs11/Signature/SigInteropPSS.java + test/jdk/sun/security/pkcs11/Signature/SignatureTestPSS.java + test/jdk/sun/security/pkcs11/Signature/TestDSA2.java Changeset: 75f47593d244 Author: jjg Date: 2019-06-11 14:56 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/75f47593d244 8214399: Javap -help should provide information about --multi-release option Reviewed-by: jlahoda ! src/jdk.jdeps/share/classes/com/sun/tools/javap/JavapTask.java ! src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap.properties Changeset: ff74a3c584e5 Author: iignatyev Date: 2019-06-11 14:59 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ff74a3c584e5 8066173: compiler/types/correctness/OffTest.java failed with assert Reviewed-by: kvn ! test/hotspot/jtreg/ProblemList.txt Changeset: f7cc25dda38a Author: zgu Date: 2019-06-11 19:15 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f7cc25dda38a 8225572: Shenandoah: Move JNIHandles root out of serial roots Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.hpp Changeset: c2398053ee90 Author: ascarpino Date: 2019-06-11 16:31 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c2398053ee90 8211018: Session Resumption without Server-Side State Reviewed-by: xuelei, jnimeh, jjiang ! src/java.base/share/classes/sun/security/ssl/ClientHello.java ! src/java.base/share/classes/sun/security/ssl/Finished.java ! src/java.base/share/classes/sun/security/ssl/HandshakeContext.java ! src/java.base/share/classes/sun/security/ssl/NewSessionTicket.java ! src/java.base/share/classes/sun/security/ssl/PreSharedKeyExtension.java ! src/java.base/share/classes/sun/security/ssl/SSLContextImpl.java ! src/java.base/share/classes/sun/security/ssl/SSLExtension.java ! src/java.base/share/classes/sun/security/ssl/SSLHandshake.java ! src/java.base/share/classes/sun/security/ssl/SSLSessionContextImpl.java ! src/java.base/share/classes/sun/security/ssl/SSLSessionImpl.java ! src/java.base/share/classes/sun/security/ssl/ServerHello.java ! src/java.base/share/classes/sun/security/ssl/SessionId.java + src/java.base/share/classes/sun/security/ssl/SessionTicketExtension.java ! src/java.base/share/classes/sun/security/ssl/TransportContext.java ! test/jdk/javax/net/ssl/DTLS/PacketLossRetransmission.java ! test/jdk/javax/net/ssl/SSLSession/SSLCtxAccessToSessCtx.java ! test/jdk/sun/security/ssl/DHKeyExchange/DHEKeySizing.java ! test/jdk/sun/security/ssl/SSLSessionImpl/ResumeChecksClient.java + test/jdk/sun/security/ssl/SSLSessionImpl/ResumeChecksClientStateless.java ! test/jdk/sun/security/ssl/SSLSessionImpl/ResumeChecksServer.java + test/jdk/sun/security/ssl/SSLSessionImpl/ResumeChecksServerStateless.java Changeset: ae3dbc712839 Author: darcy Date: 2019-06-11 17:20 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ae3dbc712839 7086604: (reflect) Clarifications to javadoc for getGeneric*Type methods in j.l.r Reviewed-by: lancea, abuckley ! src/java.base/share/classes/java/lang/Class.java ! src/java.base/share/classes/java/lang/reflect/Executable.java ! src/java.base/share/classes/java/lang/reflect/Field.java ! src/java.base/share/classes/java/lang/reflect/Method.java ! src/java.base/share/classes/java/lang/reflect/TypeVariable.java Changeset: 755e82641224 Author: sangheki Date: 2019-06-12 10:34 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/755e82641224 8225478: Make G1CMRootRegions independent of HeapRegions Summary: Remove dependency of HeapRegion from G1CMRootRegions class Reviewed-by: tschatzl, kbarrett ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.cpp ! src/hotspot/share/gc/g1/g1ConcurrentMark.hpp ! src/hotspot/share/memory/memRegion.hpp Changeset: 0530705ca300 Author: hannesw Date: 2019-06-12 13:21 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0530705ca300 8223364: Bad placement of anchor relative to header Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeFieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/AnnotationTypeRequiredMemberWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/ConstructorWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/EnumConstantWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/FieldWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/MethodWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/PropertyWriterImpl.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/Links.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css ! test/langtools/jdk/javadoc/doclet/testAnnotationTypes/TestAnnotationTypes.java ! test/langtools/jdk/javadoc/doclet/testHref/TestHref.java ! test/langtools/jdk/javadoc/doclet/testHtmlVersion/TestHtmlVersion.java ! test/langtools/jdk/javadoc/doclet/testInterface/TestInterface.java ! test/langtools/jdk/javadoc/doclet/testJavaFX/TestJavaFX.java ! test/langtools/jdk/javadoc/doclet/testMemberSummary/TestMemberSummary.java ! test/langtools/jdk/javadoc/doclet/testOptions/TestOptions.java ! test/langtools/jdk/javadoc/doclet/testOrdering/TestOrdering.java ! test/langtools/jdk/javadoc/doclet/testOverriddenMethods/TestBadOverride.java ! test/langtools/jdk/javadoc/doclet/testSummaryTag/TestSummaryTag.java ! test/langtools/jdk/javadoc/doclet/testTypeParams/TestTypeParameters.java Changeset: ef577fa0dd10 Author: jlahoda Date: 2019-06-12 13:49 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ef577fa0dd10 8220018: javac crash when compiling try-catch-finally inside switch expression Summary: Correcting handling of finally that yields from a switch expression. Reviewed-by: mcimadamore, jlahoda ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Gen.java + test/langtools/tools/javac/switchexpr/TryCatchFinally.java Changeset: c63b9b87c28a Author: thartmann Date: 2019-06-12 14:06 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c63b9b87c28a 8224658: Unsafe access C2 compile fails with assert(flat != TypePtr::BOTTOM) failed: cannot alias-analyze an untyped ptr: adr_type = NULL Summary: Handle unsafe off-heap access with constant zero address. Reviewed-by: vlivanov, roland ! src/hotspot/share/opto/graphKit.hpp ! src/hotspot/share/opto/library_call.cpp ! src/hotspot/share/opto/memnode.cpp ! src/hotspot/share/opto/output.cpp + test/hotspot/jtreg/compiler/unsafe/TestUnsafeLoadWithZeroAddress.java Changeset: 596ae6c3ef6f Author: mdoerr Date: 2019-06-12 14:21 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/596ae6c3ef6f 8223249: [s390] Cleanup TemplateInterpreterGenerator::generate_fixed_frame Reviewed-by: coleenp, gromero ! src/hotspot/cpu/s390/interp_masm_s390.cpp ! src/hotspot/cpu/s390/macroAssembler_s390.cpp ! src/hotspot/cpu/s390/macroAssembler_s390.hpp ! src/hotspot/cpu/s390/templateInterpreterGenerator_s390.cpp Changeset: 03d417fd7d9a Author: mdoerr Date: 2019-06-12 14:22 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/03d417fd7d9a 8224827: Implement fast class initialization checks on s390 Reviewed-by: vlivanov, gromero ! src/hotspot/cpu/s390/c1_LIRAssembler_s390.cpp ! src/hotspot/cpu/s390/interp_masm_s390.cpp ! src/hotspot/cpu/s390/interp_masm_s390.hpp ! src/hotspot/cpu/s390/macroAssembler_s390.cpp ! src/hotspot/cpu/s390/macroAssembler_s390.hpp ! src/hotspot/cpu/s390/s390.ad ! src/hotspot/cpu/s390/sharedRuntime_s390.cpp ! src/hotspot/cpu/s390/templateTable_s390.cpp ! src/hotspot/cpu/s390/vm_version_s390.hpp Changeset: 0c20dbc3d547 Author: mdoerr Date: 2019-06-12 14:24 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0c20dbc3d547 8224090: [PPC64] Fix SLP patterns for filling an array with double float literals Reviewed-by: mdoerr, simonis Contributed-by: Kazunori Ogata ! src/hotspot/cpu/ppc/ppc.ad Changeset: 492b644bb9c2 Author: dcubed Date: 2019-06-12 10:52 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/492b644bb9c2 8225453: is_busy diagnostics and other baseline cleanups from Async Monitor Deflation project Reviewed-by: dholmes, rehn, coleenp ! src/hotspot/share/runtime/objectMonitor.cpp ! src/hotspot/share/runtime/objectMonitor.hpp ! src/hotspot/share/runtime/objectMonitor.inline.hpp ! src/hotspot/share/runtime/synchronizer.cpp Changeset: 730ed3fc6605 Author: chegar Date: 2019-06-12 16:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/730ed3fc6605 8225651: Missed the `@` in a couple of code tags of SocketImpl Reviewed-by: alanb, dfuchs ! src/java.base/share/classes/java/net/SocketImpl.java Changeset: 466d6e2d2ddf Author: kvn Date: 2019-06-12 10:37 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/466d6e2d2ddf 8223796: JVMCIEnv::get_jvmci_type does not keep klasses alive Reviewed-by: iveresov, eosterlund ! src/hotspot/share/jvmci/jvmciEnv.cpp Changeset: d109188f6480 Author: ccheung Date: 2019-06-12 10:45 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d109188f6480 8224710: [TESTBUG] dynamicArchive/ExcludedClasses.java test failed in tier6 testing on Windows Summary: Account for the failure in loading of the base archive in CDSTestUtils::isUnableToMap(). Reviewed-by: jiangli, iklam ! src/hotspot/share/memory/metaspace.cpp ! test/lib/jdk/test/lib/cds/CDSTestUtils.java Changeset: 139f21bad9fd Author: iignatyev Date: 2019-06-12 11:48 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/139f21bad9fd 8158048: Fix failure message from jtreg gtest wrapper Reviewed-by: kvn, mseledtsov + test/hotspot/jtreg/gtest/GTestResultParser.java ! test/hotspot/jtreg/gtest/GTestWrapper.java Changeset: 1224b16c8ff4 Author: epavlova Date: 2019-06-12 12:31 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1224b16c8ff4 8225622: [AOT] runtime/SharedArchiveFile/TestInterpreterMethodEntries.java crashed with AOTed java.base Reviewed-by: kvn ! test/hotspot/jtreg/runtime/SharedArchiveFile/TestInterpreterMethodEntries.java Changeset: 8038250f9939 Author: darcy Date: 2019-06-12 14:14 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8038250f9939 8225675: Outdated citation of JLS in java.lang.ref.Reference Reviewed-by: lancea, jjg, mchung ! src/java.base/share/classes/java/lang/ref/Reference.java Changeset: 1357c4996b2e Author: hannesw Date: 2019-06-12 23:21 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1357c4996b2e 8225671: Support HTML 5 character references in javadoc Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/tools/doclint/Entity.java ! src/jdk.compiler/share/classes/jdk/internal/shellsupport/doc/JavadocFormatter.java ! test/langtools/tools/doclint/CoverageExtras.java ! test/langtools/tools/doclint/html/EntitiesTest.java ! test/langtools/tools/doclint/html/EntitiesTest.out Changeset: 946f7f2d321c Author: wetmore Date: 2019-06-12 18:58 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/946f7f2d321c 8171279: Support X25519 and X448 in TLS Reviewed-by: xuelei, mullan ! src/java.base/share/classes/sun/security/ssl/CipherSuite.java ! src/java.base/share/classes/sun/security/ssl/DHClientKeyExchange.java ! src/java.base/share/classes/sun/security/ssl/DHKeyExchange.java ! src/java.base/share/classes/sun/security/ssl/DHServerKeyExchange.java ! src/java.base/share/classes/sun/security/ssl/ECDHClientKeyExchange.java ! src/java.base/share/classes/sun/security/ssl/ECDHKeyExchange.java ! src/java.base/share/classes/sun/security/ssl/ECDHServerKeyExchange.java ! src/java.base/share/classes/sun/security/ssl/ECPointFormatsExtension.java ! src/java.base/share/classes/sun/security/ssl/HandshakeContext.java + src/java.base/share/classes/sun/security/ssl/KAKeyDerivation.java ! src/java.base/share/classes/sun/security/ssl/KeyShareExtension.java + src/java.base/share/classes/sun/security/ssl/NamedGroup.java + src/java.base/share/classes/sun/security/ssl/NamedGroupCredentials.java + src/java.base/share/classes/sun/security/ssl/NamedGroupPossession.java ! src/java.base/share/classes/sun/security/ssl/SSLExtension.java ! src/java.base/share/classes/sun/security/ssl/SSLKeyExchange.java ! src/java.base/share/classes/sun/security/ssl/SSLSocketInputRecord.java ! src/java.base/share/classes/sun/security/ssl/SignatureScheme.java ! src/java.base/share/classes/sun/security/ssl/SupportedGroupsExtension.java ! src/java.base/share/classes/sun/security/ssl/TransportContext.java ! src/java.base/share/classes/sun/security/ssl/Utilities.java ! src/java.base/share/classes/sun/security/ssl/X509Authentication.java + src/java.base/share/classes/sun/security/ssl/XDHKeyExchange.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/XDHKeyAgreement.java ! src/jdk.crypto.ec/share/classes/sun/security/ec/XECParameters.java ! test/jdk/javax/net/ssl/templates/SSLSocketTemplate.java + test/jdk/sun/security/ssl/CipherSuite/SupportedGroups.java Changeset: 74f0622db875 Author: weijun Date: 2019-06-13 10:06 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/74f0622db875 6722928: Support SSPI as a native GSS-API provider Reviewed-by: erikj, nwilliams, valeriep ! make/lib/Lib-java.security.jgss.gmk ! src/java.security.jgss/share/classes/sun/security/jgss/spnego/NegTokenTarg.java ! src/java.security.jgss/share/classes/sun/security/jgss/wrapper/SunNativeProvider.java ! src/java.security.jgss/share/native/libj2gss/GSSLibStub.c ! src/java.security.jgss/share/native/libj2gss/NativeFunc.h ! src/java.security.jgss/share/native/libj2gss/NativeUtil.h ! src/java.security.jgss/share/native/libj2gss/gssapi.h + src/java.security.jgss/windows/native/libsspi_bridge/sspi.cpp Changeset: bd2f0954cbb9 Author: iignatyev Date: 2019-06-12 21:17 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/bd2f0954cbb9 8208236: [TESTBUG] vmTestbase/nsk/stress/stack tests fail by timeout Reviewed-by: dholmes ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack001.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack002.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack003.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack004.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack005.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack006.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack007.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack008.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack009.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack010.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack011.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack012.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack013.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack014.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack015.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack016.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack017.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack018.java ! test/hotspot/jtreg/vmTestbase/nsk/stress/stack/stack019.java Changeset: 03c98877f3bd Author: iignatyev Date: 2019-06-12 17:22 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/03c98877f3bd 8225676: cleanup hotspot ProblemList Reviewed-by: dholmes ! test/hotspot/jtreg/ProblemList-graal.txt ! test/hotspot/jtreg/ProblemList.txt Changeset: 6c8d5d0e1be4 Author: tnakamura Date: 2019-06-13 08:42 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6c8d5d0e1be4 8224184: jshell got IOException at exiting with AIX Reviewed-by: rfield, jlahoda ! src/jdk.internal.le/share/classes/jdk/internal/org/jline/terminal/impl/ExecPty.java + test/langtools/jdk/jshell/ExecPtyGetFlagsToSetTest.java Changeset: 28f4594b19c2 Author: ronsh Date: 2019-06-13 08:42 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/28f4594b19c2 8224161: Check.checkOverrideClashes n^2 algorithm Summary: Caching type's members in Check.checkOverrideClashes to improve performance. Reviewed-by: mcimadamore, jlahoda ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java Changeset: ef91ba2e6cff Author: ssadetsky Date: 2019-06-03 08:13 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ef91ba2e6cff 8196096: javax/swing/JPopupMenu/6580930/bug6580930.java fails Reviewed-by: serb ! test/jdk/ProblemList.txt ! test/jdk/javax/swing/JPopupMenu/6580930/bug6580930.java Changeset: 72bdfcf4cfb5 Author: psadhukhan Date: 2019-06-04 14:23 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/72bdfcf4cfb5 Merge Changeset: ed5c7d68ed5a Author: psadhukhan Date: 2019-06-04 14:43 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ed5c7d68ed5a 8224876: javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedPerPixelTranslucentGradient.java fails on linux-x64 Reviewed-by: serb, jdv ! test/jdk/javax/swing/JWindow/ShapedAndTranslucentWindows/Common.java Changeset: 37819ad0ac6f Author: ant Date: 2019-06-06 15:46 +0300 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/37819ad0ac6f 8225118: Robot.createScreenCapture() returns black image on HiDPI linux with gtk3 Reviewed-by: serb ! src/java.desktop/unix/native/libawt_xawt/awt/gtk3_interface.c ! src/java.desktop/unix/native/libawt_xawt/awt/gtk3_interface.h ! test/jdk/java/awt/Robot/HiDPIScreenCapture/HiDPIRobotScreenCaptureTest.java Changeset: f680bedc0dcb Author: prr Date: 2019-06-07 09:38 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f680bedc0dcb Merge - make/CreateBuildJdkCopy.gmk - src/java.base/share/lib/security/cacerts ! test/jdk/ProblemList.txt Changeset: 13ec0d88815b Author: serb Date: 2019-06-09 14:12 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/13ec0d88815b 8222083: Support of "64-bit IEEE floating point" encoding for the AU file format Reviewed-by: prr ! src/java.desktop/share/classes/com/sun/media/sound/AuFileFormat.java ! src/java.desktop/share/classes/com/sun/media/sound/AuFileReader.java + test/jdk/javax/sound/sampled/spi/AudioFileReader/RecognizeAuFloat.java Changeset: fe6404b8394a Author: serb Date: 2019-06-09 17:46 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fe6404b8394a 8223045: GraphicsEnvironment does not detect resolution changes in multiscreen systems Reviewed-by: prr ! src/java.desktop/unix/native/libawt_xawt/awt/awt_GraphicsEnv.c Changeset: de1d2a535c08 Author: psadhukhan Date: 2019-06-10 10:52 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/de1d2a535c08 8225368: broken links in java.desktop files Reviewed-by: serb ! src/java.desktop/share/classes/java/awt/Font.java ! src/java.desktop/share/classes/java/awt/FontMetrics.java ! src/java.desktop/share/classes/java/awt/doc-files/DesktopProperties.html ! src/java.desktop/share/classes/javax/imageio/metadata/doc-files/tiff_metadata.html ! src/java.desktop/share/classes/javax/print/DocFlavor.java ! src/java.desktop/share/classes/javax/print/attribute/package-info.java Changeset: f85fa2fc78c2 Author: psadhukhan Date: 2019-06-11 11:01 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f85fa2fc78c2 8225511: javax/swing/JWindow/ShapedAndTranslucentWindows/ShapedTranslucentPerPixelTranslucentGradient.java fails in linux-x64 Reviewed-by: serb, prr ! test/jdk/javax/swing/JWindow/ShapedAndTranslucentWindows/Common.java Changeset: 3467ea483f09 Author: serb Date: 2019-06-11 10:15 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3467ea483f09 8225144: [macos] In Aqua L&F backspace key does not delete when Shift is pressed Reviewed-by: psadhukhan ! src/java.desktop/macosx/classes/com/apple/laf/AquaKeyBindings.java + test/jdk/javax/swing/text/JTextComponent/6361367/bug6361367.java Changeset: 18629738b64b Author: prr Date: 2019-06-11 10:34 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/18629738b64b 8217731: Font rendering and glyph spacing changed from jdk-8 to jdk-11 Reviewed-by: serb, neugens ! src/java.desktop/share/native/libfontmanager/freetypeScaler.c Changeset: ad93c5329cac Author: serb Date: 2019-06-11 16:23 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ad93c5329cac 8221246: NullPointerException within Win32ShellFolder2 Reviewed-by: prr ! src/java.desktop/windows/classes/sun/awt/shell/Win32ShellFolderManager2.java Changeset: 9cb499911646 Author: prr Date: 2019-06-11 17:15 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9cb499911646 8225487: giflib legal file is missing attribution for openbsd-reallocarray.c Reviewed-by: serb, kcr ! src/java.desktop/share/legal/giflib.md Changeset: 5d5fccc4fd3f Author: psadhukhan Date: 2019-06-12 10:02 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5d5fccc4fd3f Merge - src/jdk.crypto.cryptoki/share/native/libj2pkcs11/pkcs-11v2-20a3.h - test/hotspot/jtreg/compiler/jsr292/NonInlinedCall/GCTest.java - test/langtools/tools/javac/diags/examples/BreakAmbiguousTarget.java - test/langtools/tools/javac/diags/examples/BreakComplexValueNoSwitchExpression.java - test/langtools/tools/javac/diags/examples/BreakExprNotImmediate.java - test/langtools/tools/javac/diags/examples/BreakMissingValue.java Changeset: 59642852dee0 Author: psadhukhan Date: 2019-06-13 11:31 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/59642852dee0 Merge Changeset: 5c4f1b7c753b Author: psadhukhan Date: 2019-06-13 12:22 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5c4f1b7c753b Merge Changeset: 96c7427456f9 Author: michaelm Date: 2019-06-13 09:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/96c7427456f9 8216417: cleanup of IPv6 scope-id handling Reviewed-by: alanb, chegar, dfuchs ! src/java.base/share/classes/java/net/AbstractPlainDatagramSocketImpl.java ! src/java.base/share/classes/java/net/AbstractPlainSocketImpl.java ! src/java.base/share/classes/java/net/Inet6Address.java ! src/java.base/share/classes/sun/net/util/IPAddressUtil.java ! src/java.base/share/classes/sun/nio/ch/DatagramChannelImpl.java ! src/java.base/share/classes/sun/nio/ch/Net.java ! src/java.base/share/native/libnet/Inet6Address.c ! src/java.base/share/native/libnet/net_util.h ! src/java.base/unix/classes/java/net/PlainDatagramSocketImpl.java ! src/java.base/unix/native/libnet/Inet6AddressImpl.c ! src/java.base/unix/native/libnet/PlainDatagramSocketImpl.c ! src/java.base/unix/native/libnet/PlainSocketImpl.c ! src/java.base/unix/native/libnet/net_util_md.c ! src/java.base/unix/native/libnet/net_util_md.h ! src/java.base/windows/classes/java/net/DualStackPlainDatagramSocketImpl.java ! src/java.base/windows/classes/java/net/TwoStacksPlainDatagramSocketImpl.java ! src/java.base/windows/native/libnet/TwoStacksPlainDatagramSocketImpl.c ! src/java.base/windows/native/libnet/net_util_md.c ! test/jdk/ProblemList.txt + test/jdk/java/net/Inet6Address/Scoping.java + test/jdk/java/net/MulticastSocket/PromiscuousIPv6.java ! test/jdk/java/net/ipv6tests/B6521014.java + test/jdk/java/nio/channels/DatagramChannel/PromiscuousIPv6.java Changeset: 0f38ab93a53c Author: mdoerr Date: 2019-06-13 11:12 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0f38ab93a53c 8225663: [testbug] Missing JNIEXPORT in XAbortProvoker native function Reviewed-by: mbaesken, gromero, kvn ! test/hotspot/jtreg/compiler/testlibrary/rtm/libXAbortProvoker.c Changeset: f48d3bec75ba Author: tschatzl Date: 2019-06-13 11:54 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f48d3bec75ba 8225418: G1: region attribute remembered set state disagrees with actual remembered set state Summary: Keep remembered set update information when updating region attributes when abandoning the remaining collection set after mixed gc. Reviewed-by: kbarrett, mdoerr ! src/hotspot/share/gc/g1/g1CollectedHeap.cpp ! src/hotspot/share/gc/g1/g1CollectedHeap.hpp ! src/hotspot/share/gc/g1/g1CollectionSet.cpp Changeset: bd613b97c7c8 Author: egahlin Date: 2019-06-13 12:27 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/bd613b97c7c8 8220657: JFR.dump does not work when filename is set Reviewed-by: ysuenaga ! src/jdk.jfr/share/classes/jdk/jfr/internal/PlatformRecording.java ! src/jdk.jfr/share/classes/jdk/jfr/internal/dcmd/DCmdDump.java + test/jdk/jdk/jfr/jcmd/TestJcmdDumpWithFileName.java Changeset: 865775b86780 Author: smonteith Date: 2019-06-13 15:24 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/865775b86780 8214527: ZGC for Aarch64 Summary: Implement ZGC for AArch64 Reviewed-by: aph, pliden, eosterlund, rkennke, shade, njian, adinn ! make/autoconf/hotspot.m4 ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp + src/hotspot/cpu/aarch64/gc/z/zBarrierSetAssembler_aarch64.cpp + src/hotspot/cpu/aarch64/gc/z/zBarrierSetAssembler_aarch64.hpp + src/hotspot/cpu/aarch64/gc/z/z_aarch64.ad ! src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zArguments_linux_aarch64.cpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zBackingFile_linux_aarch64.cpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zBackingFile_linux_aarch64.hpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zBackingPath_linux_aarch64.cpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zBackingPath_linux_aarch64.hpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zGlobals_linux_aarch64.cpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zGlobals_linux_aarch64.hpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zPhysicalMemoryBacking_linux_aarch64.cpp + src/hotspot/os_cpu/linux_aarch64/gc/z/zPhysicalMemoryBacking_linux_aarch64.hpp Changeset: 22b3b7983ada Author: weijun Date: 2019-06-13 23:53 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/22b3b7983ada 8225180: SignedObject with invalid Key not throwing the InvalidKeyException in Windows Reviewed-by: mullan ! src/jdk.crypto.mscapi/windows/classes/sun/security/mscapi/CSignature.java + test/jdk/sun/security/mscapi/NullKey.java Changeset: 7c9151c7dc40 Author: jwilhelm Date: 2019-06-13 18:02 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7c9151c7dc40 Added tag jdk-14+0 for changeset 22b3b7983ada ! .hgtags Changeset: 30b1b7b4dd86 Author: darcy Date: 2019-06-11 16:45 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/30b1b7b4dd86 8214546: Start of release updates for JDK 14 8214547: Add SourceVersion.RELEASE_14 8214548: Add source 14 and target 14 to javac 8214549: Bump maximum recognized class file version to 58 for JDK 14 Reviewed-by: jjg, mikael, erikj, jlahoda, dholmes ! make/autoconf/version-numbers + make/data/symbols/java.base-D.sym.txt + make/data/symbols/java.compiler-D.sym.txt + make/data/symbols/java.desktop-D.sym.txt + make/data/symbols/java.management-D.sym.txt + make/data/symbols/java.management.rmi-D.sym.txt + make/data/symbols/java.net.http-D.sym.txt + make/data/symbols/java.xml-D.sym.txt + make/data/symbols/java.xml.crypto-D.sym.txt + make/data/symbols/jdk.compiler-D.sym.txt + make/data/symbols/jdk.httpserver-D.sym.txt + make/data/symbols/jdk.javadoc-D.sym.txt + make/data/symbols/jdk.jlink-D.sym.txt + make/data/symbols/jdk.jshell-D.sym.txt ! make/data/symbols/symbols ! src/hotspot/share/classfile/classFileParser.cpp ! src/java.base/share/classes/com/sun/java/util/jar/pack/Constants.java ! src/java.base/share/classes/jdk/internal/module/ModuleInfo.java ! src/java.base/share/classes/jdk/internal/org/objectweb/asm/ClassReader.java ! src/java.base/share/classes/jdk/internal/org/objectweb/asm/Opcodes.java ! src/java.compiler/share/classes/javax/lang/model/SourceVersion.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor9.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor9.java ! src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor9.java ! src/java.compiler/share/classes/javax/lang/model/util/ElementKindVisitor9.java ! src/java.compiler/share/classes/javax/lang/model/util/ElementScanner9.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor9.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor9.java ! src/java.compiler/share/classes/javax/lang/model/util/SimpleTypeVisitor9.java ! src/java.compiler/share/classes/javax/lang/model/util/TypeKindVisitor9.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Source.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassFile.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Profile.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/Target.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/processing/PrintingProcessor.java ! src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.replacements/src/org/graalvm/compiler/replacements/classfile/Classfile.java ! src/jdk.rmic/share/classes/sun/tools/java/RuntimeConstants.java ! test/hotspot/jtreg/runtime/CommandLine/VMDeprecatedOptions.java ! test/jdk/java/lang/module/ClassFileVersionsTest.java ! test/langtools/tools/javac/api/T6395981.java ! test/langtools/tools/javac/classfiles/ClassVersionChecker.java ! test/langtools/tools/javac/diags/examples/InvalidYield.java ! test/langtools/tools/javac/diags/examples/InvalidYieldWarning.java ! test/langtools/tools/javac/diags/examples/NoSwitchExpression.java ! test/langtools/tools/javac/diags/examples/NoSwitchExpressionQualify.java ! test/langtools/tools/javac/lib/JavacTestingAbstractProcessor.java ! test/langtools/tools/javac/preview/classReaderTest/Client.nopreview.out ! test/langtools/tools/javac/preview/classReaderTest/Client.preview.out ! test/langtools/tools/javac/profiles/ProfileOptionTest.java ! test/langtools/tools/javac/switchexpr/WarnWrongYieldTest.java ! test/langtools/tools/javac/versions/Versions.java Changeset: b2df72a5445f Author: mullan Date: 2019-06-13 13:03 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b2df72a5445f 8225730: Add sun/security/pkcs11/tls/tls12/FipsModeTLS12.java to ProblemList for linux Reviewed-by: xuelei ! test/jdk/ProblemList.txt Changeset: 31d026474e77 Author: mullan Date: 2019-06-13 13:04 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/31d026474e77 Merge Changeset: 2c47220ce9bb Author: shade Date: 2019-06-13 19:37 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/2c47220ce9bb 8224881: Shenandoah: trashing "Collection Set, Pinned" region during Degenerated GC Reviewed-by: rkennke, zgu ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp Changeset: 2f4e214781a1 Author: dtitov Date: 2019-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/2f4e214781a1 8225543: Jcmd fails to attach to the Java process on Linux using the main class name if whitespace options were used to launch the process Reviewed-by: sspitsyn, dholmes ! src/jdk.jcmd/linux/classes/sun/tools/ProcessHelper.java ! test/jdk/sun/tools/jcmd/TestProcessHelper.java Changeset: 761b86d5563d Author: darcy Date: 2019-06-13 11:50 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/761b86d5563d 8164819: Make javac's toString() on annotation objects consistent with core reflection Reviewed-by: jjg, coleenp ! src/java.base/share/classes/sun/reflect/annotation/AnnotationInvocationHandler.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Attribute.java ! src/jdk.compiler/share/classes/com/sun/tools/javac/model/AnnotationProxyMaker.java ! test/hotspot/jtreg/runtime/8007320/ConstMethodTest.java ! test/jdk/java/lang/annotation/AnnotationToStringTest.java ! test/jdk/java/lang/annotation/ParameterAnnotations.java ! test/jdk/java/lang/annotation/TestConstructorParameterAnnotations.java ! test/jdk/java/lang/annotation/typeAnnotations/TestConstructorParameterTypeAnnotations.java ! test/jdk/java/lang/annotation/typeAnnotations/TestObjectMethods.java ! test/langtools/tools/javac/annotations/repeatingAnnotations/combo/ReflectionTest.java ! test/langtools/tools/javac/annotations/typeAnnotations/classfile/AnonymousExtendsTest.java ! test/langtools/tools/javac/modules/AnnotationsOnModules.java ! test/langtools/tools/javac/processing/messager/6388543/T6388543.out + test/langtools/tools/javac/processing/model/element/AnnotationToStringTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerBasicTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedA1Test.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedA2Test.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedB1Test.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixRepeatableAndOfficialContainerInheritedB2Test.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerBasicTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedA1Test.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedA2Test.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedB1Test.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/MixSingularAndUnofficialContainerInheritedB2Test.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/OfficialContainerBasicTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/OfficialContainerInheritedTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableBasicTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableInheritedTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOfficialContainerBasicTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOfficialContainerInheritedTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOverrideATest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/RepeatableOverrideBTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularBasicTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularInheritedATest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/SingularInheritedBTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/UnofficialContainerBasicTest.java ! test/langtools/tools/javac/processing/model/element/repeatingAnnotations/UnofficialContainerInheritedTest.java ! test/langtools/tools/javac/sym/ElementStructureTest.java Changeset: d57d61aafef9 Author: bpb Date: 2019-06-13 13:43 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d57d61aafef9 8223813: (aio) Iocp.getErrorMessage should drop trailing \r\n Reviewed-by: alanb, igerasim, rriggs ! src/java.base/windows/native/libnet/Inet4AddressImpl.c ! src/java.base/windows/native/libnio/ch/Iocp.c ! src/java.base/windows/native/libnio/fs/WindowsNativeDispatcher.c Changeset: 5c52d053cb14 Author: jwilhelm Date: 2019-06-14 01:09 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5c52d053cb14 Added tag jdk-14+1 for changeset 2f4e214781a1 ! .hgtags Changeset: 4a3c13548b9e Author: darcy Date: 2019-06-13 16:39 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4a3c13548b9e 8222369: ExecutableElement.getReceiverType returns null instead of NOTYPE Reviewed-by: jjg ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symbol.java + test/langtools/tools/javac/processing/model/element/TestExecutableReceiverType.java ! test/langtools/tools/javac/sym/ElementStructureTest.java Changeset: 1afe0cb93482 Author: tvaleev Date: 2019-06-14 05:02 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1afe0cb93482 8225339: Optimize HashMap.keySet()/HashMap.values()/HashSet toArray() methods Reviewed-by: rriggs, redestad, smarks ! 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/LinkedHashMap.java + test/jdk/java/util/HashMap/ToArray.java + test/micro/org/openjdk/bench/java/util/HashMapToArray.java Changeset: 444b2d3471e9 Author: jpai Date: 2019-06-14 10:19 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/444b2d3471e9 8217705: HttpClient - wrong exception type when bad status line is received Summary: Throw a ProtocolException if the status code in the HTTP response's status line isn't a 3-digit integer Reviewed-by: dfuchs ! src/java.net.http/share/classes/jdk/internal/net/http/Http1HeaderParser.java ! test/jdk/java/net/httpclient/whitebox/java.net.http/jdk/internal/net/http/Http1HeaderParserTest.java Changeset: 5dcab10ebfbe Author: thartmann Date: 2019-06-14 13:26 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5dcab10ebfbe 8225783: Incorrect use of binary operators on booleans in type.cpp Summary: Use logical operators instead. Reviewed-by: roland ! src/hotspot/share/opto/type.cpp Changeset: b444bbe5c45c Author: shade Date: 2019-06-14 16:47 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b444bbe5c45c 8225743: Remove ShenandoahBarrierSetC2::escape_is_barrier_node and related GC interface Reviewed-by: roland, eosterlund ! src/hotspot/share/gc/shared/c2/barrierSetC2.hpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.cpp ! src/hotspot/share/gc/shenandoah/c2/shenandoahBarrierSetC2.hpp ! src/hotspot/share/opto/escape.cpp Changeset: 9c6d907cefac Author: zgu Date: 2019-06-14 11:58 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/9c6d907cefac 8225550: Shenandoah: Prevent SH::object_iterate() call's side-effects Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp Changeset: 49ed5e31fe1e Author: zgu Date: 2019-06-14 12:08 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/49ed5e31fe1e 8225801: Shenandoah: Adjust SA to reflect recent forwarding pointer changes Reviewed-by: shade ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/shenandoah/ShenandoahHeap.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/shenandoah/ShenandoahHeapRegion.java Changeset: 5eeee2cc94f5 Author: rfield Date: 2019-06-14 20:30 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/5eeee2cc94f5 8200701: jdk/jshell/ExceptionsTest.java fails on Windows, after JDK-8198801 8159740: JShell: corralled declarations do not have correct source to wrapper mapping 8212167: JShell : Stack trace of exception has wrong line number Summary: Build corralled (recoverable undeclared definitions) declarations from position translating wraps.... Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/jshell/Corraller.java ! src/jdk.jshell/share/classes/jdk/jshell/Eval.java ! src/jdk.jshell/share/classes/jdk/jshell/GeneralWrap.java ! src/jdk.jshell/share/classes/jdk/jshell/SourceCodeAnalysisImpl.java ! src/jdk.jshell/share/classes/jdk/jshell/Wrap.java ! test/langtools/ProblemList.txt ! test/langtools/jdk/jshell/ClassesTest.java ! test/langtools/jdk/jshell/ExceptionsTest.java ! test/langtools/jdk/jshell/KullaTesting.java ! test/langtools/jdk/jshell/WrapperTest.java Changeset: e53ec3b362f4 Author: ngasson Date: 2019-06-17 15:31 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e53ec3b362f4 8224851: AArch64: fix warnings and errors with Clang and GCC 8.3 Reviewed-by: aph, kbarrett ! src/hotspot/cpu/aarch64/aarch64.ad ! src/hotspot/cpu/aarch64/assembler_aarch64.hpp ! src/hotspot/cpu/aarch64/c1_LIRAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/c1_LIRGenerator_aarch64.cpp ! src/hotspot/cpu/aarch64/frame_aarch64.cpp ! src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64_log.cpp ! src/hotspot/cpu/aarch64/macroAssembler_aarch64_trig.cpp ! src/hotspot/cpu/aarch64/vm_version_aarch64.cpp ! src/hotspot/os_cpu/linux_aarch64/atomic_linux_aarch64.hpp ! src/hotspot/os_cpu/linux_aarch64/copy_linux_aarch64.s ! src/hotspot/os_cpu/linux_aarch64/os_linux_aarch64.cpp Changeset: 46049b8a5658 Author: dfuchs Date: 2019-06-17 20:03 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/46049b8a5658 8225578: Replace wildcard address with loopback or local host in tests - part 16 Summary: Fixes java/net/Authenticator and java/net/CookieHandler to stop depending on the wildcard address, wherever possible. Reviewed-by: chegar ! test/jdk/java/net/Authenticator/AuthNPETest.java ! test/jdk/java/net/Authenticator/B4678055.java ! test/jdk/java/net/Authenticator/B4759514.java ! test/jdk/java/net/Authenticator/B4769350.java ! test/jdk/java/net/Authenticator/B4921848.java ! test/jdk/java/net/Authenticator/B4933582.java ! test/jdk/java/net/Authenticator/B4962064.java ! test/jdk/java/net/Authenticator/B6870935.java ! test/jdk/java/net/Authenticator/B8034170.java ! test/jdk/java/net/Authenticator/BasicTest.java ! test/jdk/java/net/Authenticator/BasicTest3.java ! test/jdk/java/net/Authenticator/BasicTest4.java ! test/jdk/java/net/Authenticator/Deadlock.java ! test/jdk/java/net/CookieHandler/CookieHandlerTest.java ! test/jdk/java/net/CookieHandler/CookieManagerTest.java ! test/jdk/java/net/CookieHandler/EmptyCookieHeader.java ! test/jdk/java/net/CookieHandler/LocalHostCookie.java Changeset: da554fdb51d0 Author: ysuenaga Date: 2019-06-18 10:54 +0900 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/da554fdb51d0 8225636: SA can't handle prelinked libraries Reviewed-by: sspitsyn, cjplummer ! src/jdk.hotspot.agent/linux/native/libsaproc/ps_core.c Changeset: 32cce302a1fd Author: rehn Date: 2019-06-18 11:06 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/32cce302a1fd 8226227: Missing include of thread.inline.hpp Reviewed-by: coleenp ! src/hotspot/share/gc/shared/gcLocker.inline.hpp ! src/hotspot/share/runtime/vframe.inline.hpp Changeset: b78af6d8a252 Author: chegar Date: 2019-06-18 14:52 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/b78af6d8a252 8225583: Examine the HttpResponse.BodySubscribers for null handling Reviewed-by: dfuchs, prappo ! src/java.net.http/share/classes/java/net/http/HttpResponse.java ! src/java.net.http/share/classes/jdk/internal/net/http/LineSubscriberAdapter.java ! src/java.net.http/share/classes/jdk/internal/net/http/ResponseSubscribers.java Changeset: 8d50ff464ae5 Author: rriggs Date: 2019-06-18 10:37 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8d50ff464ae5 8226242: Diagnostic output for posix_spawn failure Reviewed-by: bpb, stuefe, dholmes, martin ! src/java.base/unix/native/libjava/ProcessImpl_md.c Changeset: 8259c22be42c Author: zgu Date: 2019-06-18 13:11 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8259c22be42c 8225804: SA: Remove unused CollectedHeap.oopOffset() method Reviewed-by: rkennke ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/shared/CollectedHeap.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/oops/ObjectHeap.java Changeset: 17f24c0e2f01 Author: chegar Date: 2019-06-18 18:38 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/17f24c0e2f01 8226319: Add forgotten test/jdk/java/net/httpclient/BodySubscribersTest.java Reviewed-by: dfuchs, prappo + test/jdk/java/net/httpclient/BodySubscribersTest.java Changeset: d69faba543ec Author: iignatyev Date: 2019-06-13 13:42 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d69faba543ec 8225746: hotspot problem lists list unexciting tests Reviewed-by: kvn ! test/hotspot/jtreg/ProblemList-graal.txt ! test/hotspot/jtreg/ProblemList.txt ! test/jdk/ProblemList-graal.txt Changeset: bba34c350225 Author: mullan Date: 2019-06-13 17:49 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/bba34c350225 8225730: Add sun/security/pkcs11/tls/tls12/FipsModeTLS12.java to ProblemList for linux Reviewed-by: xuelei ! test/jdk/ProblemList.txt Changeset: 24872d367cb6 Author: kvn Date: 2019-06-13 17:18 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/24872d367cb6 8209590: compiler/compilercontrol/DontInlineCommandTest.java test fails with "Inline message differs" error Summary: increase InlineSmallCode to 4000 for tests which check inlining decisions. Reviewed-by: iignatyev ! test/hotspot/jtreg/compiler/compilercontrol/share/scenario/Command.java Changeset: c53db49c7a2f Author: jwilhelm Date: 2019-06-14 03:50 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c53db49c7a2f Added tag jdk-13+25 for changeset 22b3b7983ada ! .hgtags Changeset: c3b354fdbaa4 Author: shade Date: 2019-06-14 10:02 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c3b354fdbaa4 8225695: 32-bit build failures after JDK-8080462 (Update SunPKCS11 provider with PKCS11 v2.40 support) Reviewed-by: alanb ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_general.c ! src/jdk.crypto.cryptoki/share/native/libj2pkcs11/p11_sign.c Changeset: 328d4a455e4b Author: xuelei Date: 2019-06-14 12:19 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/328d4a455e4b 8224829: AsyncSSLSocketClose.java has timing issue Reviewed-by: jnimeh, dfuchs ! src/java.base/share/classes/sun/security/ssl/SSLSocketImpl.java ! test/jdk/javax/net/ssl/SSLSocket/Tls13PacketSize.java + test/jdk/sun/security/ssl/SSLSocketImpl/BlockedAsyncClose.java Changeset: 55a79ffab804 Author: weijun Date: 2019-06-15 14:39 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/55a79ffab804 8225392: Comparison builds are failing due to cacerts file Reviewed-by: erikj, martin, mullan ! make/jdk/src/classes/build/tools/generatecacerts/GenerateCacerts.java ! src/java.base/share/classes/sun/security/tools/keytool/Main.java ! test/jdk/sun/security/lib/cacerts/VerifyCACerts.java + test/jdk/sun/security/tools/keytool/ListOrder.java Changeset: 22ce9e266a4b Author: zgu Date: 2019-06-14 12:08 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/22ce9e266a4b 8225801: Shenandoah: Adjust SA to reflect recent forwarding pointer changes Reviewed-by: shade ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/shenandoah/ShenandoahHeap.java ! src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/shenandoah/ShenandoahHeapRegion.java Changeset: 666f51a72171 Author: kvn Date: 2019-06-17 09:11 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/666f51a72171 8181837: [Graal] compiler/jvmci/SecurityRestrictionsTest.java fails with AccessControlException Summary: Remove test from Problem list because it does not fail anymore. Reviewed-by: iignatyev ! test/hotspot/jtreg/ProblemList-graal.txt Changeset: 2d62c1192d41 Author: dtitov Date: 2019-06-13 11:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/2d62c1192d41 8225543: Jcmd fails to attach to the Java process on Linux using the main class name if whitespace options were used to launch the process Reviewed-by: sspitsyn, dholmes ! src/jdk.jcmd/linux/classes/sun/tools/ProcessHelper.java ! test/jdk/sun/tools/jcmd/TestProcessHelper.java Changeset: 09ee0bd26bda Author: dtitov Date: 2019-06-17 14:31 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/09ee0bd26bda 8217348: assert(thread->is_Java_thread()) failed: just checking Reviewed-by: sspitsyn, dholmes, amenkov, jcbeyler ! src/hotspot/share/prims/jvmtiEnvBase.cpp Changeset: 6c2d53701e34 Author: rfield Date: 2019-06-17 17:14 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6c2d53701e34 8200701: jdk/jshell/ExceptionsTest.java fails on Windows, after JDK-8198801 8159740: JShell: corralled declarations do not have correct source to wrapper mapping 8212167: JShell : Stack trace of exception has wrong line number Summary: Build corralled (recoverable undeclared definitions) declarations from position translating wraps.... Reviewed-by: jlahoda ! src/jdk.jshell/share/classes/jdk/jshell/Corraller.java ! src/jdk.jshell/share/classes/jdk/jshell/Eval.java ! src/jdk.jshell/share/classes/jdk/jshell/GeneralWrap.java ! src/jdk.jshell/share/classes/jdk/jshell/SourceCodeAnalysisImpl.java ! src/jdk.jshell/share/classes/jdk/jshell/Wrap.java ! test/langtools/ProblemList.txt ! test/langtools/jdk/jshell/ClassesTest.java ! test/langtools/jdk/jshell/ExceptionsTest.java ! test/langtools/jdk/jshell/KullaTesting.java ! test/langtools/jdk/jshell/WrapperTest.java Changeset: 922a4a554807 Author: rraghavan Date: 2019-06-18 10:00 +0530 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/922a4a554807 8226198: use of & instead of && in LibraryCallKit::arraycopy_restore_alloc_state Summary: Used logical operator correctly Reviewed-by: kvn, thartmann ! src/hotspot/share/opto/library_call.cpp Changeset: 3e08fa647eea Author: gziemski Date: 2019-06-18 12:39 -0500 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3e08fa647eea 8225310: JFR crashed in JfrPeriodicEventSet::requestProtectionDomainCacheTableStatistics() Summary: Added lock around table usage Reviewed-by: coleenp, hseigel ! src/hotspot/share/classfile/systemDictionary.cpp Changeset: bc5a0508253c Author: jjg Date: 2019-06-18 11:52 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/bc5a0508253c 8225748: Use SHA-256 for javap classfile checksum Reviewed-by: mchung ! src/jdk.compiler/share/classes/com/sun/tools/javac/main/Main.java ! src/jdk.jdeps/share/classes/com/sun/tools/javap/JavapTask.java ! src/jdk.jdeps/share/classes/com/sun/tools/javap/resources/javap.properties ! test/langtools/tools/javac/T6942649.java ! test/langtools/tools/javap/T4884240.java Changeset: 688a2a361e14 Author: jwilhelm Date: 2019-06-18 22:48 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/688a2a361e14 Merge ! .hgtags Changeset: c439c469e803 Author: lancea Date: 2019-06-18 17:50 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c439c469e803 8225680: Address links in java.sql.rowset Reviewed-by: jjg, bpb ! src/java.sql.rowset/share/classes/com/sun/rowset/providers/RIXMLProvider.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/WebRowSet.java ! src/java.sql.rowset/share/classes/javax/sql/rowset/package-info.java Changeset: 970adfac768d Author: zgu Date: 2019-06-18 17:58 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/970adfac768d 8225573: Shenandoah: Enhance ShenandoahVerifier to ensure roots to-space invariant Reviewed-by: shade ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahVerifier.hpp Changeset: aa800530fb49 Author: pli Date: 2019-06-17 09:40 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/aa800530fb49 8226222: [JVMCI] Export AArch64 field VM_Version::_psr_info.dczid_el0 Reviewed-by: kvn ! src/hotspot/share/jvmci/jvmciCompilerToVMInit.cpp ! src/hotspot/share/jvmci/vmStructs_jvmci.cpp Changeset: 7cf925f385fe Author: pliden Date: 2019-06-19 08:43 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/7cf925f385fe 8225779: Remove unused CollectedHeap::cell_header_size() Reviewed-by: eosterlund, rkennke, shade ! src/hotspot/share/asm/assembler.cpp ! src/hotspot/share/gc/shared/collectedHeap.hpp Changeset: 4efe251009b4 Author: prappo Date: 2019-06-18 14:12 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4efe251009b4 8226303: Examine the HttpRequest.BodyPublishers for exception handling Reviewed-by: chegar ! src/java.net.http/share/classes/jdk/internal/net/http/PullPublisher.java ! src/java.net.http/share/classes/jdk/internal/net/http/RequestPublishers.java + test/jdk/java/net/httpclient/RelayingPublishers.java Changeset: e0be41293b41 Author: prappo Date: 2019-06-19 12:17 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e0be41293b41 Merge - src/jdk.crypto.cryptoki/share/native/libj2pkcs11/pkcs-11v2-20a3.h Changeset: e9da3a44a7ed Author: zgu Date: 2019-06-19 08:52 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e9da3a44a7ed 8225582: Shenandoah: Enable concurrent evacuation of JNIHandles Reviewed-by: rkennke, shade + src/hotspot/share/gc/shenandoah/shenandoahConcurrentRoots.cpp + src/hotspot/share/gc/shenandoah/shenandoahConcurrentRoots.hpp ! src/hotspot/share/gc/shenandoah/shenandoahControlThread.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.hpp ! src/hotspot/share/gc/shenandoah/shenandoahPhaseTimings.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahWorkerPolicy.cpp ! src/hotspot/share/gc/shenandoah/shenandoahWorkerPolicy.hpp Changeset: d7da94e6c169 Author: aph Date: 2019-06-18 16:15 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d7da94e6c169 8225716: G1 GC: Undefined behaviour in G1BlockOffsetTablePart::block_at_or_preceding Reviewed-by: kbarrett, tschatzl ! src/hotspot/share/gc/g1/g1BlockOffsetTable.cpp ! src/hotspot/share/gc/g1/g1BlockOffsetTable.hpp ! src/hotspot/share/gc/g1/g1BlockOffsetTable.inline.hpp Changeset: 82deab2dd59e Author: hseigel Date: 2019-06-19 13:34 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/82deab2dd59e 8226304: Obsolete the -XX:+FailOverToOldVerifier option Summary: Change the option from deprecated to obsolete Reviewed-by: lfoltan, coleenp ! src/hotspot/share/classfile/verifier.cpp ! src/hotspot/share/runtime/arguments.cpp ! src/hotspot/share/runtime/globals.hpp Changeset: 43627549a488 Author: shurailine Date: 2019-06-19 05:04 -0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/43627549a488 8226359: Switch to JCov build which supports byte code version 58 Reviewed-by: erikj ! make/conf/jib-profiles.js Changeset: afc6c25c2f4a Author: iignatyev Date: 2019-06-18 09:19 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/afc6c25c2f4a 8226313: problem list compiler/types/correctness tests Reviewed-by: thartmann ! test/hotspot/jtreg/ProblemList.txt Changeset: be453f7ee72c Author: amenkov Date: 2019-06-18 16:08 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/be453f7ee72c 8225682: Reference to JNI spec on java.sun.com Reviewed-by: gadams, cjplummer, sspitsyn ! make/data/jdwp/jdwp.spec Changeset: af38014cb097 Author: iignatyev Date: 2019-06-19 03:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/af38014cb097 8226360: merge entries in hotspot problem lists Reviewed-by: epavlova, kvn ! test/hotspot/jtreg/ProblemList-graal.txt ! test/jdk/ProblemList-graal.txt Changeset: 3dcfa209f769 Author: thartmann Date: 2019-06-19 12:24 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/3dcfa209f769 8226381: ProblemList java/lang/reflect/PublicMethods/PublicMethodsTest.java Summary: Put test on AOT ProblemList. Reviewed-by: iignatyev ! test/jdk/ProblemList-aot.txt Changeset: 80594c78a608 Author: thartmann Date: 2019-06-19 12:25 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/80594c78a608 8226382: ProblemList java/lang/constant/MethodTypeDescTest.java Summary: Put test on AOT ProblemList. Reviewed-by: iignatyev ! test/jdk/ProblemList-aot.txt Changeset: 360f8769d3dc Author: hseigel Date: 2019-06-19 08:42 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/360f8769d3dc 8225789: Empty method parameter type should generate ClassFormatError Summary: Check for an empty name when verifying unqualified names Reviewed-by: lfoltan, coleenp ! src/hotspot/share/classfile/classFileParser.cpp + test/hotspot/jtreg/runtime/classFileParserBug/EmptyUnqName.jasm + test/hotspot/jtreg/runtime/classFileParserBug/TestEmptyUnqName.java ! test/hotspot/jtreg/runtime/verifier/TestSigParse.java Changeset: 0692b67f5462 Author: aph Date: 2019-06-18 16:15 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0692b67f5462 8225716: G1 GC: Undefined behaviour in G1BlockOffsetTablePart::block_at_or_preceding Reviewed-by: kbarrett, tschatzl ! src/hotspot/share/gc/g1/g1BlockOffsetTable.cpp ! src/hotspot/share/gc/g1/g1BlockOffsetTable.hpp ! src/hotspot/share/gc/g1/g1BlockOffsetTable.inline.hpp Changeset: 726cb89a9997 Author: jwilhelm Date: 2019-06-20 02:10 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/726cb89a9997 Merge ! src/hotspot/share/classfile/classFileParser.cpp Changeset: 48a14297c030 Author: jwilhelm Date: 2019-06-20 04:15 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/48a14297c030 Added tag jdk-14+2 for changeset 43627549a488 ! .hgtags Changeset: eaf0a8de3450 Author: tvaleev Date: 2019-06-20 03:32 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/eaf0a8de3450 8226286: Remove unused method java.lang.Integer::formatUnsignedInt and cleanup Integer/Long classes Reviewed-by: bpb, redestad ! src/java.base/share/classes/java/lang/Integer.java ! src/java.base/share/classes/java/lang/Long.java Changeset: 12e8433e2581 Author: coffeys Date: 2019-06-20 08:02 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/12e8433e2581 8213561: ZipFile/MultiThreadedReadTest.java timed out in tier1 Reviewed-by: lancea ! test/jdk/java/util/zip/ZipFile/MultiThreadedReadTest.java Changeset: 99b604ec1af6 Author: gadams Date: 2019-06-20 07:13 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/99b604ec1af6 8224642: Test sun/tools/jcmd/TestJcmdSanity.java fails: Bad file descriptor Reviewed-by: cjplummer, rschmelter, clanger ! src/jdk.attach/linux/classes/sun/tools/attach/VirtualMachineImpl.java Changeset: 6a7d6b6bbd78 Author: zgu Date: 2019-06-20 10:12 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6a7d6b6bbd78 8226413: Shenandoah: Separate root scanner for SH::object_iterate() Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp Changeset: a7b9d6d4940e Author: erikj Date: 2019-06-20 09:35 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a7b9d6d4940e 8226521: Detect WSL2 as WSL in configure Reviewed-by: erikj Contributed-by: andrewluotechnologies at outlook.com ! make/autoconf/build-aux/config.guess Changeset: 1aae575eb1ef Author: naoto Date: 2019-06-20 11:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1aae575eb1ef 8220229: Timezone pattern "OOOO" does not result in the full "GMT+00:00" substring Reviewed-by: lancea, rriggs ! src/java.base/share/classes/java/time/format/DateTimeFormatter.java Changeset: 95794e32352e Author: dlsmith Date: 2019-06-20 14:03 -0600 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/95794e32352e 8226325: Support building of filtered spec bundles Reviewed-by: erikj ! doc/building.md ! make/Docs.gmk ! make/InitSupport.gmk ! make/Main.gmk ! make/data/docs-resources/resources/jdk-default.css Changeset: 0f141453b9e0 Author: lancea Date: 2019-06-20 16:15 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/0f141453b9e0 8226518: Typo in the ConnectionBuilder javadoc examples Reviewed-by: bpb ! src/java.sql/share/classes/java/sql/ConnectionBuilder.java ! src/java.sql/share/classes/javax/sql/PooledConnectionBuilder.java ! src/java.sql/share/classes/javax/sql/XAConnectionBuilder.java Changeset: d3030613fab9 Author: robm Date: 2019-06-20 20:20 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/d3030613fab9 8223727: com/sun/jndi/ldap/privconn/RunTest.java failed due to hang in LdapRequest.getReplyBer Reviewed-by: prappo ! src/java.naming/share/classes/com/sun/jndi/ldap/Connection.java Changeset: 79a7fc6c9bc7 Author: zgu Date: 2019-06-20 18:29 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/79a7fc6c9bc7 8225590: Shenandoah: Refactor ShenandoahClassLoaderDataRoots API Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp Changeset: e27ae3706392 Author: jwilhelm Date: 2019-06-20 04:08 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e27ae3706392 Added tag jdk-13+26 for changeset 0692b67f5462 ! .hgtags Changeset: 1170b6d92d1c Author: xuelei Date: 2019-06-19 21:49 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1170b6d92d1c 8225766: Curve in certificate should not affect signature scheme when using TLSv1.3 Reviewed-by: ascarpino ! src/java.base/share/classes/sun/security/ssl/SignatureScheme.java ! src/java.base/share/classes/sun/security/ssl/X509Authentication.java + test/jdk/sun/security/ssl/SignatureScheme/Tls13NamedGroups.java Changeset: 65916ade7fa2 Author: erikj Date: 2019-06-20 07:56 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/65916ade7fa2 8226404: bootcycle build uses wrong CDS archive Reviewed-by: iklam ! make/autoconf/bootcycle-spec.gmk.in Changeset: 8892555795cd Author: kvn Date: 2019-06-20 10:32 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/8892555795cd 8223794: applications/kitchensink/Kitchensink.java crash bad oop with Graal Summary: added new nmethod::oop_at_phantom() method for JVMCI to notify GC that oop should be kept alive Reviewed-by: dlong, eosterlund ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/jvmci/jvmciRuntime.cpp ! src/hotspot/share/jvmci/jvmciRuntime.hpp Changeset: 76647c08ce0c Author: epavlova Date: 2019-06-20 11:42 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/76647c08ce0c 8225684: [AOT] vmTestbase/vm/oom/production/AlwaysOOMProduction tests fail with AOTed java.base Reviewed-by: kvn + test/hotspot/jtreg/ProblemList-aot.txt Changeset: de3484367466 Author: jjg Date: 2019-06-20 14:24 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/de3484367466 8226412: Fix command-line help text for javac -target Reviewed-by: vromero ! src/jdk.compiler/share/classes/com/sun/tools/javac/resources/javac.properties Changeset: ced62a6a7bbe Author: dtitov Date: 2019-06-20 18:47 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ced62a6a7bbe 8220175: serviceability/dcmd/framework/VMVersionTest.java fails with a timeout Reviewed-by: sspitsyn, cjplummer ! src/hotspot/os/linux/perfMemory_linux.cpp Changeset: 81ac9262e63b Author: jwilhelm Date: 2019-06-21 04:16 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/81ac9262e63b Merge ! .hgtags Changeset: 00f29fe98900 Author: coffeys Date: 2019-06-21 08:07 +0000 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/00f29fe98900 8133489: Better messaging for PKIX path validation matching Reviewed-by: xuelei ! src/java.base/share/classes/java/security/cert/X509CertSelector.java ! test/jdk/java/security/cert/CertPathBuilder/selfIssued/KeyUsageMatters.java Changeset: 17ba7ce18564 Author: hannesw Date: 2019-06-21 12:23 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/17ba7ce18564 8225802: Remove unused CSS classes from HTML doclet Reviewed-by: jjg ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlStyle.java ! src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/resources/stylesheet.css Changeset: e764228f71dc Author: mullan Date: 2019-06-21 08:38 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e764228f71dc 8226307: Curve names should be case-insensitive Reviewed-by: igerasim, jnimeh, wetmore ! src/java.base/share/classes/sun/security/util/CurveDB.java ! test/jdk/java/security/KeyAgreement/KeyAgreementTest.java Changeset: 6dfdcd31463d Author: kvn Date: 2019-06-21 13:04 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6dfdcd31463d 8185139: [Graal] Tests which set too restrictive security manager fail with Graal Summary: tests should also check default policy Reviewed-by: mchung, dfuchs, alanb, mullan ! test/jdk/ProblemList-graal.txt ! test/jdk/java/lang/Class/getDeclaredField/ClassDeclaredFieldsTest.java ! test/jdk/java/lang/Class/getDeclaredField/FieldSetAccessibleTest.java ! test/jdk/java/lang/ProcessBuilder/Basic.java ! test/jdk/java/lang/ProcessBuilder/SecurityManagerClinit.java ! test/jdk/java/lang/ProcessHandle/PermissionTest.java ! test/jdk/java/lang/System/Logger/custom/CustomLoggerTest.java ! test/jdk/java/lang/System/Logger/default/DefaultLoggerTest.java ! test/jdk/java/lang/System/LoggerFinder/BaseLoggerFinderTest/BaseLoggerFinderTest.java ! test/jdk/java/lang/System/LoggerFinder/DefaultLoggerFinderTest/DefaultLoggerFinderTest.java ! test/jdk/java/lang/System/LoggerFinder/internal/BaseLoggerBridgeTest/BaseLoggerBridgeTest.java ! test/jdk/java/lang/System/LoggerFinder/internal/BasePlatformLoggerTest/BasePlatformLoggerTest.java ! test/jdk/java/lang/System/LoggerFinder/internal/LoggerBridgeTest/LoggerBridgeTest.java ! test/jdk/java/lang/System/LoggerFinder/internal/PlatformLoggerBridgeTest/PlatformLoggerBridgeTest.java ! test/jdk/java/lang/System/LoggerFinder/jdk/DefaultLoggerBridgeTest/DefaultLoggerBridgeTest.java ! test/jdk/java/lang/System/LoggerFinder/jdk/DefaultPlatformLoggerTest/DefaultPlatformLoggerTest.java ! test/jdk/java/lang/invoke/InvokeDynamicPrintArgs.java ! test/jdk/java/lang/invoke/MethodHandleConstants.java ! test/jdk/java/security/Policy/Dynamic/DynamicPolicy.java ! test/jdk/java/util/concurrent/Executors/PrivilegedCallables.java ! test/jdk/java/util/logging/FileHandlerLongLimit.java ! test/jdk/java/util/logging/FileHandlerPath.java ! test/jdk/java/util/logging/FileHandlerPatternExceptions.java ! test/jdk/java/util/logging/LogManager/Configuration/ParentLoggerWithHandlerGC.java ! test/jdk/java/util/logging/LogManager/Configuration/updateConfiguration/HandlersOnComplexResetUpdate.java ! test/jdk/java/util/logging/LogManager/Configuration/updateConfiguration/HandlersOnComplexUpdate.java ! test/jdk/java/util/logging/LogManager/Configuration/updateConfiguration/SimpleUpdateConfigurationTest.java ! test/jdk/java/util/logging/LogManager/RootLogger/setLevel/TestRootLoggerLevel.java ! test/jdk/java/util/logging/LogManagerAppContextDeadlock.java ! test/jdk/java/util/logging/RootLogger/RootLevelInConfigFile.java ! test/jdk/java/util/logging/TestAppletLoggerContext.java ! test/jdk/java/util/logging/TestConfigurationListeners.java Changeset: 31bf7b93df5d Author: kvn Date: 2019-06-21 16:21 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/31bf7b93df5d 8225810: Update JVMCI Reviewed-by: never, dnsimon ! src/hotspot/share/jvmci/jvmciCompilerToVM.cpp ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/CompilerToVM.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotCompilationRequest.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/HotSpotObjectConstantScope.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedJavaType.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.hotspot/src/jdk/vm/ci/hotspot/HotSpotResolvedPrimitiveType.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/IndirectHotSpotObjectConstantImpl.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.hotspot/src/jdk/vm/ci/hotspot/SharedLibraryJVMCIReflection.java ! src/jdk.internal.vm.ci/share/classes/jdk.vm.ci.meta/src/jdk/vm/ci/meta/MetaUtil.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestMetaAccessProvider.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TestResolvedJavaType.java ! test/hotspot/jtreg/compiler/jvmci/jdk.vm.ci.runtime.test/src/jdk/vm/ci/runtime/test/TypeUniverse.java Changeset: a3e3f3caf284 Author: sspitsyn Date: 2019-06-20 23:12 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a3e3f3caf284 8223736: jvmti/scenarios/contention/TC04/tc04t001/TestDescription.java fails due to wrong number of MonitorContendedEntered events Summary: Fix the synchronization issue in the test Reviewed-by: cjplummer, dcubed, amenkov ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/contention/TC04/tc04t001.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/contention/TC04/tc04t001/tc04t001.cpp Changeset: 68ef70c9a921 Author: erikj Date: 2019-06-21 06:33 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/68ef70c9a921 8226538: find-files.gmk gets corrupted if tab completion is used before running make first Reviewed-by: tbell ! make/common/FindTests.gmk ! test/make/TestMake.gmk Changeset: a6411f1e63f3 Author: adinn Date: 2019-06-21 15:16 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/a6411f1e63f3 8226203: MappedByteBuffer.force method may have no effect on implementation specific map modes Summary: Fix comment for MappedByteBuffer force methods Reviewed-by: alanb ! src/java.base/share/classes/java/nio/MappedByteBuffer.java Changeset: e9d4e0a9c8c7 Author: coleenp Date: 2019-06-21 09:53 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e9d4e0a9c8c7 8226394: [TESTBUG] vmTestbase/metaspace/flags/maxMetaspaceSize/TestDescription.java fails with java.lang.NoClassDefFoundError Summary: don't use printStackTrace to verify OOM type. Reviewed-by: lfoltan, dholmes ! test/hotspot/jtreg/vmTestbase/nsk/share/gc/gp/GarbageUtils.java Changeset: 076f34b82b98 Author: weijun Date: 2019-06-21 23:44 +0800 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out Reviewed-by: valeriep - test/jdk/sun/security/tools/keytool/PSS.java + test/jdk/sun/security/tools/keytool/pss/PSS.java + test/jdk/sun/security/tools/keytool/pss/java.base/sun/security/rsa/RSAKeyPairGenerator.java Changeset: e00591da418d Author: erikj Date: 2019-06-21 10:38 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e00591da418d 8226269: Race in SetupProcessMarkdown Reviewed-by: tbell ! make/common/ProcessMarkdown.gmk Changeset: 97c75e545302 Author: jjg Date: 2019-06-21 11:41 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/97c75e545302 8226592: Fix HTML in table for jdk.zipfs module-info Reviewed-by: bpb, lancea ! src/jdk.zipfs/share/classes/module-info.java Changeset: 179204eb9444 Author: jjg Date: 2019-06-21 12:09 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/179204eb9444 8226593: Fix HTML in com/sun/jdi/doc-files/signature.html Reviewed-by: sspitsyn, lancea ! src/jdk.jdi/share/classes/com/sun/jdi/doc-files/signature.html Changeset: 72bbc930d7b6 Author: jwilhelm Date: 2019-06-22 02:03 +0200 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/72bbc930d7b6 Merge - test/jdk/sun/security/tools/keytool/PSS.java Changeset: c9e362aef472 Author: zgu Date: 2019-06-24 09:51 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c9e362aef472 8226586: Shenandoah: No need to pre-evacuate roots for degenerated GC Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp Changeset: 73250862f818 Author: michaelm Date: 2019-06-24 15:10 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/73250862f818 8219804: java/net/MulticastSocket/Promiscuous.java fails intermittently due to NumberFormatException Reviewed-by: chegar, dfuchs ! test/jdk/java/net/MulticastSocket/Promiscuous.java Changeset: 6ca3526c4e25 Author: michaelm Date: 2019-06-24 15:19 +0100 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/6ca3526c4e25 8226683: Remove review suggestion from fix to 8219804 Reviewed-by: chegar ! test/jdk/java/net/MulticastSocket/Promiscuous.java Changeset: aee0d296c0ef Author: zgu Date: 2019-06-24 11:46 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/aee0d296c0ef 8226311: Shenandoah: Concurrent evacuation of OopStorage backed weak roots Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahConcurrentMark.cpp ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootVerifier.hpp Changeset: c396e381cfa4 Author: zgu Date: 2019-06-24 14:13 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/c396e381cfa4 8226310: Shenandoah: Concurrent evacuation of CLDG Reviewed-by: rkennke ! src/hotspot/share/gc/shenandoah/shenandoahHeap.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.cpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.hpp ! src/hotspot/share/gc/shenandoah/shenandoahRootProcessor.inline.hpp Changeset: ae2e53e379cb Author: coleenp Date: 2019-06-24 16:51 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/ae2e53e379cb 8214822: Move ConcurrentHashTable VALUE parameter to CONFIG Summary: make VALUE parameter be included in CONFIG configuration, also remove BaseConfig Reviewed-by: dholmes, kbarrett ! src/hotspot/share/classfile/stringTable.cpp ! src/hotspot/share/classfile/symbolTable.cpp ! src/hotspot/share/prims/resolvedMethodTable.cpp ! src/hotspot/share/utilities/concurrentHashTable.hpp ! src/hotspot/share/utilities/concurrentHashTable.inline.hpp ! src/hotspot/share/utilities/concurrentHashTableTasks.inline.hpp ! test/hotspot/gtest/utilities/test_concurrentHashtable.cpp Changeset: 80b27dc96ca3 Author: dcubed Date: 2019-06-24 22:38 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/80b27dc96ca3 8226699: [BACKOUT] JDK-8221734 Deoptimize with handshakes Reviewed-by: dholmes, rehn, dlong ! src/hotspot/share/aot/aotCodeHeap.cpp ! src/hotspot/share/aot/aotCompiledMethod.cpp ! src/hotspot/share/aot/aotCompiledMethod.hpp ! src/hotspot/share/code/codeCache.cpp ! src/hotspot/share/code/compiledMethod.hpp ! src/hotspot/share/code/nmethod.cpp ! src/hotspot/share/code/nmethod.hpp ! src/hotspot/share/gc/z/zBarrierSetNMethod.cpp ! src/hotspot/share/gc/z/zNMethod.cpp ! src/hotspot/share/jvmci/jvmciEnv.cpp ! src/hotspot/share/oops/method.cpp ! src/hotspot/share/oops/method.hpp ! src/hotspot/share/prims/jvmtiEventController.cpp ! src/hotspot/share/prims/methodHandles.cpp ! src/hotspot/share/prims/whitebox.cpp ! src/hotspot/share/runtime/biasedLocking.cpp ! src/hotspot/share/runtime/biasedLocking.hpp ! src/hotspot/share/runtime/deoptimization.cpp ! src/hotspot/share/runtime/deoptimization.hpp ! src/hotspot/share/runtime/mutex.hpp ! src/hotspot/share/runtime/mutexLocker.cpp ! src/hotspot/share/runtime/mutexLocker.hpp ! src/hotspot/share/runtime/thread.cpp ! src/hotspot/share/runtime/thread.hpp ! src/hotspot/share/runtime/vmOperations.cpp ! src/hotspot/share/runtime/vmOperations.hpp ! src/hotspot/share/services/dtraceAttacher.cpp - test/hotspot/jtreg/compiler/codecache/stress/UnexpectedDeoptimizationAllTest.java Changeset: f1e5ddb814b7 Author: serb Date: 2019-06-21 16:20 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/f1e5ddb814b7 8225146: Accessibility issues in javax/swing/plaf/nimbus/doc-files/properties.html Reviewed-by: aivanov ! src/java.desktop/share/classes/javax/swing/plaf/nimbus/doc-files/properties.html Changeset: e17c9a93b505 Author: sspitsyn Date: 2019-06-21 18:20 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/e17c9a93b505 8224555: vmTestbase/nsk/jvmti/scenarios/contention/TC02/tc02t001/TestDescription.java failed Summary: Improve synchronization in the test Reviewed-by: dcubed, amenkov ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/contention/TC02/tc02t001.java ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/contention/TC02/tc02t001/tc02t001.cpp Changeset: 4d5eabe8d341 Author: sspitsyn Date: 2019-06-22 14:35 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/4d5eabe8d341 8226595: jvmti/scenarios/contention/TC04/tc04t001/TestDescription.java still fails due to wrong number of MonitorContendedEntered events Summary: Fix one more sync issue in the test Reviewed-by: dcubed, amenkov ! test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/contention/TC04/tc04t001.java Changeset: 00c08fae63e8 Author: mullan Date: 2019-06-24 10:11 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/00c08fae63e8 8180005: Provide specific links in KeyManagerFactory and TrustManagerFactory to the Standard Algorithm Names Specification Reviewed-by: ascarpino ! src/java.base/share/classes/javax/net/ssl/KeyManagerFactory.java ! src/java.base/share/classes/javax/net/ssl/TrustManagerFactory.java Changeset: 1cd4d287839b Author: bobv Date: 2019-06-24 11:49 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1cd4d287839b 8224502: [TESTBUG] JDK docker test TestSystemMetrics.java fails with access issues and OOM Reviewed-by: sgehwolf, mseledtsov ! test/jdk/ProblemList.txt ! test/jdk/jdk/internal/platform/docker/TestSystemMetrics.java ! test/lib/jdk/test/lib/containers/cgroup/MetricsTester.java Changeset: 1e4bbd6fbb2f Author: bobv Date: 2019-06-24 11:52 -0400 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/1e4bbd6fbb2f 8224506: [TESTBUG] TestDockerMemoryMetrics.java fails with exitValue = 137 Reviewed-by: sgehwolf, mseledtsov ! test/jdk/ProblemList.txt ! test/jdk/jdk/internal/platform/docker/TestDockerMemoryMetrics.java Changeset: fe6c2f0b42be Author: jjg Date: 2019-06-24 13:40 -0700 URL: http://hg.openjdk.java.net/shenandoah/jdk/rev/fe6c2f0b42be 8226628: The copyright footer should be enclosed in