Re: RFR (round 4), JDK-8214259: Implementation: JEP 189: Shenandoah: A Low-Pause Garbage Collector

2018-12-04 Thread Roman Kennke
Hi Magnus,

>> I got reviews for shared-build, but an earlier version, so maybe makes
>> sense to look over this again. Erik J, Magnus?
> 
> Build changes look good. 

Thanks, Magnus!

Roman




Re: RFR (round 4), JDK-8214259: Implementation: JEP 189: Shenandoah: A Low-Pause Garbage Collector

2018-12-04 Thread Per Liden

Hi Roman,

On 12/3/18 8:27 PM, Roman Kennke wrote:

Round 5 of Shenandoah review includes:
- A fix for the @requires tag in TestFullGCCountTest.java. It should be
correct now. We believe the CMS @requires was also not quite right and
fixed it the same.

It reads now: Don't run this test if:
  - Actual GC set by harness is CMS *and* ExplicitGCInvokesConcurrent is
true, as set by harness
  - Actual GC set by harness is Shenandoah *and*
ExplicitGCInvokesConcurrent is not set false by harness (it's true by
default in Shenandoah, so this needs to be double-inverteed).

The @requires for CMS was wrong before (we think), because it would also
filter defaultGC + ExplicitGCInvokesConcurrent.

- Sorting of macros was fixed, as was pointed out by Per
- Some stuff was added to SA, as suggested by Jini
- Rebased on most current jdk/jdk code

Webrevs:
http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/05/

I also need reviews from GC reviewers for the CSR:
https://bugs.openjdk.java.net/browse/JDK-8214349

I already got reviews for:
[x] shared-runtime (coleenp)
[x] shared-compiler (kvn)

I got reviews for shared-build, but an earlier version, so maybe makes
sense to look over this again. Erik J, Magnus?

I still need approvals for:
[ ] shared-build  (kvn, erikj, ihse, pliden)
[ ] shared-gc (pliden, kbarrett)
[ ] shared-serviceability (jgeorge, pliden)
[ ] shared-tests  (lmesnik, pliden)


The above parts look good to me. Reviewed.

Just one tiny nit (and I don't need to see a new webrev for this):

In src/hotspot/share/gc/shared/gcCause.cpp you have this:

+case _shenandoah_allocation_failure_evac:
+  return "Allocation Failure During Evac";
+
+case _shenandoah_stop_vm:
+  return "Stopping VM";
+
+case _shenandoah_concurrent_gc:
+  return "Shenandoah Concurrent GC";
+
+case _shenandoah_traversal_gc:
+  return "Shenandoah Traversal GC";
+
+case _shenandoah_upgrade_to_full_gc:
+  return "Shenandoah Upgrade To Full GC";
+

And in 
src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/shared/GCCause.java 
you have this:


+  _shenandoah_stop_vm ("Stop VM"),
+  _shenandoah_allocation_failure_evac ("Allocation Failure During 
Evacuation"),

+  _shenandoah_concurrent_gc ("Concurrent GC"),
+  _shenandoah_traversal_gc ("Traversal GC"),
+  _shenandoah_upgrade_to_full_gc ("Upgrade to Full GC"),

It would be good to have the exact same strings in both places. There 
are currently small differences in all of them. "Evac" vs "Evacuation", 
"Stop" vs "Stopping", "Shenandoah" vs "", etc.


May I also suggest that you skip "Shenandoah" in things like "Shenandoah 
Concurrent GC" as I kind of think it's implied by the context. But I 
also know that CMS/G1 isn't consistent on this point. An alternative 
would be to add "Shenandoah" to all of the strings to keep things 
consistent, but I'm not sure I like that better. You decide.



[ ] shenandoah-gc
[ ] shenandoah-tests


I haven't looked very much on these parts, and I didn't plan to do so in 
detail right now. I think it's fine of the folks that have been working 
on the Shenandoah code reviewed this.


cheers,
Per




Thanks for your patience and ongoing support!

Cheers,
Roman


Hi all,

here comes round 4 of Shenandoah upstreaming review:

This includes fixes for the issues that Per brought up:
- Verify and gracefully reject dangerous flags combinations that
disables required barriers
- Revisited @requires filters in tests
- Trim unused code from Shenandoah's SA impl
- Move ShenandoahGCTracer to gc/shenandoah
- Fix ordering of GC names in various files
- Rename UINT64_FORMAT_HEX_W to UINT64_FORMAT_X_W

http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/04/

Thanks everybody for taking time to review this!
Roman


Hello all,

Thanks so far for all the reviews and support!

I forgot to update the 'round' yesterday. We are in round 3 now :-)
Also, I fixed the numbering of my webrevs to match the review-round. ;-)

Things we've changed today:
- We moved shenandoah-specific code out of .ad files into our own .ad
files under gc/shenandoah (in shenandoah-gc), how cool is that? This
requires an addition in build machinery though, see
make/hotspot/gensrc/GensrcAdlc.gmk (in shared-build).
- Improved zero-disabling and build-code-simplification as suggested by
Magnus and Per
- Cleaned up some leftovers in C2
- Improved C2 loop opts code by introducing another APIs in
BarrierSetC2. See the new APIs in shared-gc under BarrierSetC2.hpp.
- I don't see where it makes sense to put INCLUDE_SHENANDOAHGC guards now.
- We would all very much prefer to keep ShenandoahXYZNode names, as
noted earlier. This stuff is Shenandoah-specific, so let's just call it
that.
- Rehashed Shenandoah tests (formatting, naming, directory layout, etc)
- Rebased on jdk-12+22

- Question: let us know if you need separate RFE for the new BSC2 APIs?

http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/03/

Thanks,
Roman


Alright, we fixed:
- The 

Re: RFR(XS): 8214063: [AIX] Disable symbol visibility flags

2018-12-04 Thread Volker Simonis
Hi Adam,

I've just pushed the change:

http://hg.openjdk.java.net/jdk/jdk/rev/fc54d27e58d8

Best regards,
Volker
On Thu, Nov 29, 2018 at 5:54 PM Adam Farley8  wrote:
>
> Hi All,
>
> The build passed on xlC 13.1 with the makefile patch I proposed (good catch 
> on the comments Volkar!).
>
> With Volkar, Erik, Matthias, and Magnus all approving the change, it sounds 
> like we're good to merge!
>
> Volkar, can you do the honours?
>
> Best Regards
>
> Adam Farley
> IBM Runtimes
>
> P.S. I approve the change too. ;)
>
>
> Volker Simonis  wrote on 29/11/2018 11:54:33:
>
> > From: Volker Simonis 
> > To: Magnus Ihse Bursie 
> > Cc: build-dev , ppc-aix-port-
> > d...@openjdk.java.net, adam.far...@uk.ibm.com
> > Date: 29/11/2018 11:54
> > Subject: Re: RFR(XS): 8214063: [AIX] Disable symbol visibility flags
> >
> > On Thu, Nov 29, 2018 at 12:20 PM Magnus Ihse Bursie
> >  wrote:
> > >
> > > On 2018-11-27 16:33, Volker Simonis wrote:
> > >
> > > > Hi,
> > > >
> > > > can I please have a review for the following trivial change which
> > > > simply disables the symbol visibility flags on AIX:
> > > >
> > > > https://urldefense.proofpoint.com/v2/url?
> > u=http-3A__cr.openjdk.java.net_-7Esimonis_webrevs_2018_8214063_=DwIBaQ=jf_iaSHvJObTbx-
> > siA1ZOg=P5m8KWUXJf-
> > CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=6y4Npxy6aG4q8E9Xca--
> > YxF4UGVrVEIqu_wVvivFVUA=DptrWUUtJCcpUCbCWkkBOeFJCVk5im3hm9T_DcD0Jd8=
> > > > https://urldefense.proofpoint.com/v2/url?
> > u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8214063=DwIBaQ=jf_iaSHvJObTbx-
> > siA1ZOg=P5m8KWUXJf-
> > CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=6y4Npxy6aG4q8E9Xca--
> > YxF4UGVrVEIqu_wVvivFVUA=jBFABkJb5E5W9K8pMX794-3gnpLfPyi3oASA1kizQ7A=
> > > Looks good to me. I am sorry for the mess I caused by optimisically
> > > trying to fix things on a platform I could not compile on... :(
> > >
> >
> > Thanks for the review and don't worry! We really appreciate your
> > continued help. It's really us who should have tested and spotted the
> > problems earlier :)
> >
> > Regards,
> > Volker
> >
> > > This also reminds me that the visibility flags *really* should move into
> > > configure/spec, not be sprinkled like this in the make files.
> > >
> > > /Magnus
> > > >
> > > > Change "8202322: AIX: symbol visibility flags not support on xlc 12.1"
> > > > [1] blindly introduced these flags for all xlC compiler versions >
> > > > 12.1 without ever testing it (which should not have happened). Now
> > > > that people are starting to really use xlC 13 it turns out that there
> > > > is more to do than just enabling the flags. This future work is
> > > > covered by "8204541: Correctly support AIX xlC 13.1 symbol visibility
> > > > flags".
> > > >
> > > > Thank you and best regards,
> > > > Volker
> > > >
> > > > [1] https://urldefense.proofpoint.com/v2/url?
> > u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8202322=DwIBaQ=jf_iaSHvJObTbx-
> > siA1ZOg=P5m8KWUXJf-
> > CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=6y4Npxy6aG4q8E9Xca--
> > YxF4UGVrVEIqu_wVvivFVUA=pd7-rH7OPxeaq2g6S0dQPmb_3-8PLi8JZFKcP_Abp6Q=
> > > > [2] https://urldefense.proofpoint.com/v2/url?
> > u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8204541=DwIBaQ=jf_iaSHvJObTbx-
> > siA1ZOg=P5m8KWUXJf-
> > CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=6y4Npxy6aG4q8E9Xca--
> > YxF4UGVrVEIqu_wVvivFVUA=q7KHUASpF-opdcLXbTTUT1bPoKrkTeaHTtd7c2jN4rc=
> > >
> >
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number 
> 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU


Re: RFR: 8212794 IBM-964 is required for AIX default charset

2018-12-04 Thread Magnus Ihse Bursie




On 2018-12-04 04:30, Ichiroh Takiguchi wrote:

Hello Roger.

Thank you for your suggestion.


src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

I think this is no longer needed since it only has imports.
By the way, the style is to import each specific class and
avoid wild card imports.
"import sun.nio.cs.*;" is required because of 
SimpleEUCEncoder.java.template.

SimpleEUCEncoder.java.template has conversion loop and IBM964 refers it.
It means that,
* On AIX platform, SimpleEUCEncoder should be in sun.nio.cs package
* On non-AIX platform, SimpleEUCEncoder should be in sun.nio.cs.ext 
package

I could not determine which package has SimpleEUCEncoder.
And same kind code is available on ISO2022_JP.java.
Please let me know if you know another way.
I'm not sure I'm fully following the template intricacies here, but 
would this not be solved if IBM33722.java was made a template as well? 
Then you could do

import $PACKAGE$. SimpleEUCEncoder
Or so I'd think.

/Magnus



TestIBMBugs:
  - Please use a style consistent with other methods in the class.
In this case spaces are needed around "{" and "}, and a space
after "," comma.

I'll changed.


  - The new method bug8212794, includes a test for x-IBM33722.
Is that needed since there does not appear to be a change for 33722?

Yes, it's no need.

Could you review the fix again ?
Bug:https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.03/

Thanks,
Ichiroh Takiguchi

On 2018-12-04 05:50, Roger Riggs wrote:

Hi Ichiroh,

src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

I think this is no longer needed since it only has imports.
By the way, the style is to import each specific class and
avoid wild card imports.

TestIBMBugs:
  - Please use a style consistent with other methods in the class.
In this case spaces are needed around "{" and "}, and a space
after "," comma.

  - The new method bug8212794, includes a test for x-IBM33722.
Is that needed since there does not appear to be a change for 33722?

Regards, Roger


On 11/30/2018 09:58 AM, Magnus Ihse Bursie wrote:



On 2018-11-30 10:49, Ichiroh Takiguchi wrote:

Hello.

Could you review the fix again ?

Bug:https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.02/
I think it looks good but please let someone from core-libs review 
it too.


/Magnus


I just fixed only IBM964 for JDK-8212794.
(IBM29626C fix is not included)

On non AIX platform (Linux),
ibm-euctw alias is added for IBM964.

Without fix
$ jshell
|  Welcome to JShell -- Version 12-ea
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm964
964

jshell> /exit
|  Goodbye
$
==

With fix
==
$ jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

On AIX platform
IBM964 is moved to java.base module from jdk.charset module.

==
$ LANG=zh_TW jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.defaultCharset()
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

I'd like to obtain a sponsor for this issue.

Thanks,
Ichiroh Takiguchi
IBM Japan, Ltd.

On 2018-11-29 22:39, Ichiroh Takiguchi wrote:

Hello Alan & Magnus.

Sorry for you confusion.
I did many copy actions and rename actions.
So you may see, I added unexpected code into non AIX platform.

I think I should not put 2 kind of modification.

For this bug id, I'll handle IBM964 and IBM33722.
(also SimpleEUCEncoder.java is required)

I'll submit code review again.

Additionally, I'll touch
make/data/charsetmapping/charsets
make/data/charsetmapping/stdcs-aix

I'll not touch
make/jdk/src/classes/build/tools/charsetmapping/Main.java
make/jdk/src/classes/build/tools/charsetmapping/SRC.java

My build machine is not so fast, after test is done.
I'll post new code.

Thanks,
Ichiroh Takiguchi

On 2018-11-28 19:10, Magnus Ihse Bursie wrote:

On 2018-11-28 10:36, Alan Bateman wrote:

On 28/11/2018 09:28, Magnus Ihse Bursie wrote:
I'm quite unsatisfied with the current handling of character 
sets in the build in general. :-( I'd really like to modernize 
it. I have a, slightly fuzzy, laundry list of things I want to 
fix from a build perspective, but I'm not sure of what 
"external" 

Re: RFR (round 4), JDK-8214259: Implementation: JEP 189: Shenandoah: A Low-Pause Garbage Collector

2018-12-04 Thread Roman Kennke
Hi Jini,

> Thank you for making the changes. The SA portion looks good to me.

Thank you!

> One
> nit though:
> 
> In
> src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/tools/HeapSummary.java,
> in printGCAlgorithm(), does displaying the nbr of Parallel GC threads
> not make sense for Shenandoah (like it is for G1, ZGC, etc)?

I suppose it does. I will add it.

Thanks,
Roman

> Thank you,
> Jini.
> 
> 
> On 12/4/2018 12:57 AM, Roman Kennke wrote:
>> Round 5 of Shenandoah review includes:
>> - A fix for the @requires tag in TestFullGCCountTest.java. It should be
>> correct now. We believe the CMS @requires was also not quite right and
>> fixed it the same.
>>
>> It reads now: Don't run this test if:
>>   - Actual GC set by harness is CMS *and* ExplicitGCInvokesConcurrent is
>> true, as set by harness
>>   - Actual GC set by harness is Shenandoah *and*
>> ExplicitGCInvokesConcurrent is not set false by harness (it's true by
>> default in Shenandoah, so this needs to be double-inverteed).
>>
>> The @requires for CMS was wrong before (we think), because it would also
>> filter defaultGC + ExplicitGCInvokesConcurrent.
>>
>> - Sorting of macros was fixed, as was pointed out by Per
>> - Some stuff was added to SA, as suggested by Jini
>> - Rebased on most current jdk/jdk code
>>
>> Webrevs:
>> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/05/
>>
>> I also need reviews from GC reviewers for the CSR:
>> https://bugs.openjdk.java.net/browse/JDK-8214349
>>
>> I already got reviews for:
>> [x] shared-runtime (coleenp)
>> [x] shared-compiler (kvn)
>>
>> I got reviews for shared-build, but an earlier version, so maybe makes
>> sense to look over this again. Erik J, Magnus?
>>
>> I still need approvals for:
>> [ ] shared-build  (kvn, erikj, ihse, pliden)
>> [ ] shared-gc (pliden, kbarrett)
>> [ ] shared-serviceability (jgeorge, pliden)
>> [ ] shared-tests  (lmesnik, pliden)
>> [ ] shenandoah-gc
>> [ ] shenandoah-tests
>>
>>
>> Thanks for your patience and ongoing support!
>>
>> Cheers,
>> Roman
>>
>>> Hi all,
>>>
>>> here comes round 4 of Shenandoah upstreaming review:
>>>
>>> This includes fixes for the issues that Per brought up:
>>> - Verify and gracefully reject dangerous flags combinations that
>>> disables required barriers
>>> - Revisited @requires filters in tests
>>> - Trim unused code from Shenandoah's SA impl
>>> - Move ShenandoahGCTracer to gc/shenandoah
>>> - Fix ordering of GC names in various files
>>> - Rename UINT64_FORMAT_HEX_W to UINT64_FORMAT_X_W
>>>
>>> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/04/
>>>
>>> Thanks everybody for taking time to review this!
>>> Roman
>>>
 Hello all,

 Thanks so far for all the reviews and support!

 I forgot to update the 'round' yesterday. We are in round 3 now :-)
 Also, I fixed the numbering of my webrevs to match the review-round.
 ;-)

 Things we've changed today:
 - We moved shenandoah-specific code out of .ad files into our own .ad
 files under gc/shenandoah (in shenandoah-gc), how cool is that? This
 requires an addition in build machinery though, see
 make/hotspot/gensrc/GensrcAdlc.gmk (in shared-build).
 - Improved zero-disabling and build-code-simplification as suggested by
 Magnus and Per
 - Cleaned up some leftovers in C2
 - Improved C2 loop opts code by introducing another APIs in
 BarrierSetC2. See the new APIs in shared-gc under BarrierSetC2.hpp.
 - I don't see where it makes sense to put INCLUDE_SHENANDOAHGC
 guards now.
 - We would all very much prefer to keep ShenandoahXYZNode names, as
 noted earlier. This stuff is Shenandoah-specific, so let's just call it
 that.
 - Rehashed Shenandoah tests (formatting, naming, directory layout, etc)
 - Rebased on jdk-12+22

 - Question: let us know if you need separate RFE for the new BSC2 APIs?

 http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/03/

 Thanks,
 Roman

> Alright, we fixed:
> - The minor issues that Kim reported in shared-gc
> - A lot of fixes in shared-tests according to Leonid's review
> - Disabled SA heapdumping similar to ZGC as Per suggested
>
> Some notes:
> Leonid:  test/hotspot/jtreg/gc/TestFullGCCount.java was actually
> correct. The @requires there means to exclude runs with both CMS and
> ExplicitGCInvokesConcurrent at the same time, because that would be
> (expectedly) failing. It can run CMS, default GC and any other GC just
> fine. Adding the same clause for Shenandoah means the same, and
> filters
> the combination (+UseShenandoahGC)+(+ExplicitGCInvokesConcurrent). I
> made the condition a bit clearer by avoiding triple-negation.
>
> See:
> http://mail.openjdk.java.net/pipermail/shenandoah-dev/2018-November/008457.html
>
>
> Per: Disabling the SA part for heapdumping makes 2 tests fail:
> - 

Re: RFR (round 4), JDK-8214259: Implementation: JEP 189: Shenandoah: A Low-Pause Garbage Collector

2018-12-04 Thread Roman Kennke
Hi Per,

>> Round 5 of Shenandoah review includes:
>> - A fix for the @requires tag in TestFullGCCountTest.java. It should be
>> correct now. We believe the CMS @requires was also not quite right and
>> fixed it the same.
>>
>> It reads now: Don't run this test if:
>>   - Actual GC set by harness is CMS *and* ExplicitGCInvokesConcurrent is
>> true, as set by harness
>>   - Actual GC set by harness is Shenandoah *and*
>> ExplicitGCInvokesConcurrent is not set false by harness (it's true by
>> default in Shenandoah, so this needs to be double-inverteed).
>>
>> The @requires for CMS was wrong before (we think), because it would also
>> filter defaultGC + ExplicitGCInvokesConcurrent.
>>
>> - Sorting of macros was fixed, as was pointed out by Per
>> - Some stuff was added to SA, as suggested by Jini
>> - Rebased on most current jdk/jdk code
>>
>> Webrevs:
>> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/05/
>>
>> I also need reviews from GC reviewers for the CSR:
>> https://bugs.openjdk.java.net/browse/JDK-8214349
>>
>> I already got reviews for:
>> [x] shared-runtime (coleenp)
>> [x] shared-compiler (kvn)
>>
>> I got reviews for shared-build, but an earlier version, so maybe makes
>> sense to look over this again. Erik J, Magnus?
>>
>> I still need approvals for:
>> [ ] shared-build  (kvn, erikj, ihse, pliden)
>> [ ] shared-gc (pliden, kbarrett)
>> [ ] shared-serviceability (jgeorge, pliden)
>> [ ] shared-tests  (lmesnik, pliden)
> 
> The above parts look good to me. Reviewed.

Great! Thanks!

> Just one tiny nit (and I don't need to see a new webrev for this):
> 
> In src/hotspot/share/gc/shared/gcCause.cpp you have this:
> 
> +    case _shenandoah_allocation_failure_evac:
> +  return "Allocation Failure During Evac";
> +
> +    case _shenandoah_stop_vm:
> +  return "Stopping VM";
> +
> +    case _shenandoah_concurrent_gc:
> +  return "Shenandoah Concurrent GC";
> +
> +    case _shenandoah_traversal_gc:
> +  return "Shenandoah Traversal GC";
> +
> +    case _shenandoah_upgrade_to_full_gc:
> +  return "Shenandoah Upgrade To Full GC";
> +
> 
> And in
> src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/gc/shared/GCCause.java
> you have this:
> 
> +  _shenandoah_stop_vm ("Stop VM"),
> +  _shenandoah_allocation_failure_evac ("Allocation Failure During
> Evacuation"),
> +  _shenandoah_concurrent_gc ("Concurrent GC"),
> +  _shenandoah_traversal_gc ("Traversal GC"),
> +  _shenandoah_upgrade_to_full_gc ("Upgrade to Full GC"),
> 
> It would be good to have the exact same strings in both places. There
> are currently small differences in all of them. "Evac" vs "Evacuation",
> "Stop" vs "Stopping", "Shenandoah" vs "", etc.
> 
> May I also suggest that you skip "Shenandoah" in things like "Shenandoah
> Concurrent GC" as I kind of think it's implied by the context. But I
> also know that CMS/G1 isn't consistent on this point. An alternative
> would be to add "Shenandoah" to all of the strings to keep things
> consistent, but I'm not sure I like that better. You decide.

I'm addressing it here:
http://mail.openjdk.java.net/pipermail/shenandoah-dev/2018-December/008572.html


>> [ ] shenandoah-gc
>> [ ] shenandoah-tests
> 
> I haven't looked very much on these parts, and I didn't plan to do so in
> detail right now. I think it's fine of the folks that have been working
> on the Shenandoah code reviewed this.

Yes, I think so too (except maybe stuff like shenandoah_globals.hpp, but
that was already reviewed I think).

Thanks for reviewing, Per!

Roman

> cheers,
> Per
> 
>>
>>
>> Thanks for your patience and ongoing support!
>>
>> Cheers,
>> Roman
>>
>>> Hi all,
>>>
>>> here comes round 4 of Shenandoah upstreaming review:
>>>
>>> This includes fixes for the issues that Per brought up:
>>> - Verify and gracefully reject dangerous flags combinations that
>>> disables required barriers
>>> - Revisited @requires filters in tests
>>> - Trim unused code from Shenandoah's SA impl
>>> - Move ShenandoahGCTracer to gc/shenandoah
>>> - Fix ordering of GC names in various files
>>> - Rename UINT64_FORMAT_HEX_W to UINT64_FORMAT_X_W
>>>
>>> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/04/
>>>
>>> Thanks everybody for taking time to review this!
>>> Roman
>>>
 Hello all,

 Thanks so far for all the reviews and support!

 I forgot to update the 'round' yesterday. We are in round 3 now :-)
 Also, I fixed the numbering of my webrevs to match the review-round.
 ;-)

 Things we've changed today:
 - We moved shenandoah-specific code out of .ad files into our own .ad
 files under gc/shenandoah (in shenandoah-gc), how cool is that? This
 requires an addition in build machinery though, see
 make/hotspot/gensrc/GensrcAdlc.gmk (in shared-build).
 - Improved zero-disabling and build-code-simplification as suggested by
 Magnus and Per
 - Cleaned up some leftovers in C2
 - Improved C2 loop opts code by introducing 

Re: RFR: 8212794 IBM-964 is required for AIX default charset

2018-12-04 Thread Ichiroh Takiguchi

Hello Magnus.

IBM33722 should be in sun.nio.cs.ext package on jdk.charset module
Because it's not used for default encoding on AIX platform.

In case of template file, build tool checks 
make/data/charsetmapping/stdcs-aix file for this case.

If class name is there, it will be migrated to sun.nio.cs package.
About IBM33722,
If IBM33722 is moved to sun.nio.cs package also,
"import sun.nio.cs.*;" is no need on IBM33722.java
If IBM33722 is not in stdcs-aix,
"import sun.nio.cs.*;" is still required on IBM33722.java

Thanks,
Ichiroh Takiguchi

On 2018-12-04 19:42, Magnus Ihse Bursie wrote:

On 2018-12-04 04:30, Ichiroh Takiguchi wrote:

Hello Roger.

Thank you for your suggestion.


src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

I think this is no longer needed since it only has imports.
By the way, the style is to import each specific class and
avoid wild card imports.
"import sun.nio.cs.*;" is required because of 
SimpleEUCEncoder.java.template.
SimpleEUCEncoder.java.template has conversion loop and IBM964 refers 
it.

It means that,
* On AIX platform, SimpleEUCEncoder should be in sun.nio.cs package
* On non-AIX platform, SimpleEUCEncoder should be in sun.nio.cs.ext 
package

I could not determine which package has SimpleEUCEncoder.
And same kind code is available on ISO2022_JP.java.
Please let me know if you know another way.

I'm not sure I'm fully following the template intricacies here, but
would this not be solved if IBM33722.java was made a template as well?
Then you could do
import $PACKAGE$. SimpleEUCEncoder
Or so I'd think.

/Magnus



TestIBMBugs:
  - Please use a style consistent with other methods in the class.
In this case spaces are needed around "{" and "}, and a space
after "," comma.

I'll changed.


  - The new method bug8212794, includes a test for x-IBM33722.
Is that needed since there does not appear to be a change for 
33722?

Yes, it's no need.

Could you review the fix again ?
Bug:https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.03/

Thanks,
Ichiroh Takiguchi

On 2018-12-04 05:50, Roger Riggs wrote:

Hi Ichiroh,

src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

I think this is no longer needed since it only has imports.
By the way, the style is to import each specific class and
avoid wild card imports.

TestIBMBugs:
  - Please use a style consistent with other methods in the class.
In this case spaces are needed around "{" and "}, and a space
after "," comma.

  - The new method bug8212794, includes a test for x-IBM33722.
Is that needed since there does not appear to be a change for 
33722?


Regards, Roger


On 11/30/2018 09:58 AM, Magnus Ihse Bursie wrote:



On 2018-11-30 10:49, Ichiroh Takiguchi wrote:

Hello.

Could you review the fix again ?

Bug:https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.02/
I think it looks good but please let someone from core-libs review 
it too.


/Magnus


I just fixed only IBM964 for JDK-8212794.
(IBM29626C fix is not included)

On non AIX platform (Linux),
ibm-euctw alias is added for IBM964.

Without fix
$ jshell
|  Welcome to JShell -- Version 12-ea
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm964
964

jshell> /exit
|  Goodbye
$
==

With fix
==
$ jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

On AIX platform
IBM964 is moved to java.base module from jdk.charset module.

==
$ LANG=zh_TW jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.defaultCharset()
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

I'd like to obtain a sponsor for this issue.

Thanks,
Ichiroh Takiguchi
IBM Japan, Ltd.

On 2018-11-29 22:39, Ichiroh Takiguchi wrote:

Hello Alan & Magnus.

Sorry for you confusion.
I did many copy actions and rename actions.
So you may see, I added unexpected code into non AIX platform.

I think I should not put 2 kind of modification.

For this bug id, I'll handle IBM964 and IBM33722.
(also SimpleEUCEncoder.java is required)

I'll submit code review again.

Additionally, I'll touch
make/data/charsetmapping/charsets
make/data/charsetmapping/stdcs-aix

I'll not touch

Re: RFR: 8212794 IBM-964 is required for AIX default charset

2018-12-04 Thread Roger Riggs

Hi Ichiroh,

On 12/03/2018 10:30 PM, Ichiroh Takiguchi wrote:

Hello Roger.

Thank you for your suggestion.


src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

    I think this is no longer needed since it only has imports.
    By the way, the style is to import each specific class and
avoid wild card imports.
"import sun.nio.cs.*;" is required because of 
SimpleEUCEncoder.java.template.

SimpleEUCEncoder.java.template has conversion loop and IBM964 refers it.
It means that,
* On AIX platform, SimpleEUCEncoder should be in sun.nio.cs package
* On non-AIX platform, SimpleEUCEncoder should be in sun.nio.cs.ext 
package

I could not determine which package has SimpleEUCEncoder.
And same kind code is available on ISO2022_JP.java.
Please let me know if you know another way.
I understand, it is because IBM33722 may or may not be in the same 
package as SimpleEUCEncoder.

It is SimpleEUCEncoder that may be in a different package, not IBM33722.



TestIBMBugs:
  - Please use a style consistent with other methods in the class.
    In this case spaces are needed around "{" and "}, and a space
after "," comma.

I'll changed.

226-227:  add a space before "{" to have the same style as line 210.



  - The new method bug8212794, includes a test for x-IBM33722.
    Is that needed since there does not appear to be a change for 33722?

Yes, it's no need.

Could you review the fix again ?
Bug:    https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.03/


Thanks, looks fine.

Regards, Roger



Thanks,
Ichiroh Takiguchi

On 2018-12-04 05:50, Roger Riggs wrote:

Hi Ichiroh,

src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

    I think this is no longer needed since it only has imports.
    By the way, the style is to import each specific class and
avoid wild card imports.

TestIBMBugs:
  - Please use a style consistent with other methods in the class.
    In this case spaces are needed around "{" and "}, and a space
after "," comma.

  - The new method bug8212794, includes a test for x-IBM33722.
    Is that needed since there does not appear to be a change for 33722?

Regards, Roger


On 11/30/2018 09:58 AM, Magnus Ihse Bursie wrote:



On 2018-11-30 10:49, Ichiroh Takiguchi wrote:

Hello.

Could you review the fix again ?

Bug:    https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.02/
I think it looks good but please let someone from core-libs review 
it too.


/Magnus


I just fixed only IBM964 for JDK-8212794.
(IBM29626C fix is not included)

On non AIX platform (Linux),
ibm-euctw alias is added for IBM964.

Without fix
$ jshell
|  Welcome to JShell -- Version 12-ea
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm964
964

jshell> /exit
|  Goodbye
$
==

With fix
==
$ jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

On AIX platform
IBM964 is moved to java.base module from jdk.charset module.

==
$ LANG=zh_TW jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.defaultCharset()
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

I'd like to obtain a sponsor for this issue.

Thanks,
Ichiroh Takiguchi
IBM Japan, Ltd.

On 2018-11-29 22:39, Ichiroh Takiguchi wrote:

Hello Alan & Magnus.

Sorry for you confusion.
I did many copy actions and rename actions.
So you may see, I added unexpected code into non AIX platform.

I think I should not put 2 kind of modification.

For this bug id, I'll handle IBM964 and IBM33722.
(also SimpleEUCEncoder.java is required)

I'll submit code review again.

Additionally, I'll touch
make/data/charsetmapping/charsets
make/data/charsetmapping/stdcs-aix

I'll not touch
make/jdk/src/classes/build/tools/charsetmapping/Main.java
make/jdk/src/classes/build/tools/charsetmapping/SRC.java

My build machine is not so fast, after test is done.
I'll post new code.

Thanks,
Ichiroh Takiguchi

On 2018-11-28 19:10, Magnus Ihse Bursie wrote:

On 2018-11-28 10:36, Alan Bateman wrote:

On 28/11/2018 09:28, Magnus Ihse Bursie wrote:
I'm quite unsatisfied with the current handling of character 
sets in the build in general. :-( I'd really like to modernize 
it. I have a, slightly fuzzy, laundry list of things I 

Re: RFR(XS): 8214063: [AIX] Disable symbol visibility flags

2018-12-04 Thread Adam Farley8
Thanks Volker. :)

Best Regards

Adam Farley 
IBM Runtimes


Volker Simonis  wrote on 04/12/2018 08:30:58:

> From: Volker Simonis 
> To: adam.far...@uk.ibm.com
> Cc: build-dev , Magnus Ihse Bursie 
> , ppc-aix-port-...@openjdk.java.net
> Date: 04/12/2018 08:31
> Subject: Re: RFR(XS): 8214063: [AIX] Disable symbol visibility flags
> 
> Hi Adam,
> 
> I've just pushed the change:
> 
> INVALID URI REMOVED
> 
u=http-3A__hg.openjdk.java.net_jdk_jdk_rev_fc54d27e58d8=DwIBaQ=jf_iaSHvJObTbx-
> siA1ZOg=P5m8KWUXJf-
> CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=NhALBBoEo6HsbPIjB8bJJj30UR8DRP-
> PuJckMbmJvA0=gLabfGk2XJdLwimruwQdLAmjBXtCueO7qR01_xw5wuw=
> 
> Best regards,
> Volker
> On Thu, Nov 29, 2018 at 5:54 PM Adam Farley8  
wrote:
> >
> > Hi All,
> >
> > The build passed on xlC 13.1 with the makefile patch I proposed 
> (good catch on the comments Volkar!).
> >
> > With Volkar, Erik, Matthias, and Magnus all approving the change, 
> it sounds like we're good to merge!
> >
> > Volkar, can you do the honours?
> >
> > Best Regards
> >
> > Adam Farley
> > IBM Runtimes
> >
> > P.S. I approve the change too. ;)
> >
> >
> > Volker Simonis  wrote on 29/11/2018 
11:54:33:
> >
> > > From: Volker Simonis 
> > > To: Magnus Ihse Bursie 
> > > Cc: build-dev , ppc-aix-port-
> > > d...@openjdk.java.net, adam.far...@uk.ibm.com
> > > Date: 29/11/2018 11:54
> > > Subject: Re: RFR(XS): 8214063: [AIX] Disable symbol visibility flags
> > >
> > > On Thu, Nov 29, 2018 at 12:20 PM Magnus Ihse Bursie
> > >  wrote:
> > > >
> > > > On 2018-11-27 16:33, Volker Simonis wrote:
> > > >
> > > > > Hi,
> > > > >
> > > > > can I please have a review for the following trivial change 
which
> > > > > simply disables the symbol visibility flags on AIX:
> > > > >
> > > > > INVALID URI REMOVED
> > > 
> 
u=http-3A__cr.openjdk.java.net_-7Esimonis_webrevs_2018_8214063_=DwIBaQ=jf_iaSHvJObTbx-
> > > siA1ZOg=P5m8KWUXJf-
> > > CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=6y4Npxy6aG4q8E9Xca--
> > > 
YxF4UGVrVEIqu_wVvivFVUA=DptrWUUtJCcpUCbCWkkBOeFJCVk5im3hm9T_DcD0Jd8=
> > > > > INVALID URI REMOVED
> > > 
> 
u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8214063=DwIBaQ=jf_iaSHvJObTbx-
> > > siA1ZOg=P5m8KWUXJf-
> > > CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=6y4Npxy6aG4q8E9Xca--
> > > 
YxF4UGVrVEIqu_wVvivFVUA=jBFABkJb5E5W9K8pMX794-3gnpLfPyi3oASA1kizQ7A=
> > > > Looks good to me. I am sorry for the mess I caused by 
optimisically
> > > > trying to fix things on a platform I could not compile on... :(
> > > >
> > >
> > > Thanks for the review and don't worry! We really appreciate your
> > > continued help. It's really us who should have tested and spotted 
the
> > > problems earlier :)
> > >
> > > Regards,
> > > Volker
> > >
> > > > This also reminds me that the visibility flags *really* shouldmove 
into
> > > > configure/spec, not be sprinkled like this in the make files.
> > > >
> > > > /Magnus
> > > > >
> > > > > Change "8202322: AIX: symbol visibility flags not support onxlc 
12.1"
> > > > > [1] blindly introduced these flags for all xlC compiler versions 
>
> > > > > 12.1 without ever testing it (which should not have happened). 
Now
> > > > > that people are starting to really use xlC 13 it turns out that 
there
> > > > > is more to do than just enabling the flags. This future work is
> > > > > covered by "8204541: Correctly support AIX xlC 13.1 symbol 
visibility
> > > > > flags".
> > > > >
> > > > > Thank you and best regards,
> > > > > Volker
> > > > >
> > > > > [1] INVALID URI REMOVED
> > > 
> 
u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8202322=DwIBaQ=jf_iaSHvJObTbx-
> > > siA1ZOg=P5m8KWUXJf-
> > > CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=6y4Npxy6aG4q8E9Xca--
> > > 
YxF4UGVrVEIqu_wVvivFVUA=pd7-rH7OPxeaq2g6S0dQPmb_3-8PLi8JZFKcP_Abp6Q=
> > > > > [2] INVALID URI REMOVED
> > > 
> 
u=https-3A__bugs.openjdk.java.net_browse_JDK-2D8204541=DwIBaQ=jf_iaSHvJObTbx-
> > > siA1ZOg=P5m8KWUXJf-
> > > CeVJc0hDGD9AQ2LkcXDC0PMV9ntVw5Ho=6y4Npxy6aG4q8E9Xca--
> > > 
YxF4UGVrVEIqu_wVvivFVUA=q7KHUASpF-opdcLXbTTUT1bPoKrkTeaHTtd7c2jN4rc=
> > > >
> > >
> >
> > Unless stated otherwise above:
> > IBM United Kingdom Limited - Registered in England and Wales with 
> number 741598.
> > Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 
3AU
> 

Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 
741598. 
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU


RFR: JDK-8214780 Create pandoc package for Windows

2018-12-04 Thread Magnus Ihse Bursie
As requested in JDK-8179917, we should create a jib package for pandoc 
on Windows.


Bug: https://bugs.openjdk.java.net/browse/JDK-8214780
WebRev: 
http://cr.openjdk.java.net/~ihse/JDK-8214780-create-pandoc-package-for-windows/webrev.01


/Magnus



bootcycle builds x86_64-linux-gnu?

2018-12-04 Thread Matthias Klose
with jdk-12+22, bootcycle builds fail at least on x86_64-linux-gnu.  Is there
some place where I can check if this kind of build succeeds for others?

thanks, Matthias



Re: bootcycle builds x86_64-linux-gnu?

2018-12-04 Thread Aleksey Shipilev
On 12/4/18 2:24 PM, Matthias Klose wrote:
> with jdk-12+22, bootcycle builds fail at least on x86_64-linux-gnu.  Is there
> some place where I can check if this kind of build succeeds for others?

Just did this on jdk/jdk tip, and it passed:

 $ CONF=linux-x86_64-server-fastdebug make bootcycle-images
 ...
 Creating CDS archive for jdk image
 Stopping sjavac server
 Finished building target 'product-images' in configuration 
'linux-x86_64-server-fastdebug'
 Finished building target 'bootcycle-images' in configuration 
'linux-x86_64-server-fastdebug'

-Aleksey



Re: RFR 8214794 : java.specification.version should be only the major version number

2018-12-04 Thread Mandy Chung




On 12/4/18 8:16 AM, Roger Riggs wrote:

Please review correctly setting the java.specification.version property
with only the major version number.  A test is added to ensure the
java spec version agrees with the major version.

The symptoms are that jtreg would fail with a full version number.

Webrev:
  http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-2/



Looks okay.   I agree with Martin to go with a stronger assertion 
without converting into a number. 
test/jdk/java/lang/System/Versions.java looks like also covering this 
test case.  At some point it'd be good to consolidate these two tests.


Nit:  in GensrcMisc.gmk, I think VERSION_NUMBER and VERSION_PRE etc are 
a relevant group.   VERSION_SPECIFICATION can be moved to group with 
VERSION_CLASSFILE_MAJOR and MINOR.  Magnus may have an opinion.


Mandy


Re: RFR 8214794 : java.specification.version should be only the major version number

2018-12-04 Thread Brian Burkhalter
Hi Roger,

Looks fine.

Brian

> On Dec 4, 2018, at 8:23 AM, Roger Riggs  wrote:
> 
> Including build-dev for the change to GensrcMisc.gmk.
> 
> thx.
> 
> On 12/04/2018 11:16 AM, Roger Riggs wrote:
>> Please review correctly setting the java.specification.version property
>> with only the major version number.  A test is added to ensure the
>> java spec version agrees with the major version.
>> 
>> The symptoms are that jtreg would fail with a full version number.
>> 
>> Webrev:
>>   http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-2



Re: RFR: 8212794 IBM-964 is required for AIX default charset

2018-12-04 Thread Ichiroh Takiguchi

Hello Roger.

Thank you for your suggestion.

Could you review the fix again ?

Bug:https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.04/

Thanks,
Ichiroh Takiguchi

On 2018-12-04 23:36, Roger Riggs wrote:

Hi Ichiroh,

On 12/03/2018 10:30 PM, Ichiroh Takiguchi wrote:

Hello Roger.

Thank you for your suggestion.


src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

    I think this is no longer needed since it only has imports.
    By the way, the style is to import each specific class and
avoid wild card imports.
"import sun.nio.cs.*;" is required because of 
SimpleEUCEncoder.java.template.
SimpleEUCEncoder.java.template has conversion loop and IBM964 refers 
it.

It means that,
* On AIX platform, SimpleEUCEncoder should be in sun.nio.cs package
* On non-AIX platform, SimpleEUCEncoder should be in sun.nio.cs.ext 
package

I could not determine which package has SimpleEUCEncoder.
And same kind code is available on ISO2022_JP.java.
Please let me know if you know another way.

I understand, it is because IBM33722 may or may not be in the same
package as SimpleEUCEncoder.
It is SimpleEUCEncoder that may be in a different package, not 
IBM33722.



TestIBMBugs:
  - Please use a style consistent with other methods in the class.
    In this case spaces are needed around "{" and "}, and a space
after "," comma.

I'll changed.

226-227:  add a space before "{" to have the same style as line 210.



  - The new method bug8212794, includes a test for x-IBM33722.
    Is that needed since there does not appear to be a change for 
33722?

Yes, it's no need.

Could you review the fix again ?
Bug:    https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.03/


Thanks, looks fine.

Regards, Roger



Thanks,
Ichiroh Takiguchi

On 2018-12-04 05:50, Roger Riggs wrote:

Hi Ichiroh,

src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

    I think this is no longer needed since it only has imports.
    By the way, the style is to import each specific class and
avoid wild card imports.

TestIBMBugs:
  - Please use a style consistent with other methods in the class.
    In this case spaces are needed around "{" and "}, and a space
after "," comma.

  - The new method bug8212794, includes a test for x-IBM33722.
    Is that needed since there does not appear to be a change for 
33722?


Regards, Roger


On 11/30/2018 09:58 AM, Magnus Ihse Bursie wrote:



On 2018-11-30 10:49, Ichiroh Takiguchi wrote:

Hello.

Could you review the fix again ?

Bug:    https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.02/
I think it looks good but please let someone from core-libs review 
it too.


/Magnus


I just fixed only IBM964 for JDK-8212794.
(IBM29626C fix is not included)

On non AIX platform (Linux),
ibm-euctw alias is added for IBM964.

Without fix
$ jshell
|  Welcome to JShell -- Version 12-ea
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm964
964

jshell> /exit
|  Goodbye
$
==

With fix
==
$ jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

On AIX platform
IBM964 is moved to java.base module from jdk.charset module.

==
$ LANG=zh_TW jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.defaultCharset()
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

I'd like to obtain a sponsor for this issue.

Thanks,
Ichiroh Takiguchi
IBM Japan, Ltd.

On 2018-11-29 22:39, Ichiroh Takiguchi wrote:

Hello Alan & Magnus.

Sorry for you confusion.
I did many copy actions and rename actions.
So you may see, I added unexpected code into non AIX platform.

I think I should not put 2 kind of modification.

For this bug id, I'll handle IBM964 and IBM33722.
(also SimpleEUCEncoder.java is required)

I'll submit code review again.

Additionally, I'll touch
make/data/charsetmapping/charsets
make/data/charsetmapping/stdcs-aix

I'll not touch
make/jdk/src/classes/build/tools/charsetmapping/Main.java
make/jdk/src/classes/build/tools/charsetmapping/SRC.java

My build machine is not so fast, after test is done.
I'll post new code.

Thanks,
Ichiroh Takiguchi

On 2018-11-28 19:10, Magnus Ihse Bursie 

Re: RFR: 8212794 IBM-964 is required for AIX default charset

2018-12-04 Thread Roger Riggs

Hi Ichiroh,

Looks fine.

I can sponsor that for you.  Tomorrow, though, to allow time for any 
other comments.


Thanks, Roger


On 12/04/2018 10:21 AM, Ichiroh Takiguchi wrote:

Hello Roger.

Thank you for your suggestion.

Could you review the fix again ?

Bug:    https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.04/

Thanks,
Ichiroh Takiguchi

On 2018-12-04 23:36, Roger Riggs wrote:

Hi Ichiroh,

On 12/03/2018 10:30 PM, Ichiroh Takiguchi wrote:

Hello Roger.

Thank you for your suggestion.


src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

    I think this is no longer needed since it only has imports.
    By the way, the style is to import each specific class and
avoid wild card imports.
"import sun.nio.cs.*;" is required because of 
SimpleEUCEncoder.java.template.
SimpleEUCEncoder.java.template has conversion loop and IBM964 refers 
it.

It means that,
* On AIX platform, SimpleEUCEncoder should be in sun.nio.cs package
* On non-AIX platform, SimpleEUCEncoder should be in sun.nio.cs.ext 
package

I could not determine which package has SimpleEUCEncoder.
And same kind code is available on ISO2022_JP.java.
Please let me know if you know another way.

I understand, it is because IBM33722 may or may not be in the same
package as SimpleEUCEncoder.
It is SimpleEUCEncoder that may be in a different package, not IBM33722.



TestIBMBugs:
  - Please use a style consistent with other methods in the class.
    In this case spaces are needed around "{" and "}, and a space
after "," comma.

I'll changed.

226-227:  add a space before "{" to have the same style as line 210.



  - The new method bug8212794, includes a test for x-IBM33722.
    Is that needed since there does not appear to be a change for 
33722?

Yes, it's no need.

Could you review the fix again ?
Bug:    https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.03/


Thanks, looks fine.

Regards, Roger



Thanks,
Ichiroh Takiguchi

On 2018-12-04 05:50, Roger Riggs wrote:

Hi Ichiroh,

src/jdk.charsets/share/classes/sun/nio/cs/ext/IBM33722.java:

    I think this is no longer needed since it only has imports.
    By the way, the style is to import each specific class and
avoid wild card imports.

TestIBMBugs:
  - Please use a style consistent with other methods in the class.
    In this case spaces are needed around "{" and "}, and a space
after "," comma.

  - The new method bug8212794, includes a test for x-IBM33722.
    Is that needed since there does not appear to be a change for 
33722?


Regards, Roger


On 11/30/2018 09:58 AM, Magnus Ihse Bursie wrote:



On 2018-11-30 10:49, Ichiroh Takiguchi wrote:

Hello.

Could you review the fix again ?

Bug:    https://bugs.openjdk.java.net/browse/JDK-8212794
Change: https://cr.openjdk.java.net/~itakiguchi/8212794/webrev.02/
I think it looks good but please let someone from core-libs review 
it too.


/Magnus


I just fixed only IBM964 for JDK-8212794.
(IBM29626C fix is not included)

On non AIX platform (Linux),
ibm-euctw alias is added for IBM964.

Without fix
$ jshell
|  Welcome to JShell -- Version 12-ea
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm964
964

jshell> /exit
|  Goodbye
$
==

With fix
==
$ jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.forName("IBM964")
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.ext.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

On AIX platform
IBM964 is moved to java.base module from jdk.charset module.

==
$ LANG=zh_TW jshell
|  Welcome to JShell -- Version 12-internal
|  For an introduction type: /help intro

jshell> var cs = java.nio.charset.Charset.defaultCharset()
cs ==> x-IBM964

jshell> cs.getClass().getName()
$2 ==> "sun.nio.cs.IBM964"

jshell> System.out.println(String.join("\n", cs.aliases()))
ibm-964
cp964
ibm-euctw
ibm964
964

jshell> /exit
|  Goodbye
$
==

I'd like to obtain a sponsor for this issue.

Thanks,
Ichiroh Takiguchi
IBM Japan, Ltd.

On 2018-11-29 22:39, Ichiroh Takiguchi wrote:

Hello Alan & Magnus.

Sorry for you confusion.
I did many copy actions and rename actions.
So you may see, I added unexpected code into non AIX platform.

I think I should not put 2 kind of modification.

For this bug id, I'll handle IBM964 and IBM33722.
(also SimpleEUCEncoder.java is required)

I'll submit code review again.

Additionally, I'll touch
make/data/charsetmapping/charsets
make/data/charsetmapping/stdcs-aix

I'll not touch
make/jdk/src/classes/build/tools/charsetmapping/Main.java

Re: RFR: JDK-8214780 Create pandoc package for Windows

2018-12-04 Thread Erik Joelsson

Looks good.

/Erik

On 2018-12-04 04:34, Magnus Ihse Bursie wrote:
As requested in JDK-8179917, we should create a jib package for pandoc 
on Windows.


Bug: https://bugs.openjdk.java.net/browse/JDK-8214780
WebRev: 
http://cr.openjdk.java.net/~ihse/JDK-8214780-create-pandoc-package-for-windows/webrev.01


/Magnus



Re: RFR 8214794 : java.specification.version should be only the major version number

2018-12-04 Thread Roger Riggs

Including build-dev for the change to GensrcMisc.gmk.

thx.

On 12/04/2018 11:16 AM, Roger Riggs wrote:

Please review correctly setting the java.specification.version property
with only the major version number.  A test is added to ensure the
java spec version agrees with the major version.

The symptoms are that jtreg would fail with a full version number.

Webrev:
  http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-2/

Thanks, Roger






Re: RFR 8214794 : java.specification.version should be only the major version number

2018-12-04 Thread Mandy Chung

The revised webrev looks okay.

Mandy

On 12/4/18 11:32 AM, Roger Riggs wrote:

Hi Mandy, Martin,

The new test is unnecessary, the case is covered by 
java/lang/System/Versions test

and uses the stronger comparison for the version numbers.

It would not detect the problem unless the version included more than 
the major version.


Webrev: http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-3/

Thanks, Roger

On 12/04/2018 01:41 PM, Mandy Chung wrote:



On 12/4/18 8:16 AM, Roger Riggs wrote:

Please review correctly setting the java.specification.version property
with only the major version number.  A test is added to ensure the
java spec version agrees with the major version.

The symptoms are that jtreg would fail with a full version number.

Webrev:
http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-2/



Looks okay.   I agree with Martin to go with a stronger assertion 
without converting into a number. 
test/jdk/java/lang/System/Versions.java looks like also covering this 
test case.  At some point it'd be good to consolidate these two tests.


Nit:  in GensrcMisc.gmk, I think VERSION_NUMBER and VERSION_PRE etc 
are a relevant group.   VERSION_SPECIFICATION can be moved to group 
with VERSION_CLASSFILE_MAJOR and MINOR.  Magnus may have an opinion.


Mandy






Re: RFR 8214794 : java.specification.version should be only the major version number

2018-12-04 Thread Roger Riggs

Hi Mandy, Martin,

The new test is unnecessary, the case is covered by 
java/lang/System/Versions test

and uses the stronger comparison for the version numbers.

It would not detect the problem unless the version included more than 
the major version.


Webrev: http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-3/

Thanks, Roger

On 12/04/2018 01:41 PM, Mandy Chung wrote:



On 12/4/18 8:16 AM, Roger Riggs wrote:

Please review correctly setting the java.specification.version property
with only the major version number.  A test is added to ensure the
java spec version agrees with the major version.

The symptoms are that jtreg would fail with a full version number.

Webrev:
http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-2/



Looks okay.   I agree with Martin to go with a stronger assertion 
without converting into a number. 
test/jdk/java/lang/System/Versions.java looks like also covering this 
test case.  At some point it'd be good to consolidate these two tests.


Nit:  in GensrcMisc.gmk, I think VERSION_NUMBER and VERSION_PRE etc 
are a relevant group.   VERSION_SPECIFICATION can be moved to group 
with VERSION_CLASSFILE_MAJOR and MINOR.  Magnus may have an opinion.


Mandy




Re: RFR 8214794 : java.specification.version should be only the major version number

2018-12-04 Thread Erik Joelsson

Looks good.

/Erik

On 2018-12-04 11:32, Roger Riggs wrote:

Hi Mandy, Martin,

The new test is unnecessary, the case is covered by 
java/lang/System/Versions test

and uses the stronger comparison for the version numbers.

It would not detect the problem unless the version included more than 
the major version.


Webrev: http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-3/

Thanks, Roger

On 12/04/2018 01:41 PM, Mandy Chung wrote:



On 12/4/18 8:16 AM, Roger Riggs wrote:

Please review correctly setting the java.specification.version property
with only the major version number.  A test is added to ensure the
java spec version agrees with the major version.

The symptoms are that jtreg would fail with a full version number.

Webrev:
http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-2/



Looks okay.   I agree with Martin to go with a stronger assertion 
without converting into a number. 
test/jdk/java/lang/System/Versions.java looks like also covering this 
test case.  At some point it'd be good to consolidate these two tests.


Nit:  in GensrcMisc.gmk, I think VERSION_NUMBER and VERSION_PRE etc 
are a relevant group.   VERSION_SPECIFICATION can be moved to group 
with VERSION_CLASSFILE_MAJOR and MINOR.  Magnus may have an opinion.


Mandy




Re: RFR 8214794 : java.specification.version should be only the major version number

2018-12-04 Thread Magnus Ihse Bursie
Looks good to me, too. 

/Magnus

> 4 dec. 2018 kl. 20:34 skrev Mandy Chung :
> 
> The revised webrev looks okay.
> 
> Mandy
> 
>> On 12/4/18 11:32 AM, Roger Riggs wrote:
>> Hi Mandy, Martin,
>> 
>> The new test is unnecessary, the case is covered by 
>> java/lang/System/Versions test
>> and uses the stronger comparison for the version numbers.
>> 
>> It would not detect the problem unless the version included more than the 
>> major version.
>> 
>> Webrev: http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-3/
>> 
>> Thanks, Roger
>> 
>>> On 12/04/2018 01:41 PM, Mandy Chung wrote:
>>> 
>>> 
 On 12/4/18 8:16 AM, Roger Riggs wrote:
 Please review correctly setting the java.specification.version property
 with only the major version number.  A test is added to ensure the
 java spec version agrees with the major version.
 
 The symptoms are that jtreg would fail with a full version number.
 
 Webrev:
 http://cr.openjdk.java.net/~rriggs/webrev-spec-ver-8214700-2/
 
>>> 
>>> Looks okay.   I agree with Martin to go with a stronger assertion without 
>>> converting into a number. test/jdk/java/lang/System/Versions.java looks 
>>> like also covering this test case.  At some point it'd be good to 
>>> consolidate these two tests.
>>> 
>>> Nit:  in GensrcMisc.gmk, I think VERSION_NUMBER and VERSION_PRE etc are a 
>>> relevant group.   VERSION_SPECIFICATION can be moved to group with 
>>> VERSION_CLASSFILE_MAJOR and MINOR.  Magnus may have an opinion.
>>> 
>>> Mandy
>> 
> 



Re: bootcycle builds x86_64-linux-gnu?

2018-12-04 Thread David Holmes

On 4/12/2018 11:24 pm, Matthias Klose wrote:

with jdk-12+22, bootcycle builds fail at least on x86_64-linux-gnu.  Is there
some place where I can check if this kind of build succeeds for others?


They don't fail for us, we run them regularly.

Cheers,
David


thanks, Matthias



Re: RFR (round 5), JDK-8214259: Implementation: JEP 189: Shenandoah: A Low-Pause Garbage Collector

2018-12-04 Thread Leonid Mesnik
Hi

The shared tests changes looks good for me. Thank you for fixing and testing 
different combinations. 

Leonid

> On Dec 3, 2018, at 11:10 PM, Roman Kennke  wrote:
> 
> Round 5 of Shenandoah review includes:
> - A fix for the @requires tag in TestFullGCCountTest.java. It should be
> correct now. We believe the CMS @requires was also not quite right and
> fixed it the same.
> 
> It reads now: Don't run this test if:
> - Actual GC set by harness is CMS *and* ExplicitGCInvokesConcurrent is
> true, as set by harness
> - Actual GC set by harness is Shenandoah *and*
> ExplicitGCInvokesConcurrent is not set false by harness (it's true by
> default in Shenandoah, so this needs to be double-inverteed).
> 
> The @requires for CMS was wrong before (we think), because it would also
> filter defaultGC + ExplicitGCInvokesConcurrent.
> 
> - Sorting of macros was fixed, as was pointed out by Per
> - Some stuff was added to SA, as suggested by Jini
> - Rebased on most current jdk/jdk code
> 
> Webrevs:
> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/05/
> 
> I also need reviews from GC reviewers for the CSR:
> https://bugs.openjdk.java.net/browse/JDK-8214349
> 
> I already got reviews for:
> [x] shared-runtime (coleenp)
> [x] shared-compiler (kvn)
> 
> I got reviews for shared-build, but an earlier version, so maybe makes
> sense to look over this again. Erik J, Magnus?
> 
> I still need approvals for:
> [ ] shared-build  (kvn, erikj, ihse, pliden)
> [ ] shared-gc (pliden, kbarrett)
> [ ] shared-serviceability (jgeorge, pliden)
> [ ] shared-tests  (lmesnik, pliden)
> [ ] shenandoah-gc
> [ ] shenandoah-tests
> 
> 
> Thanks for your patience and ongoing support!
> 
> Cheers,
> Roman
> 
> 
>> Hi all,
>> 
>> here comes round 4 of Shenandoah upstreaming review:
>> 
>> This includes fixes for the issues that Per brought up:
>> - Verify and gracefully reject dangerous flags combinations that
>> disables required barriers
>> - Revisited @requires filters in tests
>> - Trim unused code from Shenandoah's SA impl
>> - Move ShenandoahGCTracer to gc/shenandoah
>> - Fix ordering of GC names in various files
>> - Rename UINT64_FORMAT_HEX_W to UINT64_FORMAT_X_W
>> 
>> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/04/
>> 
>> Thanks everybody for taking time to review this!
>> Roman
>> 
>>> Hello all,
>>> 
>>> Thanks so far for all the reviews and support!
>>> 
>>> I forgot to update the 'round' yesterday. We are in round 3 now :-)
>>> Also, I fixed the numbering of my webrevs to match the review-round. ;-)
>>> 
>>> Things we've changed today:
>>> - We moved shenandoah-specific code out of .ad files into our own .ad
>>> files under gc/shenandoah (in shenandoah-gc), how cool is that? This
>>> requires an addition in build machinery though, see
>>> make/hotspot/gensrc/GensrcAdlc.gmk (in shared-build).
>>> - Improved zero-disabling and build-code-simplification as suggested by
>>> Magnus and Per
>>> - Cleaned up some leftovers in C2
>>> - Improved C2 loop opts code by introducing another APIs in
>>> BarrierSetC2. See the new APIs in shared-gc under BarrierSetC2.hpp.
>>> - I don't see where it makes sense to put INCLUDE_SHENANDOAHGC guards now.
>>> - We would all very much prefer to keep ShenandoahXYZNode names, as
>>> noted earlier. This stuff is Shenandoah-specific, so let's just call it
>>> that.
>>> - Rehashed Shenandoah tests (formatting, naming, directory layout, etc)
>>> - Rebased on jdk-12+22
>>> 
>>> - Question: let us know if you need separate RFE for the new BSC2 APIs?
>>> 
>>> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/03/
>>> 
>>> Thanks,
>>> Roman
>>> 
 Alright, we fixed:
 - The minor issues that Kim reported in shared-gc
 - A lot of fixes in shared-tests according to Leonid's review
 - Disabled SA heapdumping similar to ZGC as Per suggested
 
 Some notes:
 Leonid:  test/hotspot/jtreg/gc/TestFullGCCount.java was actually
 correct. The @requires there means to exclude runs with both CMS and
 ExplicitGCInvokesConcurrent at the same time, because that would be
 (expectedly) failing. It can run CMS, default GC and any other GC just
 fine. Adding the same clause for Shenandoah means the same, and filters
 the combination (+UseShenandoahGC)+(+ExplicitGCInvokesConcurrent). I
 made the condition a bit clearer by avoiding triple-negation.
 
 See:
 http://mail.openjdk.java.net/pipermail/shenandoah-dev/2018-November/008457.html
 
 Per: Disabling the SA part for heapdumping makes 2 tests fail:
 - test/hotspot/jtreg/serviceability/sa/ClhsdbJhisto.java
 - test/hotspot/jtreg/serviceability/sa/TestHeapDumpForLargeArray.java
 
 we filter them for Shenandoah now. I'm wondering: how do you get past
 those with ZGC?
 
 See:
 http://mail.openjdk.java.net/pipermail/shenandoah-dev/2018-November/008466.html
 
 (Note to Leonid and tests reviewers: I'll add those related filters in

Re: RFR (round 5), JDK-8214259: Implementation: JEP 189: Shenandoah: A Low-Pause Garbage Collector

2018-12-04 Thread Roman Kennke
Thanks, Leonid, for reviewing!

Roman


> Hi
> 
> The shared tests changes looks good for me. Thank you for fixing and testing 
> different combinations. 
> 
> Leonid
> 
>> On Dec 3, 2018, at 11:10 PM, Roman Kennke  wrote:
>>
>> Round 5 of Shenandoah review includes:
>> - A fix for the @requires tag in TestFullGCCountTest.java. It should be
>> correct now. We believe the CMS @requires was also not quite right and
>> fixed it the same.
>>
>> It reads now: Don't run this test if:
>> - Actual GC set by harness is CMS *and* ExplicitGCInvokesConcurrent is
>> true, as set by harness
>> - Actual GC set by harness is Shenandoah *and*
>> ExplicitGCInvokesConcurrent is not set false by harness (it's true by
>> default in Shenandoah, so this needs to be double-inverteed).
>>
>> The @requires for CMS was wrong before (we think), because it would also
>> filter defaultGC + ExplicitGCInvokesConcurrent.
>>
>> - Sorting of macros was fixed, as was pointed out by Per
>> - Some stuff was added to SA, as suggested by Jini
>> - Rebased on most current jdk/jdk code
>>
>> Webrevs:
>> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/05/
>>
>> I also need reviews from GC reviewers for the CSR:
>> https://bugs.openjdk.java.net/browse/JDK-8214349
>>
>> I already got reviews for:
>> [x] shared-runtime (coleenp)
>> [x] shared-compiler (kvn)
>>
>> I got reviews for shared-build, but an earlier version, so maybe makes
>> sense to look over this again. Erik J, Magnus?
>>
>> I still need approvals for:
>> [ ] shared-build  (kvn, erikj, ihse, pliden)
>> [ ] shared-gc (pliden, kbarrett)
>> [ ] shared-serviceability (jgeorge, pliden)
>> [ ] shared-tests  (lmesnik, pliden)
>> [ ] shenandoah-gc
>> [ ] shenandoah-tests
>>
>>
>> Thanks for your patience and ongoing support!
>>
>> Cheers,
>> Roman
>>
>>
>>> Hi all,
>>>
>>> here comes round 4 of Shenandoah upstreaming review:
>>>
>>> This includes fixes for the issues that Per brought up:
>>> - Verify and gracefully reject dangerous flags combinations that
>>> disables required barriers
>>> - Revisited @requires filters in tests
>>> - Trim unused code from Shenandoah's SA impl
>>> - Move ShenandoahGCTracer to gc/shenandoah
>>> - Fix ordering of GC names in various files
>>> - Rename UINT64_FORMAT_HEX_W to UINT64_FORMAT_X_W
>>>
>>> http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/04/
>>>
>>> Thanks everybody for taking time to review this!
>>> Roman
>>>
 Hello all,

 Thanks so far for all the reviews and support!

 I forgot to update the 'round' yesterday. We are in round 3 now :-)
 Also, I fixed the numbering of my webrevs to match the review-round. ;-)

 Things we've changed today:
 - We moved shenandoah-specific code out of .ad files into our own .ad
 files under gc/shenandoah (in shenandoah-gc), how cool is that? This
 requires an addition in build machinery though, see
 make/hotspot/gensrc/GensrcAdlc.gmk (in shared-build).
 - Improved zero-disabling and build-code-simplification as suggested by
 Magnus and Per
 - Cleaned up some leftovers in C2
 - Improved C2 loop opts code by introducing another APIs in
 BarrierSetC2. See the new APIs in shared-gc under BarrierSetC2.hpp.
 - I don't see where it makes sense to put INCLUDE_SHENANDOAHGC guards now.
 - We would all very much prefer to keep ShenandoahXYZNode names, as
 noted earlier. This stuff is Shenandoah-specific, so let's just call it
 that.
 - Rehashed Shenandoah tests (formatting, naming, directory layout, etc)
 - Rebased on jdk-12+22

 - Question: let us know if you need separate RFE for the new BSC2 APIs?

 http://cr.openjdk.java.net/~rkennke/shenandoah-upstream/03/

 Thanks,
 Roman

> Alright, we fixed:
> - The minor issues that Kim reported in shared-gc
> - A lot of fixes in shared-tests according to Leonid's review
> - Disabled SA heapdumping similar to ZGC as Per suggested
>
> Some notes:
> Leonid:  test/hotspot/jtreg/gc/TestFullGCCount.java was actually
> correct. The @requires there means to exclude runs with both CMS and
> ExplicitGCInvokesConcurrent at the same time, because that would be
> (expectedly) failing. It can run CMS, default GC and any other GC just
> fine. Adding the same clause for Shenandoah means the same, and filters
> the combination (+UseShenandoahGC)+(+ExplicitGCInvokesConcurrent). I
> made the condition a bit clearer by avoiding triple-negation.
>
> See:
> http://mail.openjdk.java.net/pipermail/shenandoah-dev/2018-November/008457.html
>
> Per: Disabling the SA part for heapdumping makes 2 tests fail:
> - test/hotspot/jtreg/serviceability/sa/ClhsdbJhisto.java
> - test/hotspot/jtreg/serviceability/sa/TestHeapDumpForLargeArray.java
>
> we filter them for Shenandoah now. I'm wondering: how do you get past
> those with ZGC?
>
> See:
> 

Re: RFR 8214794 : java.specification.version should be only the major version number

2018-12-04 Thread Martin Buchholz
>
> LGTM