Re: RFR: 8275666: serviceability/jvmti/GetObjectSizeClass.java shouldn't have vm.flagless

2021-10-20 Thread Igor Ignatyev
On Wed, 20 Oct 2021 18:34:36 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this tiny patch?
> 
> from JBS:
>> serviceability/jvmti/GetObjectSizeClass.java doesn't ignore external flags 
>> (where it matters) and hence should not have been marked w/ vm.flagless
> 
> Thanks,
> -- Igor

Thanks Leonid!

-

PR: https://git.openjdk.java.net/jdk/pull/6050


Integrated: 8275666: serviceability/jvmti/GetObjectSizeClass.java shouldn't have vm.flagless

2021-10-20 Thread Igor Ignatyev
On Wed, 20 Oct 2021 18:34:36 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this tiny patch?
> 
> from JBS:
>> serviceability/jvmti/GetObjectSizeClass.java doesn't ignore external flags 
>> (where it matters) and hence should not have been marked w/ vm.flagless
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: cea3f010
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk/commit/cea3f010460c4b45e76bfac8a5b193c49fdd274a
Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod

8275666: serviceability/jvmti/GetObjectSizeClass.java shouldn't have vm.flagless

Reviewed-by: lmesnik

-

PR: https://git.openjdk.java.net/jdk/pull/6050


RFR: 8275666: serviceability/jvmti/GetObjectSizeClass.java shouldn't have vm.flagless

2021-10-20 Thread Igor Ignatyev
Hi all,

could you please review this tiny patch?

from JBS:
> serviceability/jvmti/GetObjectSizeClass.java doesn't ignore external flags 
> (where it matters) and hence should not have been marked w/ vm.flagless

Thanks,
-- Igor

-

Commit messages:
 - 8275666

Changes: https://git.openjdk.java.net/jdk/pull/6050/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=6050=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8275666
  Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6050.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6050/head:pull/6050

PR: https://git.openjdk.java.net/jdk/pull/6050


Re: RFR: 8272398: Update DockerTestUtils.buildJdkDockerImage() [v2]

2021-08-17 Thread Igor Ignatyev
On Tue, 17 Aug 2021 14:58:48 GMT, Mikhailo Seledtsov  
wrote:

>> Please review this change that updates the buildJdkDockerImage() test 
>> library API.
>> 
>> This work originated while working on "8195809: [TESTBUG] jps and jcmd -l 
>> support for containers is not tested".
>> The initial intent was to extend the buildJdkDockerImage() API of 
>> DockerTestUtils to accept custom Dockerfile content.
>> As I analyzed the usage of buildJdkDockerImage() I realized that:
>>   - 2nd argument "dockerfile" is always the same: "Dockerfile-BasicTest"
>>   its use has been obsolete for some time, in favor of Dockerfile 
>> generated by DockerTestUtils
>>   - 3rd argument "buildDirName" is also always the same: "jdk-docker"
>> 
>> Hence I thought it would be a good idea to simplify this API and make it 
>> up-to-date.
>> 
>> Also, since the method signature is being updated, I thought it would be a 
>> good idea to also change the name to use more generic container terminology:
>> buildJdkDockerImage() --> buildJdkContainerImage()
>
> Mikhailo Seledtsov has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Addressing review feedback

Looks good and trivial to me.

-

Marked as reviewed by iignatyev (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/5134


Re: RFR: 8272398: Update DockerTestUtils.buildJdkDockerImage()

2021-08-16 Thread Igor Ignatyev
On Mon, 16 Aug 2021 23:31:41 GMT, Mikhailo Seledtsov  
wrote:

> Please review this change that updates the buildJdkDockerImage() test library 
> API.
> 
> This work originated while working on "8195809: [TESTBUG] jps and jcmd -l 
> support for containers is not tested".
> The initial intent was to extend the buildJdkDockerImage() API of 
> DockerTestUtils to accept custom Dockerfile content.
> As I analyzed the usage of buildJdkDockerImage() I realized that:
>   - 2nd argument "dockerfile" is always the same: "Dockerfile-BasicTest"
>   its use has been obsolete for some time, in favor of Dockerfile 
> generated by DockerTestUtils
>   - 3rd argument "buildDirName" is also always the same: "jdk-docker"
> 
> Hence I thought it would be a good idea to simplify this API and make it 
> up-to-date.
> 
> Also, since the method signature is being updated, I thought it would be a 
> good idea to also change the name to use more generic container terminology:
> buildJdkDockerImage() --> buildJdkContainerImage()

Changes requested by iignatyev (Reviewer).

test/lib/jdk/test/lib/containers/docker/DockerTestUtils.java line 145:

> 143: 
> 144: // Create an image build/staging directory
> 145: Path buildDir = Paths.get(".", "image-build");

to make it more robust and possible to have more than one container within a 
test, I'd use `imagName` + "image-build" as build dir name.

test/lib/jdk/test/lib/containers/docker/DockerTestUtils.java line 179:

> 177:  * @throws Exception
> 178:  */
> 179: public static void buildImage(String imageName, Path buildDir) 
> throws Exception {

it seems there are no users of this method, do we need to keep it public?

-

PR: https://git.openjdk.java.net/jdk/pull/5134


Re: RFR: 8272398: Update DockerTestUtils.buildJdkDockerImage()

2021-08-16 Thread Igor Ignatyev
On Mon, 16 Aug 2021 23:47:04 GMT, Igor Ignatyev  wrote:

>> Please review this change that updates the buildJdkDockerImage() test 
>> library API.
>> 
>> This work originated while working on "8195809: [TESTBUG] jps and jcmd -l 
>> support for containers is not tested".
>> The initial intent was to extend the buildJdkDockerImage() API of 
>> DockerTestUtils to accept custom Dockerfile content.
>> As I analyzed the usage of buildJdkDockerImage() I realized that:
>>   - 2nd argument "dockerfile" is always the same: "Dockerfile-BasicTest"
>>   its use has been obsolete for some time, in favor of Dockerfile 
>> generated by DockerTestUtils
>>   - 3rd argument "buildDirName" is also always the same: "jdk-docker"
>> 
>> Hence I thought it would be a good idea to simplify this API and make it 
>> up-to-date.
>> 
>> Also, since the method signature is being updated, I thought it would be a 
>> good idea to also change the name to use more generic container terminology:
>> buildJdkDockerImage() --> buildJdkContainerImage()
>
> test/lib/jdk/test/lib/containers/docker/DockerTestUtils.java line 145:
> 
>> 143: 
>> 144: // Create an image build/staging directory
>> 145: Path buildDir = Paths.get(".", "image-build");
> 
> to make it more robust and possible to have more than one container within a 
> test, I'd use `imagName` + "image-build" as build dir name.

you also don't need to have `.` as a first argument, `Paths.get("x")` returns 
you a path to "x" in current directory.

-

PR: https://git.openjdk.java.net/jdk/pull/5134


[jdk17] Integrated: 8067223: [TESTBUG] Rename Whitebox API package

2021-08-02 Thread Igor Ignatyev
On Wed, 28 Jul 2021 17:13:49 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this big tedious and trivial(-ish) patch which moves 
> `sun.hotspot.WhiteBox` and related classes to `jdk.test.whitebox` package?
> 
> the majority of the patch is the following substitutions:
>  - `s~sun/hotspot/WhiteBox~jdk/test/whitebox/WhiteBox~g`
>  - `s/sun.hotspot.parser/jdk.test.whitebox.parser/g`
>  - `s/sun.hotspot.cpuinfo/jdk.test.whitebox.cpuinfo/g`
>  - `s/sun.hotspot.code/jdk.test.whitebox.code/g`
>  - `s/sun.hotspot.gc/jdk.test.whitebox.gc/g`
>  - `s/sun.hotspot.WhiteBox/jdk.test.whitebox.WhiteBox/g`
> 
> testing: tier1-4
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: ada58d13
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk17/commit/ada58d13f78eb8a240220c45c573335eeb47cf07
Stats: 532 lines in 36 files changed: 449 ins; 0 del; 83 mod

8067223: [TESTBUG] Rename Whitebox API package

Reviewed-by: dholmes, kvn

-

PR: https://git.openjdk.java.net/jdk17/pull/290


Re: [jdk17] RFR: 8067223: [TESTBUG] Rename Whitebox API package [v2]

2021-08-02 Thread Igor Ignatyev
On Mon, 2 Aug 2021 15:56:39 GMT, Vladimir Kozlov  wrote:

> I agree with these revised changes for JDK 17.

Thanks for your review, Vladimir. 

I'll rerun my testing before integrating (just for good luck).

-- Igor

-

PR: https://git.openjdk.java.net/jdk17/pull/290


Re: [jdk17] RFR: 8067223: [TESTBUG] Rename Whitebox API package [v2]

2021-08-02 Thread Igor Ignatyev
On Sat, 31 Jul 2021 20:42:10 GMT, Igor Ignatyev  wrote:

>> Hi all,
>> 
>> could you please review this big tedious and trivial(-ish) patch which moves 
>> `sun.hotspot.WhiteBox` and related classes to `jdk.test.whitebox` package?
>> 
>> the majority of the patch is the following substitutions:
>>  - `s~sun/hotspot/WhiteBox~jdk/test/whitebox/WhiteBox~g`
>>  - `s/sun.hotspot.parser/jdk.test.whitebox.parser/g`
>>  - `s/sun.hotspot.cpuinfo/jdk.test.whitebox.cpuinfo/g`
>>  - `s/sun.hotspot.code/jdk.test.whitebox.code/g`
>>  - `s/sun.hotspot.gc/jdk.test.whitebox.gc/g`
>>  - `s/sun.hotspot.WhiteBox/jdk.test.whitebox.WhiteBox/g`
>> 
>> testing: tier1-4
>> 
>> Thanks,
>> -- Igor
>
> Igor Ignatyev has refreshed the contents of this pull request, and previous 
> commits have been removed. The incremental views will show differences 
> compared to the previous content of the PR. The pull request contains 12 new 
> commits since the last revision:
> 
>  - fixed ctw build
>  - updated runtime/cds/appcds/JarBuilder to copy j.t.w.WhiteBox's inner class
>  - updated requires.VMProps
>  - updated TEST.ROOT
>  - adjusted hotspot source
>  - added test
>  - moved and adjusted WhiteBox tests (test/lib-test/sun/hotspot/whitebox)
>  - updated ClassFileInstaller to copy j.t.w.WhiteBox's inner class
>  - removed sun/hotspot/parser/DiagnosticCommand
>  - deprecated sun/hotspot classes
>disallowed s.h.WhiteBox w/ security manager
>  - ... and 2 more: 
> https://git.openjdk.java.net/jdk17/compare/8f12f2cf...237e8860

Hi David,

> This set of changes seems much more manageable to me.

thank you for your review, David.

> Not sure about the new deprecation warnings for the old WB classes .. might 
> that not itself trigger some failures? If not then I don't see how the 
> deprecation warnings help with transitioning to the new WB class?

the deprecation warnings (hopefully) will help people not to forget that they 
should use the new WB class in new tests. 

Thanks,
-- Igor

Hi Jie,
> Shall we also update the copyright year like 
> test/lib/sun/hotspot/cpuinfo/CPUInfo.java?

we most certainly shall, just pushed the commit that updates the copyright 
years in the touched files.

Cheers,
-- Igor

-

PR: https://git.openjdk.java.net/jdk17/pull/290


Re: [jdk17] RFR: 8067223: [TESTBUG] Rename Whitebox API package [v3]

2021-08-02 Thread Igor Ignatyev
> Hi all,
> 
> could you please review this big tedious and trivial(-ish) patch which moves 
> `sun.hotspot.WhiteBox` and related classes to `jdk.test.whitebox` package?
> 
> the majority of the patch is the following substitutions:
>  - `s~sun/hotspot/WhiteBox~jdk/test/whitebox/WhiteBox~g`
>  - `s/sun.hotspot.parser/jdk.test.whitebox.parser/g`
>  - `s/sun.hotspot.cpuinfo/jdk.test.whitebox.cpuinfo/g`
>  - `s/sun.hotspot.code/jdk.test.whitebox.code/g`
>  - `s/sun.hotspot.gc/jdk.test.whitebox.gc/g`
>  - `s/sun.hotspot.WhiteBox/jdk.test.whitebox.WhiteBox/g`
> 
> testing: tier1-4
> 
> Thanks,
> -- Igor

Igor Ignatyev has updated the pull request incrementally with two additional 
commits since the last revision:

 - copyright update
 - fixed typo in ClassFileInstaller

-

Changes:
  - all: https://git.openjdk.java.net/jdk17/pull/290/files
  - new: https://git.openjdk.java.net/jdk17/pull/290/files/237e8860..fcaf41f8

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk17=290=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk17=290=01-02

  Stats: 10 lines in 10 files changed: 0 ins; 0 del; 10 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/290.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/290/head:pull/290

PR: https://git.openjdk.java.net/jdk17/pull/290


Re: [jdk17] RFR: 8067223: [TESTBUG] Rename Whitebox API package [v2]

2021-07-31 Thread Igor Ignatyev
On Sat, 31 Jul 2021 20:42:10 GMT, Igor Ignatyev  wrote:

>> Hi all,
>> 
>> could you please review this big tedious and trivial(-ish) patch which moves 
>> `sun.hotspot.WhiteBox` and related classes to `jdk.test.whitebox` package?
>> 
>> the majority of the patch is the following substitutions:
>>  - `s~sun/hotspot/WhiteBox~jdk/test/whitebox/WhiteBox~g`
>>  - `s/sun.hotspot.parser/jdk.test.whitebox.parser/g`
>>  - `s/sun.hotspot.cpuinfo/jdk.test.whitebox.cpuinfo/g`
>>  - `s/sun.hotspot.code/jdk.test.whitebox.code/g`
>>  - `s/sun.hotspot.gc/jdk.test.whitebox.gc/g`
>>  - `s/sun.hotspot.WhiteBox/jdk.test.whitebox.WhiteBox/g`
>> 
>> testing: tier1-4
>> 
>> Thanks,
>> -- Igor
>
> Igor Ignatyev has refreshed the contents of this pull request, and previous 
> commits have been removed. The incremental views will show differences 
> compared to the previous content of the PR.

Vladimir, David,

I've (forced) pushed a smaller version of the renaming. instead of removing 
`sun.hotspot` classes, it copies them to `jdk.test.whitebox` (w/ 
`s.h.parser.DiagnosticCommand` being removed as it's used in WhiteBox signature 
and it was easier to update a few tests that use it), updates hotspot code to 
register native methods for both `sun.hotspot.WhiteBox` and 
`jdk.test.whitebox.WhiteBox` classes. To make it easier and not to introduce 
extra dependency, I've made it impossible to use `s.h.WB` w/ a security manager 
enabled, otherwise there would be a dependency b/w `s.h.WB` and 
`j.t.w.WB$WhiteBoxPermission` or there would be 2 permissions. There are no 
open JDK tests that are impacted by this limitation.

With minor tweaks in closed source, the patch successfully passes Oracle's 
tier1-4.

-- Igor

-

PR: https://git.openjdk.java.net/jdk17/pull/290


Re: [jdk17] RFR: 8067223: [TESTBUG] Rename Whitebox API package [v2]

2021-07-31 Thread Igor Ignatyev
> Hi all,
> 
> could you please review this big tedious and trivial(-ish) patch which moves 
> `sun.hotspot.WhiteBox` and related classes to `jdk.test.whitebox` package?
> 
> the majority of the patch is the following substitutions:
>  - `s~sun/hotspot/WhiteBox~jdk/test/whitebox/WhiteBox~g`
>  - `s/sun.hotspot.parser/jdk.test.whitebox.parser/g`
>  - `s/sun.hotspot.cpuinfo/jdk.test.whitebox.cpuinfo/g`
>  - `s/sun.hotspot.code/jdk.test.whitebox.code/g`
>  - `s/sun.hotspot.gc/jdk.test.whitebox.gc/g`
>  - `s/sun.hotspot.WhiteBox/jdk.test.whitebox.WhiteBox/g`
> 
> testing: tier1-4
> 
> Thanks,
> -- Igor

Igor Ignatyev has refreshed the contents of this pull request, and previous 
commits have been removed. The incremental views will show differences compared 
to the previous content of the PR. The pull request contains 12 new commits 
since the last revision:

 - fixed ctw build
 - updated runtime/cds/appcds/JarBuilder to copy j.t.w.WhiteBox's inner class
 - updated requires.VMProps
 - updated TEST.ROOT
 - adjusted hotspot source
 - added test
 - moved and adjusted WhiteBox tests (test/lib-test/sun/hotspot/whitebox)
 - updated ClassFileInstaller to copy j.t.w.WhiteBox's inner class
 - removed sun/hotspot/parser/DiagnosticCommand
 - deprecated sun/hotspot classes
   disallowed s.h.WhiteBox w/ security manager
 - ... and 2 more: 
https://git.openjdk.java.net/jdk17/compare/8f12f2cf...237e8860

-

Changes:
  - all: https://git.openjdk.java.net/jdk17/pull/290/files
  - new: https://git.openjdk.java.net/jdk17/pull/290/files/8f12f2cf..237e8860

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk17=290=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk17=290=00-01

  Stats: 3248 lines in 939 files changed: 969 ins; 0 del; 2279 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/290.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/290/head:pull/290

PR: https://git.openjdk.java.net/jdk17/pull/290


Re: [jdk17] RFR: 8067223: [TESTBUG] Rename Whitebox API package

2021-07-30 Thread Igor Ignatyev
On Thu, 29 Jul 2021 01:30:37 GMT, Vladimir Kozlov  wrote:

>> Hi all,
>> 
>> could you please review this big tedious and trivial(-ish) patch which moves 
>> `sun.hotspot.WhiteBox` and related classes to `jdk.test.whitebox` package?
>> 
>> the majority of the patch is the following substitutions:
>>  - `s~sun/hotspot/WhiteBox~jdk/test/whitebox/WhiteBox~g`
>>  - `s/sun.hotspot.parser/jdk.test.whitebox.parser/g`
>>  - `s/sun.hotspot.cpuinfo/jdk.test.whitebox.cpuinfo/g`
>>  - `s/sun.hotspot.code/jdk.test.whitebox.code/g`
>>  - `s/sun.hotspot.gc/jdk.test.whitebox.gc/g`
>>  - `s/sun.hotspot.WhiteBox/jdk.test.whitebox.WhiteBox/g`
>> 
>> testing: tier1-4
>> 
>> Thanks,
>> -- Igor
>
> I know that tests fixes could be pushed during RDP2 without approval.
> But these one is very big and it is not a fix - it is enhancement.
> 
> What is the reason you want to push it into JDK 17 just few days before first 
> Release Candidate? Instead of pushing it into JDK 18.
> 
> And I can't even review it because GutHub UI hangs on these big changes.

@vnkozlov, @dholmes-ora,

Thank you for looking at this!

I want this to be integrated into JDK 17 b/c some "external" libraries use 
(used to use) WhiteBox API, e.g. jcstress[[2]] used WhiteBox API to deoptimize 
compiled methods[[3]], and it would be easier for maintainers of such libraries 
to condition package name based on JDK major version. Also, given JDK 17 is an 
LTS, it would be beneficial for everyone not to have big differences in test 
bases b/w it and the mainline.

according to JEP 3, test RFEs are allowed until the very end and don't require 
late enhancement approval: "Enhancements to tests and documentation during RDP 
1 and RDP 2 do not require approval, as long as the relevant issues are 
identified with a noreg-self or noreg-doc label, as appropriate"[[1]]. So, 
process-wise, I don't see any issues w/ integrating this RFE, yet, I fully 
agree that due to its size, this patch can be disruptive and can cause massive 
failures, which is something we obviously don't want at the current stage of 
JDK 17. 

I like David's idea about phasing this clean-up, and, due to the reasons 
described above, I would like to integrate the first part, copying WhiteBox 
classes to the new package structure and associated changes w/o updating all 
the tests, into JDK 17 and update the tests on the mainline (w/ backporting 
into jdk17u).

WDYT?

Cheers,
-- Igor

[1]: https://openjdk.java.net/jeps/3#Late-Enhancement-Request-Process
[2]: https://github.com/openjdk/jcstress
[3]: 
https://github.com/openjdk/jcstress/blob/df83b446f187ae0b0fa31fa54decb59db9e955da/jcstress-core/src/main/java/org/openjdk/jcstress/vm/WhiteBoxSupport.java

-

PR: https://git.openjdk.java.net/jdk17/pull/290


[jdk17] RFR: 8067223: [TESTBUG] Rename Whitebox API package

2021-07-28 Thread Igor Ignatyev
Hi all,

could you please review this big tedious and trivial(-ish) patch which moves 
`sun.hotspot.WhiteBox` and related classes to `jdk.test.whitebox` package?

the majority of the patch is the following substitutions:
 - `s~sun/hotspot/WhiteBox~jdk/test/whitebox/WhiteBox~g`
 - `s/sun.hotspot.parser/jdk.test.whitebox.parser/g`
 - `s/sun.hotspot.cpuinfo/jdk.test.whitebox.cpuinfo/g`
 - `s/sun.hotspot.code/jdk.test.whitebox.code/g`
 - `s/sun.hotspot.gc/jdk.test.whitebox.gc/g`
 - `s/sun.hotspot.WhiteBox/jdk.test.whitebox.WhiteBox/g`

testing: tier1-4

Thanks,
-- Igor

-

Commit messages:
 - copyright year
 - update TEST.ROOT
 - jdk: s/sun\.hotspot\.gc/jdk.test.whitebox.gc/g
 - jdk: s/sun\.hotspot\.code/jdk.test.whitebox.code/g
 - jdk: s/sun\.hotspot\.WhiteBox/jdk.test.whitebox.WhiteBox/g
 - hotspot: 's~sun/hotspot/WhiteBox~jdk/test/whitebox/WhiteBox~g'
 - hotspot: s/sun\.hotspot\.parser/jdk.test.whitebox.parser/g
 - hotspot: s/sun\.hotspot\.cpuinfo/jdk.test.whitebox.cpuinfo/g
 - hotspot: s/sun\.hotspot\.code/jdk.test.whitebox.code/g
 - hotspot: 's/sun\.hotspot\.gc/jdk.test.whitebox.gc/g'
 - ... and 9 more: 
https://git.openjdk.java.net/jdk17/compare/c8ae7e5b...8f12f2cf

Changes: https://git.openjdk.java.net/jdk17/pull/290/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk17=290=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8067223
  Stats: 2310 lines in 949 files changed: 0 ins; 0 del; 2310 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/290.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/290/head:pull/290

PR: https://git.openjdk.java.net/jdk17/pull/290


[jdk17] Integrated: 8271173: serviceability/jvmti/GetObjectSizeClass.java doesn't check exit code

2021-07-23 Thread Igor Ignatyev
On Fri, 23 Jul 2021 04:34:50 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review the patch that adds an exit-code check to 
> `serviceability/jvmti/GetObjectSizeClass.java` test?
> 
> from JBS:
>> `serviceability/jvmti/GetObjectSizeClass.java` test spawns a new JVM but 
>> doesn't check its exit code which might lead to both type-I and type-II 
>> errors
> 
> testing:  `serviceability/jvmti/GetObjectSizeClass.java`  on 
> `{linux,windows,macos}-x64`
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: e90ed6cc
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk17/commit/e90ed6cc38ab8f8a2c7c740da1cb38144622b4eb
Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod

8271173: serviceability/jvmti/GetObjectSizeClass.java doesn't check exit code

Reviewed-by: dholmes

-

PR: https://git.openjdk.java.net/jdk17/pull/277


Re: [jdk17] RFR: 8271173: serviceability/jvmti/GetObjectSizeClass.java doesn't check exit code

2021-07-23 Thread Igor Ignatyev
On Fri, 23 Jul 2021 04:34:50 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review the patch that adds an exit-code check to 
> `serviceability/jvmti/GetObjectSizeClass.java` test?
> 
> from JBS:
>> `serviceability/jvmti/GetObjectSizeClass.java` test spawns a new JVM but 
>> doesn't check its exit code which might lead to both type-I and type-II 
>> errors
> 
> testing:  `serviceability/jvmti/GetObjectSizeClass.java`  on 
> `{linux,windows,macos}-x64`
> 
> Thanks,
> -- Igor

Thanks, David.

-

PR: https://git.openjdk.java.net/jdk17/pull/277


[jdk17] RFR: 8271173: serviceability/jvmti/GetObjectSizeClass.java doesn't check exit code

2021-07-22 Thread Igor Ignatyev
Hi all,

could you please review the patch that adds an exit-code check to 
`serviceability/jvmti/GetObjectSizeClass.java` test?

from JBS:
> `serviceability/jvmti/GetObjectSizeClass.java` test spawns a new JVM but 
> doesn't check its exit code which might lead to both type-I and type-II errors

testing:  `serviceability/jvmti/GetObjectSizeClass.java`  on 
`{linux,windows,macos}-x64`

Thanks,
-- Igor

-

Commit messages:
 - 8271173

Changes: https://git.openjdk.java.net/jdk17/pull/277/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk17=277=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8271173
  Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/277.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/277/head:pull/277

PR: https://git.openjdk.java.net/jdk17/pull/277


[jdk17] Integrated: 8268564: mark hotspot serviceability/attach tests which ignore external VM flags

2021-06-18 Thread Igor Ignatyev
On Thu, 10 Jun 2021 18:23:45 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this one-liner that adds `@requires vm.flagless` to 2 
> `serviceability/attach` tests that ignore external VM flags?
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: 21abcc4a
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk17/commit/21abcc4a5a539644be93726436ed4454ad9aaf18
Stats: 4 lines in 2 files changed: 3 ins; 1 del; 0 mod

8268564: mark hotspot serviceability/attach tests which ignore external VM flags

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk17/pull/8


[jdk17] Integrated: 8268531: mark SDTProbesGNULinuxTest as ignoring external VM flags

2021-06-18 Thread Igor Ignatyev
On Thu, 10 Jun 2021 16:46:12 GMT, Igor Ignatyev  wrote:

> (recreating openjdk/jdk#4453 against jdk17)
> 
> Hi all,
> 
> could you please review this patch that adds `@requires vm.flagless` to 
> `SDTProbesGNULinuxTest` test as it ignores all external VM flags?
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: f83c6b8a
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk17/commit/f83c6b8a6a92a37197a3b83ba093f26e820c4ac9
Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod

8268531: mark SDTProbesGNULinuxTest as ignoring external VM flags

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk17/pull/1


[jdk17] Integrated: 8268541: mark hotspot serviceability/sa tests which ignore external VM flags

2021-06-18 Thread Igor Ignatyev
On Thu, 10 Jun 2021 18:08:45 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this one-liner that adds `@requires vm.flagless` to 
> `serviceability/sa/TestJhsdbJstackLineNumbers.java` as it ignores external VM 
> flags?
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: 8366c693
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk17/commit/8366c6936eaad411082ec6a9e569da07c5f3f0cd
Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod

8268541: mark hotspot serviceability/sa tests which ignore external VM flags

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk17/pull/6


[jdk17] Integrated: 8268563: mark hotspot serviceability/jvmti tests which ignore external VM flags

2021-06-18 Thread Igor Ignatyev
On Thu, 10 Jun 2021 18:19:46 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this one-liner that adds `@requires vm.flagless` to 6 
> `serviceability/jvmti` tests that ignore external VM flags?
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: 5b198986
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk17/commit/5b198986cef4fa0e77d02136212ecc01ec9b22c0
Stats: 8 lines in 6 files changed: 6 ins; 0 del; 2 mod

8268563: mark hotspot serviceability/jvmti tests which ignore external VM flags

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk17/pull/7


Re: [jdk17] RFR: 8268564: mark hotspot serviceability/attach tests which ignore external VM flags

2021-06-18 Thread Igor Ignatyev
On Thu, 10 Jun 2021 18:23:45 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this one-liner that adds `@requires vm.flagless` to 2 
> `serviceability/attach` tests that ignore external VM flags?
> 
> Thanks,
> -- Igor

Thank you, Serguei.

-

PR: https://git.openjdk.java.net/jdk17/pull/8


Re: [jdk17] RFR: 8268531: mark SDTProbesGNULinuxTest as ignoring external VM flags

2021-06-18 Thread Igor Ignatyev
On Thu, 10 Jun 2021 16:46:12 GMT, Igor Ignatyev  wrote:

> (recreating openjdk/jdk#4453 against jdk17)
> 
> Hi all,
> 
> could you please review this patch that adds `@requires vm.flagless` to 
> `SDTProbesGNULinuxTest` test as it ignores all external VM flags?
> 
> Thanks,
> -- Igor

Serguei, thank you for the review.

-

PR: https://git.openjdk.java.net/jdk17/pull/1


Re: [jdk17] RFR: 8268541: mark hotspot serviceability/sa tests which ignore external VM flags

2021-06-18 Thread Igor Ignatyev
On Thu, 10 Jun 2021 18:08:45 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this one-liner that adds `@requires vm.flagless` to 
> `serviceability/sa/TestJhsdbJstackLineNumbers.java` as it ignores external VM 
> flags?
> 
> Thanks,
> -- Igor

thank you, Serguei.

-

PR: https://git.openjdk.java.net/jdk17/pull/6


Re: [jdk17] RFR: 8268563: mark hotspot serviceability/jvmti tests which ignore external VM flags

2021-06-18 Thread Igor Ignatyev
On Thu, 10 Jun 2021 18:19:46 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this one-liner that adds `@requires vm.flagless` to 6 
> `serviceability/jvmti` tests that ignore external VM flags?
> 
> Thanks,
> -- Igor

Serguei, thank you for your review.

-

PR: https://git.openjdk.java.net/jdk17/pull/7


Re: [jdk17] RFR: 8268564: mark hotspot serviceability/attach tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 21:27:09 GMT, Chris Plummer  wrote:

> Can you explain a bit more how `@requires vm.flagless` works? The way I read 
> it, that would indicate that the test should not be run if any flags are 
> specified. I'm not sure why you would want to do that. I understand that the 
> test itself launches a subprocess without passing on the flags, but I don't 
> see why that would preclude running the test if any flags are specified.

Hi Chris,

sure, you have read it correctly -- `@requires vm.flagless` excludes a test 
from execution if "any" flags are specified. there are two main reasons to do 
that: a) a test is very sensitive to the testing configuration and nearly any 
changes to the configuration render the test invalid; b) a test ignores all 
external flags, hence running it w/ any is a waste and misleading. in the case 
of this patch (as well as other sub-tasks of 
[8246500](https://bugs.openjdk.java.net/browse/JDK-8246500)), it's the latter.

you can read more about `vm.flagless` and the motivation in the main-main 
[bug](https://bugs.openjdk.java.net/browse/JDK-8151707) and/or the original 
[discussion](https://mail.openjdk.java.net/pipermail/hotspot-dev/2020-June/041981.html)
 on hotspot-dev.

Cheers,
-- Igor

-

PR: https://git.openjdk.java.net/jdk17/pull/8


[jdk17] RFR: 8268564: mark hotspot serviceability/attach tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this one-liner that adds `@requires vm.flagless` to 2 
`serviceability/attach` tests that ignore external VM flags?

Thanks,
-- Igor

-

Commit messages:
 - 8268564

Changes: https://git.openjdk.java.net/jdk17/pull/8/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk17=8=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268564
  Stats: 4 lines in 2 files changed: 3 ins; 1 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/8.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/8/head:pull/8

PR: https://git.openjdk.java.net/jdk17/pull/8


[jdk17] RFR: 8268563: mark hotspot serviceability/jvmti tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this one-liner that adds `@requires vm.flagless` to 6 
`serviceability/jvmti` tests that ignore external VM flags?

Thanks,
-- Igor

-

Commit messages:
 - update copyright year
 - 8268563

Changes: https://git.openjdk.java.net/jdk17/pull/7/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk17=7=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268563
  Stats: 8 lines in 6 files changed: 6 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/7.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/7/head:pull/7

PR: https://git.openjdk.java.net/jdk17/pull/7


[jdk17] RFR: 8268541: mark hotspot serviceability/sa tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this one-liner that adds `@requires vm.flagless` to 
`serviceability/sa/TestJhsdbJstackLineNumbers.java` as it ignores external VM 
flags?

Thanks,
-- Igor

-

Commit messages:
 - 8268541

Changes: https://git.openjdk.java.net/jdk17/pull/6/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk17=6=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268541
  Stats: 1 line in 1 file changed: 1 ins; 0 del; 0 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/6.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/6/head:pull/6

PR: https://git.openjdk.java.net/jdk17/pull/6


[jdk17] Integrated: 8268539: several serviceability/sa tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 17:11:15 GMT, Igor Ignatyev  wrote:

> 8268539: several serviceability/sa tests should be run in driver mode

This pull request has now been integrated.

Changeset: 5b8c51f5
Author:    Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk17/commit/5b8c51f59a5f23930ee43bea30201c1ff88c44cd
Stats: 40 lines in 23 files changed: 0 ins; 0 del; 40 mod

8268539: several serviceability/sa tests should be run in driver mode

Backport-of: 78cb6776b6d43b67457993a109719b36ee892d60

-

PR: https://git.openjdk.java.net/jdk17/pull/4


[jdk17] Integrated: 8268539: several serviceability/sa tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
8268539: several serviceability/sa tests should be run in driver mode

-

Commit messages:
 - 8268539

Changes: https://git.openjdk.java.net/jdk17/pull/4/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk17=4=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268539
  Stats: 40 lines in 23 files changed: 0 ins; 0 del; 40 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/4.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/4/head:pull/4

PR: https://git.openjdk.java.net/jdk17/pull/4


Integrated: 8268539: several serviceability/sa tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 10:07:48 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this _test-only_ patch that switches the execution 
> mode of several `serviceability/sa` tests to `driver`? all these tests seem 
> not to perform actual testing, and just organize other JDK executions and 
> validates their outputs.
> 
> `ClhsdbDumpclass.java` had to be updated to have access to 
> `./jdk/test/lib/apps/LingeredApp.class` file. Although this also can be fixed 
> by propagating the classpath setting to `javap`, using the path to `.class` 
> file is more clear and relable, and I actually suspect that before `javap` 
> read not the dumped `.class` file, but the one from the test's classpath.
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: 78cb6776
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk/commit/78cb6776b6d43b67457993a109719b36ee892d60
Stats: 40 lines in 23 files changed: 0 ins; 0 del; 40 mod

8268539: several serviceability/sa tests should be run in driver mode

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk/pull/4460


Re: RFR: 8268539: several serviceability/sa tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 10:07:48 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this _test-only_ patch that switches the execution 
> mode of several `serviceability/sa` tests to `driver`? all these tests seem 
> not to perform actual testing, and just organize other JDK executions and 
> validates their outputs.
> 
> `ClhsdbDumpclass.java` had to be updated to have access to 
> `./jdk/test/lib/apps/LingeredApp.class` file. Although this also can be fixed 
> by propagating the classpath setting to `javap`, using the path to `.class` 
> file is more clear and relable, and I actually suspect that before `javap` 
> read not the dumped `.class` file, but the one from the test's classpath.
> 
> Thanks,
> -- Igor

Thank you, Serguie.

-

PR: https://git.openjdk.java.net/jdk/pull/4460


[jdk17] RFR: 8268531: mark SDTProbesGNULinuxTest as ignoring external VM flags

2021-06-10 Thread Igor Ignatyev
(recreating openjdk/jdk#4453 against jdk17)

Hi all,

could you please review this patch that adds `@requires vm.flagless` to 
`SDTProbesGNULinuxTest` test as it ignores all external VM flags?

Thanks,
-- Igor

-

Commit messages:
 - update copyright year
 - 8268531

Changes: https://git.openjdk.java.net/jdk17/pull/1/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk17=1=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268531
  Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk17/pull/1.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk17 pull/1/head:pull/1

PR: https://git.openjdk.java.net/jdk17/pull/1


Re: RFR: 8268531: mark SDTProbesGNULinuxTest as ignoring external VM flags

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 07:24:26 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this patch that adds `@requires vm.flagless` to 
> `SDTProbesGNULinuxTest` test as it ignores all external VM flags?
> 
> Thanks,
> -- Igor

closed in favor of openjdk/jdk17#1

-

PR: https://git.openjdk.java.net/jdk/pull/4453


Integrated: 8268542: serviceability/logging/TestFullNames.java tests only 1st test case

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 10:26:46 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this small fix for 
> `serviceability/logging/TestFullNames.java` test?
> from JBS:
>> serviceability/logging/TestFullNames.java test contains two test cases: 
>> specifying filename w/ and w/o "file=" prefix. yet, the test doesn't remove 
>> the file, hence its 2nd test case doesn't really test much.
> 
> the patch simply calls `File::delete` inside the loop and verifies that the 
> file doesn't exist at the beginning of each iteration.
> 
> testing: `serviceability/logging/TestFullNames.java` on 
> `{linux,windows,macosx}-x64`
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: 74007890
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk/commit/74007890bb9a3fa3a65683a3f480e399f2b1a0b6
Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod

8268542: serviceability/logging/TestFullNames.java tests only 1st test case

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk/pull/4461


Re: RFR: 8268542: serviceability/logging/TestFullNames.java tests only 1st test case

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 10:26:46 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this small fix for 
> `serviceability/logging/TestFullNames.java` test?
> from JBS:
>> serviceability/logging/TestFullNames.java test contains two test cases: 
>> specifying filename w/ and w/o "file=" prefix. yet, the test doesn't remove 
>> the file, hence its 2nd test case doesn't really test much.
> 
> the patch simply calls `File::delete` inside the loop and verifies that the 
> file doesn't exist at the beginning of each iteration.
> 
> testing: `serviceability/logging/TestFullNames.java` on 
> `{linux,windows,macosx}-x64`
> 
> Thanks,
> -- Igor

Thanks, Serguei!

-

PR: https://git.openjdk.java.net/jdk/pull/4461


RFR: 8268542: serviceability/logging/TestFullNames.java tests only 1st test case

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this small fix for 
`serviceability/logging/TestFullNames.java` test?
from JBS:
> serviceability/logging/TestFullNames.java test contains two test cases: 
> specifying filename w/ and w/o "file=" prefix. yet, the test doesn't remove 
> the file, hence its 2nd test case doesn't really test much.

the patch simply calls `File::delete` inside the loop and verifies that the 
file doesn't exist at the beginning of each iteration.

testing: `serviceability/logging/TestFullNames.java` on 
`{linux,windows,macosx}-x64`

Thanks,
-- Igor

-

Commit messages:
 - 8268542

Changes: https://git.openjdk.java.net/jdk/pull/4461/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=4461=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268542
  Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4461.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4461/head:pull/4461

PR: https://git.openjdk.java.net/jdk/pull/4461


RFR: 8268539: several serviceability/sa tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this _test-only_ patch that switches the execution mode 
of several `serviceability/sa` tests to `driver`? all these tests seem not to 
perform actual testing, and just organize other JDK executions and validates 
their outputs.

`ClhsdbDumpclass.java` had to be updated to have access to 
`./jdk/test/lib/apps/LingeredApp.class` file. Although this also can be fixed 
by propagating the classpath setting to `javap`, using the path to `.class` 
file is more clear and relable, and I actually suspect that before `javap` read 
not the dumped `.class` file, but the one from the test's classpath.

Thanks,
-- Igor

-

Commit messages:
 - use path to .class file in ClhsdbDumpclass
 - update copyright year
 - 8268539

Changes: https://git.openjdk.java.net/jdk/pull/4460/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=4460=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268539
  Stats: 40 lines in 23 files changed: 0 ins; 0 del; 40 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4460.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4460/head:pull/4460

PR: https://git.openjdk.java.net/jdk/pull/4460


Re: RFR: 8268534: some serviceability/jvmti tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 08:14:16 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this small patch that switches execution mode in 4 
> `serviceability/jvmti` tests?
> in all instances, the main test classes seem not to do actual testing and 
> just orchestrate execution.
> 
> testing: `serviceability/jvmti`  on `{linux,windows,macosx}-x64`
> 
> Thanks,
> -- Igor

Thank you, Serguei!

-

PR: https://git.openjdk.java.net/jdk/pull/4454


Re: RFR: 8268532: several serviceability/attach tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 08:15:49 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this small patch that switches execution mode in 4 
> `serviceability/attach` tests?
> in all instances, the main test classes seem not to do actual testing and 
> just orchestrate execution.
> 
> testing: `serviceability/attach` on `{linux,windows,macosx}-x64`
> 
> Thanks,
> -- Igor

Thanks, Serguei.

-

PR: https://git.openjdk.java.net/jdk/pull/4455


Integrated: 8268532: several serviceability/attach tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 08:15:49 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this small patch that switches execution mode in 4 
> `serviceability/attach` tests?
> in all instances, the main test classes seem not to do actual testing and 
> just orchestrate execution.
> 
> testing: `serviceability/attach` on `{linux,windows,macosx}-x64`
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: 92f0b6d4
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk/commit/92f0b6d49e5a4dbdd6c95b8d526187adb33aa827
Stats: 8 lines in 4 files changed: 0 ins; 0 del; 8 mod

8268532: several serviceability/attach tests should be run in driver mode

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk/pull/4455


Integrated: 8268538: mark hotspot serviceability/logging tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 08:41:41 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review the patch which adds `@requires vm.flagless` to 
> serviceability/logging` tests that ignore external VM flags?
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: 964118f7
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk/commit/964118f7fd49786cfe60e1144800a02afc0fdb56
Stats: 12 lines in 5 files changed: 6 ins; 1 del; 5 mod

8268538: mark hotspot serviceability/logging tests which ignore external VM 
flags

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk/pull/4458


Re: RFR: 8268538: mark hotspot serviceability/logging tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 08:41:41 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review the patch which adds `@requires vm.flagless` to 
> serviceability/logging` tests that ignore external VM flags?
> 
> Thanks,
> -- Igor

Thank you for your reviews, Serguei!

-

PR: https://git.openjdk.java.net/jdk/pull/4458


Re: RFR: 8268536: mark hotspot serviceability/dcmd tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 08:28:25 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review the patch which adds `@requires vm.flagless` to 
> `serviceability/dcmd/gc/RunFinalizationTest.java` and 
> `serviceability/dcmd/compiler/CodeHeapAnalyticsParams.java` tests as they 
> completely ignore external vm flags?
> 
> Thanks,
> -- Igor

Thank you, Serguei.

-

PR: https://git.openjdk.java.net/jdk/pull/4457


Integrated: 8268536: mark hotspot serviceability/dcmd tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 08:28:25 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review the patch which adds `@requires vm.flagless` to 
> `serviceability/dcmd/gc/RunFinalizationTest.java` and 
> `serviceability/dcmd/compiler/CodeHeapAnalyticsParams.java` tests as they 
> completely ignore external vm flags?
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: 05090fc8
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk/commit/05090fc8fdef3c02c91cbd79e661f763893580c2
Stats: 4 lines in 2 files changed: 2 ins; 0 del; 2 mod

8268536: mark hotspot serviceability/dcmd tests which ignore external VM flags

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk/pull/4457


Integrated: 8268530: resourcehogs/serviceability/jvmti/GetObjectSizeOverflow.java should be run in driver mode

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 07:02:36 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this small and test-only change for 
> `resourcehogs/serviceability/jvmti/GetObjectSizeOverflow.java` test?
> 
> the test's main class just orchestrates execution and hence should be run in 
> a driver mode, the patch also makes small refactoring of the test code: 
> removes redundant imports, simplifies process creation, and adds checks of 
> the exit code.
> 
> testing: `resourcehogs/serviceability` tests on `{linux,windows,macosx}-x64`
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: ae29f9ca
Author:Igor Ignatyev 
URL:   
https://git.openjdk.java.net/jdk/commit/ae29f9cacdac8bfe7fc1d287edbfb21c81686d4c
Stats: 11 lines in 1 file changed: 1 ins; 4 del; 6 mod

8268530: resourcehogs/serviceability/jvmti/GetObjectSizeOverflow.java should be 
run in driver mode

Reviewed-by: sspitsyn

-

PR: https://git.openjdk.java.net/jdk/pull/4452


Re: RFR: 8268530: resourcehogs/serviceability/jvmti/GetObjectSizeOverflow.java should be run in driver mode

2021-06-10 Thread Igor Ignatyev
On Thu, 10 Jun 2021 07:02:36 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this small and test-only change for 
> `resourcehogs/serviceability/jvmti/GetObjectSizeOverflow.java` test?
> 
> the test's main class just orchestrates execution and hence should be run in 
> a driver mode, the patch also makes small refactoring of the test code: 
> removes redundant imports, simplifies process creation, and adds checks of 
> the exit code.
> 
> testing: `resourcehogs/serviceability` tests on `{linux,windows,macosx}-x64`
> 
> Thanks,
> -- Igor

Thanks, Serguei!

-

PR: https://git.openjdk.java.net/jdk/pull/4452


RFR: 8268534: some serviceability/jvmti tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this small patch that switches execution mode in 4 
`serviceability/jvmti` tests?
in all instances, the main test classes seem not to do actual testing and just 
orchestrate execution.

testing: `serviceability/jvmti`  on `{linux,windows,macosx}-x64`

Thanks,
-- Igor

-

Commit messages:
 - copyright
 - 8268534

Changes: https://git.openjdk.java.net/jdk/pull/4454/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=4454=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268534
  Stats: 7 lines in 4 files changed: 0 ins; 0 del; 7 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4454.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4454/head:pull/4454

PR: https://git.openjdk.java.net/jdk/pull/4454


RFR: 8268532: several serviceability/attach tests should be run in driver mode

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this small patch that switches execution mode in 4 
`serviceability/attach` tests?
in all instances, the main test classes seem not to do actual testing and just 
orchestrate execution.

testing: `serviceability/attach` on `{linux,windows,macosx}-x64`

Thanks,
-- Igor

-

Commit messages:
 - one more test
 - copyright year
 - 8268532

Changes: https://git.openjdk.java.net/jdk/pull/4455/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=4455=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268532
  Stats: 8 lines in 4 files changed: 0 ins; 0 del; 8 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4455.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4455/head:pull/4455

PR: https://git.openjdk.java.net/jdk/pull/4455


RFR: 8268538: mark hotspot serviceability/logging tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review the patch which adds `@requires vm.flagless` to 
serviceability/logging` tests that ignore external VM flags?

Thanks,
-- Igor

-

Commit messages:
 - update copyright year
 - 8268538

Changes: https://git.openjdk.java.net/jdk/pull/4458/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=4458=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268538
  Stats: 12 lines in 5 files changed: 6 ins; 1 del; 5 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4458.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4458/head:pull/4458

PR: https://git.openjdk.java.net/jdk/pull/4458


RFR: 8268536: mark hotspot serviceability/dcmd tests which ignore external VM flags

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review the patch which adds `@requires vm.flagless` to 
`serviceability/dcmd/gc/RunFinalizationTest.java` and 
`serviceability/dcmd/compiler/CodeHeapAnalyticsParams.java` tests as they 
completely ignore external vm flags?

Thanks,
-- Igor

-

Commit messages:
 - update copyright year
 - 8268536

Changes: https://git.openjdk.java.net/jdk/pull/4457/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=4457=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268536
  Stats: 4 lines in 2 files changed: 2 ins; 0 del; 2 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4457.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4457/head:pull/4457

PR: https://git.openjdk.java.net/jdk/pull/4457


RFR: 8268530: resourcehogs/serviceability/jvmti/GetObjectSizeOverflow.java should be run in driver mode

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this small and test-only change for 
`resourcehogs/serviceability/jvmti/GetObjectSizeOverflow.java` test?

the test's main class just orchestrates execution and hence should be run in a 
driver mode, the patch also makes small refactoring of the test code: removes 
redundant imports, simplifies process creation, and adds checks of the exit 
code.

testing: `resourcehogs/serviceability` tests on `{linux,windows,macosx}-x64`

Thanks,
-- Igor

-

Commit messages:
 - check exit code of jar and GetObjectSizeOverflowAgent processes
 - simply jar process creation
 - cleaned up imports
 - use try-with-resource
 - 8268530

Changes: https://git.openjdk.java.net/jdk/pull/4452/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=4452=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268530
  Stats: 11 lines in 1 file changed: 1 ins; 4 del; 6 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4452.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4452/head:pull/4452

PR: https://git.openjdk.java.net/jdk/pull/4452


RFR: 8268531: mark SDTProbesGNULinuxTest as ignoring external VM flags

2021-06-10 Thread Igor Ignatyev
Hi all,

could you please review this patch that adds `@requires vm.flagless` to 
`SDTProbesGNULinuxTest` test as it ignores all external VM flags?

Thanks,
-- Igor

-

Commit messages:
 - update copyright year
 - 8268531

Changes: https://git.openjdk.java.net/jdk/pull/4453/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=4453=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8268531
  Stats: 2 lines in 1 file changed: 1 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4453.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4453/head:pull/4453

PR: https://git.openjdk.java.net/jdk/pull/4453


Re: RFR: 8264805: Remove the experimental Ahead-of-Time Compiler [v4]

2021-04-08 Thread Igor Ignatyev
On Thu, 8 Apr 2021 17:24:38 GMT, Vladimir Kozlov  wrote:

>> As part of [JEP 410](http://openjdk.java.net/jeps/410) remove code related 
>> to Ahead-of-Time Compiler from JDK: 
>> 
>> - `jdk.aot` module — the `jaotc` tool 
>> - `src/hotspot/share/aot` — loads AoT compiled code into VM for execution 
>> - related HotSpot code guarded by `#if INCLUDE_AOT` 
>> 
>> Additionally, remove tests as well as code in makefiles related to AoT 
>> compilation.
>> 
>> Tested hs-tier1-4
>
> Vladimir Kozlov has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Remove exports from Graal module to jdk.aot

Test changes look good to me.

-

Marked as reviewed by iignatyev (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/3398


Re: RFR: 8246494: introduce vm.flagless at-requires property

2021-03-18 Thread Igor Ignatyev
On Wed, 17 Mar 2021 07:02:59 GMT, Serguei Spitsyn  wrote:

>> resurrecting old 
>> [RFR](https://mail.openjdk.java.net/pipermail/hotspot-dev/2020-June/041981.html):
>> 
>>> Hi all,
>>> 
>>> could you please review the patch which introduces a new @requires property 
>>> to filter out the tests which ignore externally provided JVM flags?
>>> 
>>> the idea behind this patch is to have a way to clearly mark tests which 
>>> ignore flags, so 
>>> a) it's obvious that they don't execute a flag-guarded code/feature, and 
>>> extra care should be taken to use them to verify any flag-guarded changed;
>>> b) they can be easily excluded from runs w/ flags.
>>> 
>>> @requires and VMProps allows us to achieve both, so it's been decided to 
>>> add a new property `vm.flagless`. `vm.flagless` is set to false if there 
>>> are any XX flags other than `-XX:MaxRAMPercentage` and 
>>> `-XX:CreateCoredumpOnCrash` (which are known to be set almost always) or 
>>> any X flags other `-Xmixed`; in other words any tests w/ `@requires 
>>> vm.flagless` will be excluded from runs w/ any other X / XX flags passed 
>>> via `-vmoption` / `-javaoption`. in rare cases, when one still wants to run 
>>> the tests marked by `vm.flagless`  w/ external flags, `vm.flagless` can be 
>>> forcefully set to true by setting any value to `TEST_VM_FLAGLESS` env. 
>>> variable.
>>> 
>>> this patch adds necessary common changes and marks common tests, namely 
>>> Scimark, GTestWrapper and TestNativeProcessBuilder. Component-specific 
>>> tests will be marked separately by the corresponding subtasks of 8151707[1].
>>> 
>>> please note, the patch depends on CODETOOLS-7902336[2], which will be 
>>> included in the next jtreg version, so this patch is to be integrated only 
>>> after jtreg5.1 is promoted and we switch to use it by 8246387[3].
>>> 
>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8246494
>>> webrev: http://cr.openjdk.java.net/~iignatyev//8246494/webrev.00
>>> testing: marked tests w/ different XX and X flags w/ and w/o 
>>> TEST_VM_FLAGLESS env. var, and w/o any flags
>>> 
>>> [1] https://bugs.openjdk.java.net/browse/JDK-8151707
>>> [2] https://bugs.openjdk.java.net/browse/CODETOOLS-7902336
>>> [3] https://bugs.openjdk.java.net/browse/JDK-8246387
>>> 
>> 
>> after offline discussion with @pliden, it has been decided to reduce the 
>> scope of [8246499](https://bugs.openjdk.java.net/browse/JDK-8246499) and not 
>> mark the tests that use `UseXGC` flags for selection, e.g. 
>> `test/hotspot/jtreg/gc/z/TestSmallHeap.java`.
>> 
>> Thanks,
>> -- Igor
>
> Igor,
> The fix looks good to me.
> Thanks,
> Serguei

Thanks, Serguei!

-

PR: https://git.openjdk.java.net/jdk/pull/2800


Integrated: 8246494: introduce vm.flagless at-requires property

2021-03-18 Thread Igor Ignatyev
On Tue, 2 Mar 2021 23:27:21 GMT, Igor Ignatyev  wrote:

> resurrecting old 
> [RFR](https://mail.openjdk.java.net/pipermail/hotspot-dev/2020-June/041981.html):
> 
>> Hi all,
>> 
>> could you please review the patch which introduces a new @requires property 
>> to filter out the tests which ignore externally provided JVM flags?
>> 
>> the idea behind this patch is to have a way to clearly mark tests which 
>> ignore flags, so 
>> a) it's obvious that they don't execute a flag-guarded code/feature, and 
>> extra care should be taken to use them to verify any flag-guarded changed;
>> b) they can be easily excluded from runs w/ flags.
>> 
>> @requires and VMProps allows us to achieve both, so it's been decided to add 
>> a new property `vm.flagless`. `vm.flagless` is set to false if there are any 
>> XX flags other than `-XX:MaxRAMPercentage` and `-XX:CreateCoredumpOnCrash` 
>> (which are known to be set almost always) or any X flags other `-Xmixed`; in 
>> other words any tests w/ `@requires vm.flagless` will be excluded from runs 
>> w/ any other X / XX flags passed via `-vmoption` / `-javaoption`. in rare 
>> cases, when one still wants to run the tests marked by `vm.flagless`  w/ 
>> external flags, `vm.flagless` can be forcefully set to true by setting any 
>> value to `TEST_VM_FLAGLESS` env. variable.
>> 
>> this patch adds necessary common changes and marks common tests, namely 
>> Scimark, GTestWrapper and TestNativeProcessBuilder. Component-specific tests 
>> will be marked separately by the corresponding subtasks of 8151707[1].
>> 
>> please note, the patch depends on CODETOOLS-7902336[2], which will be 
>> included in the next jtreg version, so this patch is to be integrated only 
>> after jtreg5.1 is promoted and we switch to use it by 8246387[3].
>> 
>> JBS: https://bugs.openjdk.java.net/browse/JDK-8246494
>> webrev: http://cr.openjdk.java.net/~iignatyev//8246494/webrev.00
>> testing: marked tests w/ different XX and X flags w/ and w/o 
>> TEST_VM_FLAGLESS env. var, and w/o any flags
>> 
>> [1] https://bugs.openjdk.java.net/browse/JDK-8151707
>> [2] https://bugs.openjdk.java.net/browse/CODETOOLS-7902336
>> [3] https://bugs.openjdk.java.net/browse/JDK-8246387
>> 
> 
> after offline discussion with @pliden, it has been decided to reduce the 
> scope of [8246499](https://bugs.openjdk.java.net/browse/JDK-8246499) and not 
> mark the tests that use `UseXGC` flags for selection, e.g. 
> `test/hotspot/jtreg/gc/z/TestSmallHeap.java`.
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: e333b6e1
Author:Igor Ignatyev 
URL:   https://git.openjdk.java.net/jdk/commit/e333b6e1
Stats: 81 lines in 6 files changed: 75 ins; 0 del; 6 mod

8246494: introduce vm.flagless at-requires property

Reviewed-by: mseledtsov, sspitsyn

-

PR: https://git.openjdk.java.net/jdk/pull/2800


Re: RFR: 8246494: introduce vm.flagless at-requires property

2021-03-16 Thread Igor Ignatyev
On Wed, 17 Mar 2021 00:45:00 GMT, Mikhailo Seledtsov  
wrote:

>> resurrecting old 
>> [RFR](https://mail.openjdk.java.net/pipermail/hotspot-dev/2020-June/041981.html):
>> 
>>> Hi all,
>>> 
>>> could you please review the patch which introduces a new @requires property 
>>> to filter out the tests which ignore externally provided JVM flags?
>>> 
>>> the idea behind this patch is to have a way to clearly mark tests which 
>>> ignore flags, so 
>>> a) it's obvious that they don't execute a flag-guarded code/feature, and 
>>> extra care should be taken to use them to verify any flag-guarded changed;
>>> b) they can be easily excluded from runs w/ flags.
>>> 
>>> @requires and VMProps allows us to achieve both, so it's been decided to 
>>> add a new property `vm.flagless`. `vm.flagless` is set to false if there 
>>> are any XX flags other than `-XX:MaxRAMPercentage` and 
>>> `-XX:CreateCoredumpOnCrash` (which are known to be set almost always) or 
>>> any X flags other `-Xmixed`; in other words any tests w/ `@requires 
>>> vm.flagless` will be excluded from runs w/ any other X / XX flags passed 
>>> via `-vmoption` / `-javaoption`. in rare cases, when one still wants to run 
>>> the tests marked by `vm.flagless`  w/ external flags, `vm.flagless` can be 
>>> forcefully set to true by setting any value to `TEST_VM_FLAGLESS` env. 
>>> variable.
>>> 
>>> this patch adds necessary common changes and marks common tests, namely 
>>> Scimark, GTestWrapper and TestNativeProcessBuilder. Component-specific 
>>> tests will be marked separately by the corresponding subtasks of 8151707[1].
>>> 
>>> please note, the patch depends on CODETOOLS-7902336[2], which will be 
>>> included in the next jtreg version, so this patch is to be integrated only 
>>> after jtreg5.1 is promoted and we switch to use it by 8246387[3].
>>> 
>>> JBS: https://bugs.openjdk.java.net/browse/JDK-8246494
>>> webrev: http://cr.openjdk.java.net/~iignatyev//8246494/webrev.00
>>> testing: marked tests w/ different XX and X flags w/ and w/o 
>>> TEST_VM_FLAGLESS env. var, and w/o any flags
>>> 
>>> [1] https://bugs.openjdk.java.net/browse/JDK-8151707
>>> [2] https://bugs.openjdk.java.net/browse/CODETOOLS-7902336
>>> [3] https://bugs.openjdk.java.net/browse/JDK-8246387
>>> 
>> 
>> after offline discussion with @pliden, it has been decided to reduce the 
>> scope of [8246499](https://bugs.openjdk.java.net/browse/JDK-8246499) and not 
>> mark the tests that use `UseXGC` flags for selection, e.g. 
>> `test/hotspot/jtreg/gc/z/TestSmallHeap.java`.
>> 
>> Thanks,
>> -- Igor
>
> These changes look good to me.

Thanks, Misha!

-- Igor

-

PR: https://git.openjdk.java.net/jdk/pull/2800


Integrated: 8263549: 8263412 can cause jtreg testlibrary split

2021-03-13 Thread Igor Ignatyev
On Sat, 13 Mar 2021 04:31:31 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this dull patch that replaces `ClassFileInstaller` w/ 
> `jdk.test.lib.helpers.ClassFileInstaller` in all jtreg test descriptions to 
> ensure we won't get split testlibrary, and removes 
> `jdk/test/lib/ClassFileInstaller.java` (so it won't be accidentally used).
> 
> from JBS:
>> after JDK-8263412, we might (again) encounter NCDFE b/c parts of 
>> testlibraries aren't on the classpath. this happens when jtreg builds 
>> `jdk.test.lib.helpers.ClassFileInstaller` as a part of test-specific code, 
>> but `ClassFileInstaller` as part of shared testibrary directory in one test, 
>> when in the following test, jtreg sees `ClassFileInstaller` in the shared 
>> directory, hence javac won't recompile it/its dependencies, but in runtime 
>> `jdk.test.lib.helpers.ClassFileInstaller` is nowhere to be found, hence we 
>> get NCDFE. 
> 
> testing:
> - [x]  `grep ' ClassFileInstaller[^.]`
> - [ ] tier1-3
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: a7aba2b6
Author:Igor Ignatyev 
URL:   https://git.openjdk.java.net/jdk/commit/a7aba2b6
Stats: 1738 lines in 867 files changed: 2 ins; 67 del; 1669 mod

8263549: 8263412 can cause jtreg testlibrary split

Reviewed-by: iklam, dcubed

-

PR: https://git.openjdk.java.net/jdk/pull/2985


Re: RFR: 8263549: 8263412 can cause jtreg testlibrary split [v3]

2021-03-13 Thread Igor Ignatyev
On Sat, 13 Mar 2021 14:20:20 GMT, Daniel D. Daugherty  
wrote:

>> Igor Ignatyev has refreshed the contents of this pull request, and previous 
>> commits have been removed. The incremental views will show differences 
>> compared to the previous content of the PR.
>
> I downloaded the patch and used Ioi's cmd pattern to scroll through
> the changes. I can't honestly say that I looked at every line since 867
> changed files would overwhelm anyone's brain...
> 
> I did notice a couple of `@run main` instead of `@run driver` calls
> to the ClassFileInstaller, but those are pre-existing.
> 
> Thumbs up.

Hi Dan,

Thanks for your review!

> I did notice a couple of @run main instead of @run driver calls to the 
> ClassFileInstaller, but those are pre-existing.

I noticed this too, planning to fix that with a separate RFE.

-- Igor

-

PR: https://git.openjdk.java.net/jdk/pull/2985


Re: RFR: 8263549: 8263412 can cause jtreg testlibrary split [v3]

2021-03-12 Thread Igor Ignatyev
> Hi all,
> 
> could you please review this dull patch that replaces `ClassFileInstaller` w/ 
> `jdk.test.lib.helpers.ClassFileInstaller` in all jtreg test descriptions to 
> ensure we won't get split testlibrary, and removes 
> `jdk/test/lib/ClassFileInstaller.java` (so it won't be accidentally used).
> 
> from JBS:
>> after JDK-8263412, we might (again) encounter NCDFE b/c parts of 
>> testlibraries aren't on the classpath. this happens when jtreg builds 
>> `jdk.test.lib.helpers.ClassFileInstaller` as a part of test-specific code, 
>> but `ClassFileInstaller` as part of shared testibrary directory in one test, 
>> when in the following test, jtreg sees `ClassFileInstaller` in the shared 
>> directory, hence javac won't recompile it/its dependencies, but in runtime 
>> `jdk.test.lib.helpers.ClassFileInstaller` is nowhere to be found, hence we 
>> get NCDFE. 
> 
> testing:
> - [x]  `grep ' ClassFileInstaller[^.]`
> - [ ] tier1-3
> 
> Thanks,
> -- Igor

Igor Ignatyev has refreshed the contents of this pull request, and previous 
commits have been removed. The incremental views will show differences compared 
to the previous content of the PR. The pull request contains one new commit 
since the last revision:

  fix compilation error in IncorrectAOTLibraryTest test

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/2985/files
  - new: https://git.openjdk.java.net/jdk/pull/2985/files/ff6d4f91..3a3b7a84

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=2985=02
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=2985=01-02

  Stats: 3 lines in 1 file changed: 2 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2985.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2985/head:pull/2985

PR: https://git.openjdk.java.net/jdk/pull/2985


Re: RFR: 8263549: 8263412 can cause jtreg testlibrary split [v3]

2021-03-12 Thread Igor Ignatyev
On Sat, 13 Mar 2021 06:16:37 GMT, Ioi Lam  wrote:

>> Igor Ignatyev has refreshed the contents of this pull request, and previous 
>> commits have been removed. The incremental views will show differences 
>> compared to the previous content of the PR. The pull request contains one 
>> new commit since the last revision:
>> 
>>   fix compilation error in IncorrectAOTLibraryTest test
>
> I did this and scanned the differences (with the diff file from the webrev) 
> and it looks reasonable to me.
> 
> grep '^[+-]' diff.txt | grep -v Copyright | grep -v '^.[+-]' | less
> 
> It looks like most of the changes are mechanical. There were only a few cases 
> where manual changes were made. I trusted that you have tested those cases 
> individually.
> 
> But I don't understand why this error can happen. It seems like jtreg would 
> allow two test cases to interfere with each other.

Hi Ioi,

thanks for review this, I ran the whole tier1-3 jobs which should provide 
enough coverage. as oracle builds don't have AOT feature enabled, I missed a 
compilation error in `IncorrectAOTLibraryTest` test. the test failed in GitHub 
action and should be fixed by 
[3a3b7a8](https://github.com/openjdk/jdk/pull/2985/commits/3a3b7a846289181b466b3c1eb478a0a571d9468b).

-- Igor

-

PR: https://git.openjdk.java.net/jdk/pull/2985


Re: RFR: 8263549: 8263412 can cause jtreg testlibrary split [v2]

2021-03-12 Thread Igor Ignatyev
> Hi all,
> 
> could you please review this dull patch that replaces `ClassFileInstaller` w/ 
> `jdk.test.lib.helpers.ClassFileInstaller` in all jtreg test descriptions to 
> ensure we won't get split testlibrary, and removes 
> `jdk/test/lib/ClassFileInstaller.java` (so it won't be accidentally used).
> 
> from JBS:
>> after JDK-8263412, we might (again) encounter NCDFE b/c parts of 
>> testlibraries aren't on the classpath. this happens when jtreg builds 
>> `jdk.test.lib.helpers.ClassFileInstaller` as a part of test-specific code, 
>> but `ClassFileInstaller` as part of shared testibrary directory in one test, 
>> when in the following test, jtreg sees `ClassFileInstaller` in the shared 
>> directory, hence javac won't recompile it/its dependencies, but in runtime 
>> `jdk.test.lib.helpers.ClassFileInstaller` is nowhere to be found, hence we 
>> get NCDFE. 
> 
> testing:
> - [x]  `grep ' ClassFileInstaller[^.]`
> - [ ] tier1-3
> 
> Thanks,
> -- Igor

Igor Ignatyev has updated the pull request incrementally with one additional 
commit since the last revision:

  fix compilation error in IncorrectAOTLibraryTest test

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/2985/files
  - new: https://git.openjdk.java.net/jdk/pull/2985/files/6e53ad97..ff6d4f91

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=2985=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=2985=00-01

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2985.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2985/head:pull/2985

PR: https://git.openjdk.java.net/jdk/pull/2985


Re: RFR: 8263549: 8263412 can cause jtreg testlibrary split

2021-03-12 Thread Igor Ignatyev
On Sat, 13 Mar 2021 04:31:31 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this dull patch that replaces `ClassFileInstaller` w/ 
> `jdk.test.lib.helpers.ClassFileInstaller` in all jtreg test descriptions to 
> ensure we won't get split testlibrary, and removes 
> `jdk/test/lib/ClassFileInstaller.java` (so it won't be accidentally used).
> 
> from JBS:
>> after JDK-8263412, we might (again) encounter NCDFE b/c parts of 
>> testlibraries aren't on the classpath. this happens when jtreg builds 
>> `jdk.test.lib.helpers.ClassFileInstaller` as a part of test-specific code, 
>> but `ClassFileInstaller` as part of shared testibrary directory in one test, 
>> when in the following test, jtreg sees `ClassFileInstaller` in the shared 
>> directory, hence javac won't recompile it/its dependencies, but in runtime 
>> `jdk.test.lib.helpers.ClassFileInstaller` is nowhere to be found, hence we 
>> get NCDFE. 
> 
> testing:
> - [x]  `grep ' ClassFileInstaller[^.]`
> - [ ] tier1-3
> 
> Thanks,
> -- Igor

note for reviewers: the big part of the patch is just `sed -i  's/ 
ClassFileInstaller / jdk.test.lib.helpers.ClassFileInstaller /g'`

-

PR: https://git.openjdk.java.net/jdk/pull/2985


RFR: 8263549: 8263412 can cause jtreg testlibrary split

2021-03-12 Thread Igor Ignatyev
Hi all,

could you please review this dull patch that replaces `ClassFileInstaller` w/ 
`jdk.test.lib.helpers.ClassFileInstaller` in all jtreg test descriptions to 
ensure we won't get split testlibrary, and removes 
`jdk/test/lib/ClassFileInstaller.java` (so it won't be accidentally used).

from JBS:
> after JDK-8263412, we might (again) encounter NCDFE b/c parts of 
> testlibraries aren't on the classpath. this happens when jtreg builds 
> `jdk.test.lib.helpers.ClassFileInstaller` as a part of test-specific code, 
> but `ClassFileInstaller` as part of shared testibrary directory in one test, 
> when in the following test, jtreg sees `ClassFileInstaller` in the shared 
> directory, hence javac won't recompile it/its dependencies, but in runtime 
> `jdk.test.lib.helpers.ClassFileInstaller` is nowhere to be found, hence we 
> get NCDFE. 

testing:
- [x]  `grep ' ClassFileInstaller[^.]`
- [ ] tier1-3

Thanks,
-- Igor

-

Commit messages:
 - fixup
 - update copyright year
 - rm test/lib/ClassFileInstaller.java
 - 's/ ClassFileInstaller / jdk.test.lib.helpers.ClassFileInstaller /g'

Changes: https://git.openjdk.java.net/jdk/pull/2985/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=2985=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8263549
  Stats: 1736 lines in 867 files changed: 0 ins; 67 del; 1669 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2985.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2985/head:pull/2985

PR: https://git.openjdk.java.net/jdk/pull/2985


Re: RFR: 8246494: introduce vm.flagless at-requires property

2021-03-12 Thread Igor Ignatyev
On Tue, 2 Mar 2021 23:27:21 GMT, Igor Ignatyev  wrote:

> resurrecting old 
> [RFR](https://mail.openjdk.java.net/pipermail/hotspot-dev/2020-June/041981.html):
> 
>> Hi all,
>> 
>> could you please review the patch which introduces a new @requires property 
>> to filter out the tests which ignore externally provided JVM flags?
>> 
>> the idea behind this patch is to have a way to clearly mark tests which 
>> ignore flags, so 
>> a) it's obvious that they don't execute a flag-guarded code/feature, and 
>> extra care should be taken to use them to verify any flag-guarded changed;
>> b) they can be easily excluded from runs w/ flags.
>> 
>> @requires and VMProps allows us to achieve both, so it's been decided to add 
>> a new property `vm.flagless`. `vm.flagless` is set to false if there are any 
>> XX flags other than `-XX:MaxRAMPercentage` and `-XX:CreateCoredumpOnCrash` 
>> (which are known to be set almost always) or any X flags other `-Xmixed`; in 
>> other words any tests w/ `@requires vm.flagless` will be excluded from runs 
>> w/ any other X / XX flags passed via `-vmoption` / `-javaoption`. in rare 
>> cases, when one still wants to run the tests marked by `vm.flagless`  w/ 
>> external flags, `vm.flagless` can be forcefully set to true by setting any 
>> value to `TEST_VM_FLAGLESS` env. variable.
>> 
>> this patch adds necessary common changes and marks common tests, namely 
>> Scimark, GTestWrapper and TestNativeProcessBuilder. Component-specific tests 
>> will be marked separately by the corresponding subtasks of 8151707[1].
>> 
>> please note, the patch depends on CODETOOLS-7902336[2], which will be 
>> included in the next jtreg version, so this patch is to be integrated only 
>> after jtreg5.1 is promoted and we switch to use it by 8246387[3].
>> 
>> JBS: https://bugs.openjdk.java.net/browse/JDK-8246494
>> webrev: http://cr.openjdk.java.net/~iignatyev//8246494/webrev.00
>> testing: marked tests w/ different XX and X flags w/ and w/o 
>> TEST_VM_FLAGLESS env. var, and w/o any flags
>> 
>> [1] https://bugs.openjdk.java.net/browse/JDK-8151707
>> [2] https://bugs.openjdk.java.net/browse/CODETOOLS-7902336
>> [3] https://bugs.openjdk.java.net/browse/JDK-8246387
>> 
> 
> after offline discussion with @pliden, it has been decided to reduce the 
> scope of [8246499](https://bugs.openjdk.java.net/browse/JDK-8246499) and not 
> mark the tests that use `UseXGC` flags for selection, e.g. 
> `test/hotspot/jtreg/gc/z/TestSmallHeap.java`.
> 
> Thanks,
> -- Igor

ping?

-

PR: https://git.openjdk.java.net/jdk/pull/2800


Re: RFR: 8263412: ClassFileInstaller can't be used by classes outside of default package

2021-03-12 Thread Igor Ignatyev
On Fri, 12 Mar 2021 02:08:09 GMT, Mikhailo Seledtsov  
wrote:

>> Hi all,
>> 
>> could you please review the patch which moves `ClassFileInstaller` class to 
>> `jdk.test.lib.helpers` package? 
>> to reduce changes in the tests, `ClassFileInstaller` in the default package 
>> is kept w/ just `main` method that calls  `jdk.test.lib.helpers. 
>> ClassFileInstaller::main`. 
>> 
>> from JBS:
>>> ClassFileInstaller is in the default package hence it's impossible to use 
>>> it directly by classes in any other package. although ClassFileInstaller is 
>>> mainly used directly from jtreg test description, there are cases when one 
>>> needs to use it in another "driver" class (e.g. to reduce boilerplate), yet 
>>> to do. that these driver classes have to either be in a default package or 
>>> use reflection, both approaches have drawbacks. 
>>> 
>>> to solve that, we can move ClassFileInstaller implementation to a package, 
>>> and to avoid unneeded churn, keep package-less ClassFileInstaller class 
>>> which will call package-full impl.
>>>
>>> the need for this patch has raised as part of 
>>> [JDK-8254129](https://bugs.openjdk.java.net/browse/JDK-8254129).
>> 
>> testing:
>> - [x] `:jdk_core` against `{macos,windows,linux}-x64`
>> - [x] `:jdk_svc` against `{macos,windows,linux}-x64`
>> - [x] `test/hotspot/jtreg` w/o `applications` and `vmTestbase` directories 
>> against `{macos,windows,linux}-x64`
>> 
>> Thanks,
>> -- Igor
>
> Marked as reviewed by mseledtsov (Committer).

Ioi, Coleen, Misha, thanks for your reviews.

-- Igor

-

PR: https://git.openjdk.java.net/jdk/pull/2932


Integrated: 8263412: ClassFileInstaller can't be used by classes outside of default package

2021-03-12 Thread Igor Ignatyev
On Thu, 11 Mar 2021 05:47:00 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review the patch which moves `ClassFileInstaller` class to 
> `jdk.test.lib.helpers` package? 
> to reduce changes in the tests, `ClassFileInstaller` in the default package 
> is kept w/ just `main` method that calls  `jdk.test.lib.helpers. 
> ClassFileInstaller::main`. 
> 
> from JBS:
>> ClassFileInstaller is in the default package hence it's impossible to use it 
>> directly by classes in any other package. although ClassFileInstaller is 
>> mainly used directly from jtreg test description, there are cases when one 
>> needs to use it in another "driver" class (e.g. to reduce boilerplate), yet 
>> to do. that these driver classes have to either be in a default package or 
>> use reflection, both approaches have drawbacks. 
>> 
>> to solve that, we can move ClassFileInstaller implementation to a package, 
>> and to avoid unneeded churn, keep package-less ClassFileInstaller class 
>> which will call package-full impl.
>>
>> the need for this patch has raised as part of 
>> [JDK-8254129](https://bugs.openjdk.java.net/browse/JDK-8254129).
> 
> testing:
> - [x] `:jdk_core` against `{macos,windows,linux}-x64`
> - [x] `:jdk_svc` against `{macos,windows,linux}-x64`
> - [x] `test/hotspot/jtreg` w/o `applications` and `vmTestbase` directories 
> against `{macos,windows,linux}-x64`
> 
> Thanks,
> -- Igor

This pull request has now been integrated.

Changeset: e834f99d
Author:Igor Ignatyev 
URL:   https://git.openjdk.java.net/jdk/commit/e834f99d
Stats: 472 lines in 114 files changed: 145 ins; 229 del; 98 mod

8263412: ClassFileInstaller can't be used by classes outside of default package

Reviewed-by: iklam, coleenp, mseledtsov

-

PR: https://git.openjdk.java.net/jdk/pull/2932


RFR: 8263412: ClassFileInstaller can't be used by classes outside of default package

2021-03-11 Thread Igor Ignatyev
Hi all,

could you please review the patch which moves `ClassFileInstaller` class to 
`jdk.test.lib.helpers` package? 
to reduce changes in the tests, `ClassFileInstaller` in the default package is 
kept w/ just `main` method that calls  `jdk.test.lib.helpers. 
ClassFileInstaller::main`. 

from JBS:
> ClassFileInstaller is in the default package hence it's impossible to use it 
> directly by classes in any other package. although ClassFileInstaller is 
> mainly used directly from jtreg test description, there are cases when one 
> needs to use it in another "driver" class (e.g. to reduce boilerplate), yet 
> to do. that these driver classes have to either be in a default package or 
> use reflection, both approaches have drawbacks. 
> 
> to solve that, we can move ClassFileInstaller implementation to a package, 
> and to avoid unneeded churn, keep package-less ClassFileInstaller class which 
> will call package-full impl.
>
> the need for this patch has raised as part of 
> [JDK-8254129](https://bugs.openjdk.java.net/browse/JDK-8263412).

testing:
- [x] `:jdk_core` against `{macos,windows,linux}-x64`
- [x] `:jdk_svc` against `{macos,windows,linux}-x64`
- [x] `test/hotspot/jtreg` w/o `applications` and `vmTestbase` directories 
against `{macos,windows,linux}-x64`

Thanks,
-- Igor

-

Commit messages:
 - make ClassFileInstaller.Manifest::from* public
 - updated copyright years
 - import j.t.l.helpers.ClassFileInstaller
 - added jdk/test/lib/helpers/ClassFileInstaller

Changes: https://git.openjdk.java.net/jdk/pull/2932/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=2932=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8263412
  Stats: 473 lines in 114 files changed: 145 ins; 229 del; 99 mod
  Patch: https://git.openjdk.java.net/jdk/pull/2932.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/2932/head:pull/2932

PR: https://git.openjdk.java.net/jdk/pull/2932


Re: RFR(S) : 8246494 : introduce vm.flagless at-requires property

2021-03-09 Thread Igor Ignatyev
RFR got migrated to github as https://github.com/openjdk/jdk/pull/2800

-- Igor

On Jun 5, 2020, at 9:10 AM, Igor Ignatyev 
mailto:igor.ignat...@oracle.com>> wrote:

Hi Per,

you are reading this correctly, make 
TEST=test/hotspot/jtreg/gc/z/TestSmallHeap.java JTREG="VM_OPTIONS=-XX:+UseZGC" 
won't execute gc/z/TestSmallHeap.java; and I don't see it to be incorrect. Let 
me try to explain why using gc/z/TestSmallHeap.java as a running example.

A hotspot test is expected not to be just runnable in an out-of-box 
configuration, but also to serve its purpose as much as possible (which is not 
always 100% given some tests require special build flavor, environment setup, 
etc); in other words, a test is to at least have all necessary VM flags within 
it and not to hope that someone will provide them. gc/z/TestSmallHeap.java does 
that, it explicitly selects zGC, so there is no need for -XX:+UseZGC to achieve 
that. Given this test can be run only when zGC can be selected, it @requires 
vm.gc.Z, which is set to true if zGC is already explicitly selected or if zGC 
is available and no other GC is specified, and the latter holds for an 
out-of-box configuration (assuming that zGC is available in the JVM under 
test); thus, again, you don't have to specify -XX:+UseZGC to run this test. So 
there are no "technical" reasons to run gc/z/TestSmallHeap.java (or any other 
gc/z/ tests) with -XX:+UseZGC. The proposed patches don't change that fact in 
any way.

The patches exclude the tests that ignore external VM flags from execution if 
any significant VM flags are specified. gc/z/TestSmallHeap.java ignores all 
externally provided VM flags, including -XX:+UseZGC. And although in the case 
of -XX:+UseZGC, it's harmless, in almost all other cases it's not. Just to give 
you a few examples:
Let's say you are fixing a bug in zGC which could be reproduced by 
gc/z/TestSmallHeap.java. You came up with two alternative solutions, one of 
which is guarded by `if (UseNewCode)`. To test these solutions, you ran gc/z 
tests twice: with -XX:+UseZGC -XX:+UseNewCode, and all tests passed; with 
XX:+UseZGC, and many tests (but not gc/z/TestSmallHeap.java) failed. So based 
on these results, you decided that the guarded solution is perfect, cleaned up 
the code, sent it out for review, got it pushed, and minutes later found out 
that gc/z/TestSmallHeap.java and some other tests which ignore VM flags failed. 
It would take you some time, to realize that you hadn't tested your UseNewCode 
solution by these tests. Yet were these tests excluded from your testing, it 
would be much easier for you to spot that and react accordingly.
Here is another scenario, you decided to change the default value of ZUncommit, 
so you ran different tests with `XX:+UseZGC -XX:-ZUncommit`, all green, you 
pushed a trivial change s/true/false in z_globals.hpp, next thing you knew a 
bunch of zGC specific tests failed in CI. And again, these were the tests that 
silently ignored `XX:+UseZGC -XX:-ZUncommit`.
Or a slight variation, zGC-supported was added to a future JIT, gc/z tests were 
run with the flag combination which enabled the future JIT, all passed, the 
victory was declared; N releases later; default JIT got changed to the future 
JIT; the next CI build is a disaster, with lots of tests failing from the bugs 
which had not been found N/2 years ago.

Although I understand that it might take some getting used to from you and 
others who used to run gc/x tests with -XX:+Use${X}GC, I am certain that this 
will improve the overall quality of hotspot, save not only machine time (from 
running these tests with other flags) but engineers time from analyzing 
surprising failures, and increase confidence and trust in the hotspot test 
suite.

In a word, I can see how this can be a bit surprising, yet still less 
surprising than the current behavior, but I don't see it as incorrect, it just 
surfaces limitations of certain tests. From my (slightly biased) point of view, 
it's the right thing to do.

Thanks.
-- Igor

On Jun 5, 2020, at 1:20 AM, Per Liden 
mailto:per.li...@oracle.com>> wrote:

Hi Igor,

When looking at the follow-up sub-tasks for this, I see for example this:

http://cr.openjdk.java.net/~iignatyev/8246499/webrev.00/test/hotspot/jtreg/gc/z/TestSmallHeap.java.udiff.html

Maybe I'm misunderstanding how this is supposed to work, but it looks like this 
test would now _not_ be executed if I do:

make TEST=test/hotspot/jtreg/gc/z/TestSmallHeap.java 
JTREG="VM_OPTIONS=-XX:+UseZGC"

Is that so? In that case, that seems incorrect.

cheers,
Per

On 6/3/20 11:30 PM, Igor Ignatyev wrote:
http://cr.openjdk.java.net/~iignatyev//8246494/webrev.00
70 lines changed: 66 ins; 0 del; 4 mod
Hi all,
could you please review the patch which introduces a new @requires property to 
filter out the tests which ignore externally provided JVM flags?
the idea behind this patch is to have a way to clearly mark tests which ignore 
flags, 

Re: RFR: 8260296: SA's dumpreplaydata fails [v3]

2021-02-04 Thread Igor Ignatyev
On Thu, 4 Feb 2021 09:40:33 GMT, Roland Westrelin  wrote:

>> `OutputAnalyzer`/ `OutputBuffer` already have an exit value, which arguable 
>> has nothing to do w/ the text output either, so I think it's ok to add a pid 
>> into `OutputBuffer` i-face and both of its implementations.
>
> I just pushed a change that does this. Does that look ok to you?

yes, thank you.

-

PR: https://git.openjdk.java.net/jdk/pull/2195


Re: RFR: 8260296: SA's dumpreplaydata fails [v4]

2021-02-04 Thread Igor Ignatyev
On Thu, 4 Feb 2021 09:44:13 GMT, Roland Westrelin  wrote:

>> I noticed that the SA's dumpreplaydata command fails with:
>> 
>> java.lang.AssertionError: CLHSDB wasn't run successfully: Opening core file, 
>> please wait...
>> hsdb> Exception in thread "main" java.lang.InternalError: ciMetadata does 
>> not appear to be polymorphic
>> 
>> with a simple test program. This happens because the SA can't find the
>> vtable symbol for ciMetadata (build produced by gcc 9.2.1). AFAIU,
>> there's nothing in our build system that hides that symbol. I had to
>> move one method's definition from the header file to the cpp file for
>> the symbol to be visible again.
>> 
>> We have a test that checks dumpreplaydata but it doesn't catch that
>> problem. The test produces a replay file from a core file with the SA
>> by running a simple test with -Xcomp and CICrash=1. So the replay data
>> has very little or no profile data (which is what causes the problem
>> above). I propose running a slightly more complicated test method and
>> crashing after the method has had time to run for long enough to
>> collect profile data.
>> 
>> The other shortcoming of the test is that it doesn't look at the
>> content of the replay file. It only warns if they differ. The replay
>> file produced by the VM and the one produced by the SA should be
>> identical (except for comment lines). So I propose we check that.
>> 
>> Finally, I can't run that test on my system because core files are
>> handled by systemd (I'm running some recent version of fedora). I
>> suppose, the system can be configured differently but having the test
>> work out the box is nice. I extended the test case to handle that.
>> 
>> With the improved test, there are a few differences between the VM and
>> SA replay files caused by VM changes that were not mirrored in the
>> SA. I fixed those.
>
> Roland Westrelin has updated the pull request with a new target base due to a 
> merge or a rebase. The incremental webrev excludes the unrelated changes 
> brought in by the merge/rebase. The pull request contains 10 additional 
> commits since the last revision:
> 
>  - pid in OutputAnalyzer
>  - pid in OutputAnalyzer
>  - Merge branch 'master' into JDK-8260296
>  - convert all tests
>  - Merge branch 'master' into JDK-8260296
>  - use CoreUtils
>  - whitespaces
>  - SA fixes
>  - VM fix
>  - test

LGTM, you still need to update the copyright years as @plummercj 
[mentioned](https://github.com/openjdk/jdk/pull/2195#issuecomment-768115732).

-

Marked as reviewed by iignatyev (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/2195


Re: RFR: 8260296: SA's dumpreplaydata fails [v3]

2021-02-03 Thread Igor Ignatyev
On Wed, 3 Feb 2021 12:04:00 GMT, Roland Westrelin  wrote:

>> test/lib/jdk/test/lib/process/ProcessTools.java line 461:
>> 
>>> 459: }
>>> 460: 
>>> 461: static public class OutputAnalyzerAndPID {
>> 
>> can we either change `OutputAnalyzer` to store pid (and use -1 for cases 
>> when there is no one) or make `OutputAnalyzer` non-final and have 
>> `OutputAnalyzerAndPID` extending `OutputAnalyzer`?
>
> Thanks for reviewing this. I did not store the pid in the OutputAnalyzer 
> because it doesn't seem to belong there as it has nothing to do with the text 
> output of a test. But if you think that's ok. that's fine with me too. Do you 
> prefer an extra field in OutputAnalyzer or a new subclass?

`OutputAnalyzer`/ `OutputBuffer` already have an exit value, which arguable has 
nothing to do w/ the text output either, so I think it's ok to add a pid into 
`OutputBuffer` i-face and both of its implementations.

-

PR: https://git.openjdk.java.net/jdk/pull/2195


Re: RFR: 8260296: SA's dumpreplaydata fails [v3]

2021-02-02 Thread Igor Ignatyev
On Wed, 27 Jan 2021 08:07:04 GMT, Roland Westrelin  wrote:

>> I noticed that the SA's dumpreplaydata command fails with:
>> 
>> java.lang.AssertionError: CLHSDB wasn't run successfully: Opening core file, 
>> please wait...
>> hsdb> Exception in thread "main" java.lang.InternalError: ciMetadata does 
>> not appear to be polymorphic
>> 
>> with a simple test program. This happens because the SA can't find the
>> vtable symbol for ciMetadata (build produced by gcc 9.2.1). AFAIU,
>> there's nothing in our build system that hides that symbol. I had to
>> move one method's definition from the header file to the cpp file for
>> the symbol to be visible again.
>> 
>> We have a test that checks dumpreplaydata but it doesn't catch that
>> problem. The test produces a replay file from a core file with the SA
>> by running a simple test with -Xcomp and CICrash=1. So the replay data
>> has very little or no profile data (which is what causes the problem
>> above). I propose running a slightly more complicated test method and
>> crashing after the method has had time to run for long enough to
>> collect profile data.
>> 
>> The other shortcoming of the test is that it doesn't look at the
>> content of the replay file. It only warns if they differ. The replay
>> file produced by the VM and the one produced by the SA should be
>> identical (except for comment lines). So I propose we check that.
>> 
>> Finally, I can't run that test on my system because core files are
>> handled by systemd (I'm running some recent version of fedora). I
>> suppose, the system can be configured differently but having the test
>> work out the box is nice. I extended the test case to handle that.
>> 
>> With the improved test, there are a few differences between the VM and
>> SA replay files caused by VM changes that were not mirrored in the
>> SA. I fixed those.
>
> Roland Westrelin has updated the pull request with a new target base due to a 
> merge or a rebase. The incremental webrev excludes the unrelated changes 
> brought in by the merge/rebase. The pull request contains seven additional 
> commits since the last revision:
> 
>  - convert all tests
>  - Merge branch 'master' into JDK-8260296
>  - use CoreUtils
>  - whitespaces
>  - SA fixes
>  - VM fix
>  - test

a few more nits

test/lib/jdk/test/lib/process/ProcessTools.java line 461:

> 459: }
> 460: 
> 461: static public class OutputAnalyzerAndPID {

Suggestion:

public static class OutputAnalyzerAndPID {

test/lib/jdk/test/lib/process/ProcessTools.java line 461:

> 459: }
> 460: 
> 461: static public class OutputAnalyzerAndPID {

can we either change `OutputAnalyzer` to store pid (and use -1 for cases when 
there is no one) or make `OutputAnalyzer` non-final and have 
`OutputAnalyzerAndPID` extending `OutputAnalyzer`?

-

Changes requested by iignatyev (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/2195


Re: RFR: 8260296: SA's dumpreplaydata fails [v3]

2021-02-02 Thread Igor Ignatyev
On Wed, 27 Jan 2021 08:07:04 GMT, Roland Westrelin  wrote:

>> I noticed that the SA's dumpreplaydata command fails with:
>> 
>> java.lang.AssertionError: CLHSDB wasn't run successfully: Opening core file, 
>> please wait...
>> hsdb> Exception in thread "main" java.lang.InternalError: ciMetadata does 
>> not appear to be polymorphic
>> 
>> with a simple test program. This happens because the SA can't find the
>> vtable symbol for ciMetadata (build produced by gcc 9.2.1). AFAIU,
>> there's nothing in our build system that hides that symbol. I had to
>> move one method's definition from the header file to the cpp file for
>> the symbol to be visible again.
>> 
>> We have a test that checks dumpreplaydata but it doesn't catch that
>> problem. The test produces a replay file from a core file with the SA
>> by running a simple test with -Xcomp and CICrash=1. So the replay data
>> has very little or no profile data (which is what causes the problem
>> above). I propose running a slightly more complicated test method and
>> crashing after the method has had time to run for long enough to
>> collect profile data.
>> 
>> The other shortcoming of the test is that it doesn't look at the
>> content of the replay file. It only warns if they differ. The replay
>> file produced by the VM and the one produced by the SA should be
>> identical (except for comment lines). So I propose we check that.
>> 
>> Finally, I can't run that test on my system because core files are
>> handled by systemd (I'm running some recent version of fedora). I
>> suppose, the system can be configured differently but having the test
>> work out the box is nice. I extended the test case to handle that.
>> 
>> With the improved test, there are a few differences between the VM and
>> SA replay files caused by VM changes that were not mirrored in the
>> SA. I fixed those.
>
> Roland Westrelin has updated the pull request with a new target base due to a 
> merge or a rebase. The incremental webrev excludes the unrelated changes 
> brought in by the merge/rebase. The pull request contains seven additional 
> commits since the last revision:
> 
>  - convert all tests
>  - Merge branch 'master' into JDK-8260296
>  - use CoreUtils
>  - whitespaces
>  - SA fixes
>  - VM fix
>  - test

test/lib/jdk/test/lib/util/CoreUtils.java line 166:

> 164: for (int i = 0; i < 10; i++) {
> 165: Thread.sleep(5000);
> 166: OutputAnalyzer out = 
> ProcessTools.executeProcess("coredumpctl", "dump",  "-1",  "-o", core, 
> Long.valueOf(pid).toString());

you can use `String::valueOf` to a string represenatation of `long`:
Suggestion:

OutputAnalyzer out = 
ProcessTools.executeProcess("coredumpctl", "dump",  "-1",  "-o", core, 
String.valueOf(pid));

-

PR: https://git.openjdk.java.net/jdk/pull/2195


Re: RFR: 8259799: vmTestbase/nsk/jvmti/Breakpoint/breakpoint001 is incorrect [v2]

2021-01-14 Thread Igor Ignatyev
On Thu, 14 Jan 2021 20:32:17 GMT, Leonid Mesnik  wrote:

>> est vmTestbase/nsk/jvmti/Breakpoint/breakpoint001 has incorrect check of 
>> strcmp results here:
>> 
>>   for (i=0; i> if (strcmp(methNam,METHODS[i][0]) &&
>> strcmp(methSig,METHODS[i][1])) {
>> printf("CHECK PASSED: method name: "%s"\tsignature: "%s" %d\n",
>>methNam, methSig, i);
>> if (checkStatus == PASSED)
>> bpEvents[i]++;
>> break;
>> }
>> 
>> So test passed when both strcmp (name,sig) are not zero.
>> 
>> The test passes only because there are 2 methods that are checked and it 
>> increases counters for "incorrect" methods.
>
> Leonid Mesnik has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   copyrights and ident fixed

Marked as reviewed by iignatyev (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/2084


Re: RFR: 8259799: vmTestbase/nsk/jvmti/Breakpoint/breakpoint001 is incorrect

2021-01-14 Thread Igor Ignatyev
On Thu, 14 Jan 2021 19:09:59 GMT, Leonid Mesnik  wrote:

> est vmTestbase/nsk/jvmti/Breakpoint/breakpoint001 has incorrect check of 
> strcmp results here:
> 
>   for (i=0; i if (strcmp(methNam,METHODS[i][0]) &&
> strcmp(methSig,METHODS[i][1])) {
> printf("CHECK PASSED: method name: "%s"\tsignature: "%s" %d\n",
>methNam, methSig, i);
> if (checkStatus == PASSED)
> bpEvents[i]++;
> break;
> }
> 
> So test passed when both strcmp (name,sig) are not zero.
> 
> The test passes only because there are 2 methods that are checked and it 
> increases counters for "incorrect" methods.

@lmesnik , looks good to me, besides a few nits.

test/hotspot/jtreg/vmTestbase/nsk/jvmti/Breakpoint/breakpoint001/breakpoint001.cpp
 line 2:

> 1: /*
> 2:  * Copyright (c) 2003, 2020, Oracle and/or its affiliates. All rights 
> reserved.

it's 2021

test/hotspot/jtreg/vmTestbase/nsk/jvmti/Breakpoint/breakpoint001/breakpoint001.cpp
 line 173:

> 171: 
> 172: for (i=0; i 173: if (strcmp(methNam,METHODS[i][0]) == 0 &&

could you please add space before `,`?

-

Marked as reviewed by iignatyev (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/2084


Withdrawn: 8254861: reformat code in vmTestbase/nsk/jdb

2020-12-17 Thread Igor Ignatyev
On Thu, 15 Oct 2020 22:47:43 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this patch which reformats/cleans up the code of 
> vmTestbase/nsk/jdb tests? 
> 
> the part of this patch is a spinoff from #350.
> 
> testing:
> * [x] `vmTestbase/nsk/jdb` tests on `linux-x64-debug`

This pull request has been closed without being integrated.

-

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: 8256181: Remove Allocation of old generation on alternate memory devices functionality [v2]

2020-11-11 Thread Igor Ignatyev
On Wed, 11 Nov 2020 15:38:10 GMT, Thomas Schatzl  wrote:

>> Hi all,
>> 
>>   can I get reviews for this change that removes the "Allocation of old 
>> generation of Java heap on alternate memory devices" functionality 
>> introduced with JDK 12 with 
>> [JDK-8202286](https://bugs.openjdk.java.net/browse/JDK-8202286) due to being
>> 
>> - not used by anyone
>> - not maintained by anyone, i.e. several bugs open for a long time and bit 
>> rotting
>> - requiring some workarounds for new feature development wrt to heap 
>> management
>> 
>> All flags covered by this feature were experimental flags, so there are no 
>> additional procedural issues to take.
>> 
>> I tried to remove all but a few minor cleanups that I thought useful, but of 
>> course this is very subjective.
>> 
>> Testing: hs-tier1-5
>
> Thomas Schatzl has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   ayang review

Marked as reviewed by iignatyev (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/1162


Re: RFR: 8255982: Extend BasicJMapTest to test with different GC Heap [v5]

2020-11-11 Thread Igor Ignatyev
On Wed, 11 Nov 2020 15:42:36 GMT, Lin Zang  wrote:

>> The implementation of jmap tool depends on the implementation of object 
>> iteration by different GC heap.
>> This patch extend the BasicJMapTest to cover differet GC Heap.
>
> Lin Zang has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   recover build tag configuration

Marked as reviewed by iignatyev (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/1094


Re: RFR: 8255982: Extend BasicJMapTest to test with different GC Heap [v4]

2020-11-11 Thread Igor Ignatyev
On Wed, 11 Nov 2020 11:24:08 GMT, Lin Zang  wrote:

>> The implementation of jmap tool depends on the implementation of object 
>> iteration by different GC heap.
>> This patch extend the BasicJMapTest to cover differet GC Heap.
>
> Lin Zang has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Add test id

Hi @linzang ,

it all looks good to me, I'd, however, keep `@build` tags as they were before, 
this is one of a few difference b/w jdk and hotspot test suites ( in this 
particular case, it actually matters as discrepancies can lead to sporadic 
failures). in jdk test-suite, people use a sufficient set of  `@build` tag.

-- Igor

-

Changes requested by iignatyev (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/1094


Re: RFR: 8255616: Disable AOT and Graal in Oracle OpenJDK

2020-10-30 Thread Igor Ignatyev
On Fri, 30 Oct 2020 17:40:51 GMT, Vladimir Kozlov  wrote:

> We shipped Ahead-of-Time compilation (the jaotc tool) in JDK 9, as an 
> experimental feature. We shipped Graal as an experimental JIT compiler in JDK 
> 10. We haven't seen much use of these features, and the effort required to 
> support and enhance them is significant. We therefore intend to disable these 
> features in Oracle builds as of JDK 16. 
> 
> We'll leave the sources for these features in the repository, in case any one 
> else is interested in building them. But we will not update or test them.
> 
> We'll continue to build and ship JVMCI as an experimental feature in Oracle 
> builds.
> 
> Tested changes in all tiers.
> 
> I verified that with these changes I still able to build Graal in open repo 
> and run graalunit testing: 
> 
> `open$ bash test/hotspot/jtreg/compiler/graalunit/downloadLibs.sh 
> /mydir/graalunit_lib/`
> `open$ bash configure --with-debug-level=fastdebug 
> --with-graalunit-lib=/mydir/graalunit_lib/ --with-jtreg=/mydir/jtreg`
> `open$ make jdk-image`
> `open$ make test-image`
> `open$ make run-test TEST=compiler/graalunit/HotspotTest.java`

LGTM

-

Marked as reviewed by iignatyev (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/960


Re: RFR: 8255200: ProblemList com/sun/jdi/EATests.java for ZGC

2020-10-21 Thread Igor Ignatyev
On Wed, 21 Oct 2020 21:04:55 GMT, Daniel D. Daugherty  
wrote:

> Reduce the noise in the JDK16 CI by ProblemListing com/sun/jdi/EATests.java 
> for ZGC.

Marked as reviewed by iignatyev (Reviewer).

-

PR: https://git.openjdk.java.net/jdk/pull/787


Re: RFR: 8254861: reformat code in vmTestbase/nsk/jdb [v2]

2020-10-21 Thread Igor Ignatyev
On Wed, 21 Oct 2020 20:12:51 GMT, Chris Plummer  wrote:

> Do we have coding guidelines that say to indent them 8?

old "official" guidelines don't tell much about it,  @aioobe's guidelines don't 
special-case array initiation, so it is covered by:
> A continuation line should be indented in one of the following four ways
> Variant 1: With 8 extra spaces relative to the indentation of the previous 
> line.
> Variant 2: With 8 extra spaces relative to the starting column of the wrapped 
> expression.
> Variant 3: Aligned with previous sibling expression (as long as it is clear 
> that it’s a continuation line)
> Variant 4: Aligned with previous method call in a chained expression. 

which will suggest that 8 is the right indent here. 

google's code-style says that "array initializer may _optionally_ be formatted 
as if it were a "block-like construct.", which would mean 4, but note "may" and 
"_optionally_". personally I'd prefer consistency here, but if you think it 
will make the lives of emacs-lovers miserable, although I'm sure you can 
configure emacs to treat array-init as line continuation, and not as a block, I 
can revert that.

-

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: 8254861: reformat code in vmTestbase/nsk/jdb [v2]

2020-10-20 Thread Igor Ignatyev
On Tue, 20 Oct 2020 01:13:33 GMT, Chris Plummer  wrote:

>> although horizontal alignment (of variable names, initialization, 
>> expressions, etc) seems to somewhat improve
>> readability, it almost always associated with a higher maintenance cost, and 
>> the current consensus is not to do that.
>> from 'Horizontal Whitespace' section of the same
>> [guidelines](http://cr.openjdk.java.net/~alundblad/styleguide/index-v6.html#toc-whitespace):
>>> In variable declarations it is not recommended to align types and variables.
>> *Motivation*
>> The improvement in readability when aligning variable names is negligible 
>> compared to the efforts needed to keep them
>> aligned as the code evolves. Realigning all variables when one of the types 
>> change also causes unnecessarily
>> complicated patches to review.  other java code guidelines either discourage 
>> horizontal alignment or consider it
>> optional and provide the same motivation as above to why it's better not to 
>> have it.
>
> While in general I agree that gratuitous aligning of variables is not 
> desirable, this is a special case where it adds
> value (enough that I think it's worth doing). The value here is due to the 
> fact that the variables are building on each
> other. When they are aligned it's easier to scan for the variable (and its 
> value) that another variable builds on.  You
> can keep your change in place if you feel that consistency and maintainabilty 
> is more important here than readability.

Although I don't think that the test code has the same frequency of changes as 
the product code, I'd still prefer
consistency and maintainability over some small penalty (which is IMHO 
negligible) in readability.

frankly, it's also partially motivated by my laziness as I don't want to go 
over all these files again and examine each
and every initialization for possible (scanty) readability improvements from 
horizontal alignment.

-

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: 8254861: reformat code in vmTestbase/nsk/jdb [v2]

2020-10-19 Thread Igor Ignatyev
On Mon, 19 Oct 2020 23:56:00 GMT, Chris Plummer  wrote:

>> b/c you get indentation unit for each block,  1st block is `fields001` class 
>> definition, next block is the array
>> initializations (start at L#86 and L#99 for `checkedFields1` and 
>> `checkedFields2` respecitively)
>
> I don't follow. You seem to have added an extra 4 (after having already 
> indented 4 extra spaces) simply because it is
> an array initialization. Why is the indentation any different than it would 
> be for something like a "for" loop block.
> The body of the block is indented 4 spaces more than the "for" statement.  
> For the static initialization the body of
> that "static" block should be indented 4 more than the "static" statement. I 
> don't see anything in the style guide that
> would indicate otherwise.

oh, sorry, it appears I was trying to explain the new code while looking at the 
old one...

full disclaimer, which I thought was obvious, the vast majority of the changes 
here aren't done by me, they are done by
auto-formatter, or more precisely by IntelliJ IDEA's formatter. IDEA doesn't 
consider array initialization as a new
block, and what's actually at play here is an indent for statement continuation 
(which is 2x of regular indent).

-

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: 8254861: reformat code in vmTestbase/nsk/jdb [v2]

2020-10-19 Thread Igor Ignatyev
On Mon, 19 Oct 2020 18:37:58 GMT, Chris Plummer  wrote:

>> Igor Ignatyev has updated the pull request incrementally with one additional 
>> commit since the last revision:
>> 
>>   update copyright years
>
> test/hotspot/jtreg/vmTestbase/nsk/jdb/caught_exception/caught_exception002/caught_exception002.java
>  line 87:
> 
>> 85: static final String DEBUGGEE_CLASS = TEST_CLASS + "a";
>> 86: static final String FIRST_BREAK = DEBUGGEE_CLASS + ".main";
>> 87: static final String LAST_BREAK = DEBUGGEE_CLASS + ".lastBreak";
> 
> I'm not so sure I'd consider this change an improvement. Maybe remove some of 
> the extra spaces but keep the alignment.

although horizontal alignment (of variable names, initialization, expressions, 
etc) seems to somewhat improve
readability, it almost always associated with a higher maintenance cost, and 
the current consensus is not to do that.
from 'Horizontal Whitespace' section of the same
[guidelines](http://cr.openjdk.java.net/~alundblad/styleguide/index-v6.html#toc-whitespace):
> In variable declarations it is not recommended to align types and variables.
*Motivation*
The improvement in readability when aligning variable names is negligible 
compared to the efforts needed to keep them
aligned as the code evolves. Realigning all variables when one of the types 
change also causes unnecessarily
complicated patches to review.

other java code guidelines either discourage horizontal alignment or consider 
it optional and provide the same
motivation as above to why it's better not to have it.

-

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: 8254861: reformat code in vmTestbase/nsk/jdb [v2]

2020-10-19 Thread Igor Ignatyev
On Mon, 19 Oct 2020 18:51:15 GMT, Chris Plummer  wrote:

>> Igor Ignatyev has updated the pull request incrementally with one additional 
>> commit since the last revision:
>> 
>>   update copyright years
>
> test/hotspot/jtreg/vmTestbase/nsk/jdb/fields/fields001/fields001.java line 
> 108:
> 
>> 106: "ii_aa", "oi_aa",
>> 107: "ii_aaa", "oi_aaa"
>> 108: };
> 
> Why are these indented 8 instead of 4?

b/c you get indentation unit for each block,  1st block is `fields001` class 
definition, next block is the array
initializations (start at L#86 and L#99 for `checkedFields1` and 
`checkedFields2` respecitively)

> test/hotspot/jtreg/vmTestbase/nsk/jdb/hidden_class/hc001/hc001.java line 323:
> 
>> 321: "xx.yyy/0x111/0x222",
>> 322: "xx./0x111.0x222",
>> 323: "xx.yyy.zzz/"
> 
> Why are these indented 8 instead of 4?

due to the same reasons in the case w/ `fields001`, these lines have 3 unit 
indentation, 1st for `hc001` class, 2nd for
`testInvalidCommands` method, 3rd for `invClassNames` array initialization, so 
they have 3x4 = 12 spaces.

-

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: 8254861: reformat code in vmTestbase/nsk/jdb [v2]

2020-10-19 Thread Igor Ignatyev
On Mon, 19 Oct 2020 18:44:56 GMT, Chris Plummer  wrote:

>> Igor Ignatyev has updated the pull request incrementally with one additional 
>> commit since the last revision:
>> 
>>   update copyright years
>
> test/hotspot/jtreg/vmTestbase/nsk/jdb/caught_exception/caught_exception002/caught_exception002a.java
>  line 42:
> 
>> 40: }
>> 41:
>> 42: public int runIt(String[] args, PrintStream out) {
> 
> Is there a style guide that says this is the preferred way to declare an 
> array type? I count 3700 occurrences of
> "String args[]" in ours tests.

yes, there is, e.g. [Java Style
Guidelines](http://cr.openjdk.java.net/~alundblad/styleguide/index-v6.html#toc-variable-declarations)
 by Andreas
Lundblad:
> Square brackets of arrays should be at the type (String[] args) and not on 
> the variable (String args[]).

although @aioobe's guidelines have been accepted (yet?) to the openjdk guide 
(see openjdk/guide#14), this particular
item is agreed on and accepted almost unanimously in the industry.

-

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: 8254861: reformat code in vmTestbase/nsk/jdb

2020-10-19 Thread Igor Ignatyev
On Thu, 15 Oct 2020 22:47:43 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this patch which reformats/cleans up the code of 
> vmTestbase/nsk/jdb tests?
> 
> the part of this patch is a spinoff from #350.
> 
> testing:
> * [x] `vmTestbase/nsk/jdb` tests on `linux-x64-debug`

ping?

-

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: 8254861: reformat code in vmTestbase/nsk/jdb [v2]

2020-10-15 Thread Igor Ignatyev
> Hi all,
> 
> could you please review this patch which reformats/cleans up the code of 
> vmTestbase/nsk/jdb tests?
> 
> the part of this patch is a spinoff from #350.
> 
> testing:
> * [x] `vmTestbase/nsk/jdb` tests on `linux-x64-debug`

Igor Ignatyev has updated the pull request incrementally with one additional 
commit since the last revision:

  update copyright years

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/689/files
  - new: https://git.openjdk.java.net/jdk/pull/689/files/1b6fa98f..e43129d6

Webrevs:
 - full: https://webrevs.openjdk.java.net/?repo=jdk=689=01
 - incr: https://webrevs.openjdk.java.net/?repo=jdk=689=00-01

  Stats: 64 lines in 64 files changed: 0 ins; 0 del; 64 mod
  Patch: https://git.openjdk.java.net/jdk/pull/689.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/689/head:pull/689

PR: https://git.openjdk.java.net/jdk/pull/689


RFR: 8254861: reformat code in vmTestbase/nsk/jdb

2020-10-15 Thread Igor Ignatyev
Hi all,

could you please review this patch which reformats/cleans up the code of 
vmTestbase/nsk/jdb tests?

the part of this patch is a spinoff from #350.

testing:
* [x] `vmTestbase/nsk/jdb` tests on `linux-x64-debug`

-

Commit messages:
 - 8254861: reformat code in vmTestbase/nsk/jdb

Changes: https://git.openjdk.java.net/jdk/pull/689/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=689=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8254861
  Stats: 3829 lines in 130 files changed: 572 ins; 489 del; 2768 mod
  Patch: https://git.openjdk.java.net/jdk/pull/689.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/689/head:pull/689

PR: https://git.openjdk.java.net/jdk/pull/689


Re: RFR: JDK-8247589: Implementation of Alpine Linux/x64 Port [v2]

2020-10-08 Thread Igor Ignatyev
On Thu, 8 Oct 2020 11:00:41 GMT, Aleksei Voitylov  wrote:

> @iignatev I resolved the conflict in whitebox.cpp and fixed a minor style nit 
> on the way. Could you take a look?

LGTM

-

PR: https://git.openjdk.java.net/jdk/pull/49


Integrated: 8253878: clean up nsk/share/jvmti/ArgumentHandler

2020-09-30 Thread Igor Ignatyev
On Wed, 30 Sep 2020 22:11:43 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review this small patch which reformats `ArgumentHandler`, 
> removes unused
> `findOptionStringValue(String name, String defaultValue)` method, fixes typos?

This pull request has now been integrated.

Changeset: 55c282bb
Author:    Igor Ignatyev 
URL:   https://git.openjdk.java.net/jdk/commit/55c282bb
Stats: 43 lines in 1 file changed: 1 ins; 25 del; 17 mod

8253878: clean up nsk/share/jvmti/ArgumentHandler

Reviewed-by: cjplummer

-

PR: https://git.openjdk.java.net/jdk/pull/443


Re: RFR: 8253878: clean up nsk/share/jvmti/ArgumentHandler

2020-09-30 Thread Igor Ignatyev
On Wed, 30 Sep 2020 23:28:11 GMT, Chris Plummer  wrote:

>> Hi all,
>> 
>> could you please review this small patch which reformats `ArgumentHandler`, 
>> removes unused
>> `findOptionStringValue(String name, String defaultValue)` method, fixes 
>> typos?
>
> Marked as reviewed by cjplummer (Reviewer).

thanks Chris.

-

PR: https://git.openjdk.java.net/jdk/pull/443


Re: RFR: 8253878: clean up nsk/share/jvmti/ArgumentHandler

2020-09-30 Thread Igor Ignatyev
On Wed, 30 Sep 2020 22:58:38 GMT, Chris Plummer  wrote:

>> Hi all,
>> 
>> could you please review this small patch which reformats `ArgumentHandler`, 
>> removes unused
>> `findOptionStringValue(String name, String defaultValue)` method, fixes 
>> typos?
>
> test/hotspot/jtreg/vmTestbase/nsk/share/jvmti/ArgumentHandler.java line 104:
> 
>> 102:  *   or null if this option has no value
>> 103:  * @return true if option is admissible and has proper value;
>> 104:  * false if option is not admissible
> 
> Why is this line not indented?

I guess b/c this is how IDEA thinks `@return` javadoc should be aligned. I have 
checked `java.base` javadoc, and some
classes have indentation here, some don't. either way is fine w/ me.

-

PR: https://git.openjdk.java.net/jdk/pull/443


Re: RFR: 8253878: clean up nsk/share/jvmti/ArgumentHandler

2020-09-30 Thread Igor Ignatyev
On Wed, 30 Sep 2020 23:00:30 GMT, Chris Plummer  wrote:

>> Hi all,
>> 
>> could you please review this small patch which reformats `ArgumentHandler`, 
>> removes unused
>> `findOptionStringValue(String name, String defaultValue)` method, fixes 
>> typos?
>
> test/hotspot/jtreg/vmTestbase/nsk/share/jvmti/ArgumentHandler.java line 126:
> 
>> 124:  * If optionString is null this method just does nothing.
>> 125:  *
>> 126:  * @throws BadOption if known option has illegal value
> 
> Shouldn't BadOption use  or ?

no, `@throws` should be followed by exception class-name, see [1]

[1]: 
https://docs.oracle.com/en/java/javase/15/docs/specs/javadoc/doc-comment-spec.html#throws

-

PR: https://git.openjdk.java.net/jdk/pull/443


RFR: 8253878: clean up nsk/share/jvmti/ArgumentHandler

2020-09-30 Thread Igor Ignatyev
Hi all,

could you please review this small patch which reformats `ArgumentHandler`, 
removes unused
`findOptionStringValue(String name, String defaultValue)` method, fixes typos?

-

Commit messages:
 - 8253878: clean up nsk/share/jvmti/ArgumentHandler

Changes: https://git.openjdk.java.net/jdk/pull/443/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=443=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8253878
  Stats: 43 lines in 1 file changed: 1 ins; 25 del; 17 mod
  Patch: https://git.openjdk.java.net/jdk/pull/443.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/443/head:pull/443

PR: https://git.openjdk.java.net/jdk/pull/443


Integrated: 8252003: remove usage of PropertyResolvingWrapper in vmTestbase/nsk/jvmti

2020-09-30 Thread Igor Ignatyev
On Fri, 25 Sep 2020 23:48:30 GMT, Igor Ignatyev  wrote:

> Hi all,
> 
> could you please review the patch which removes `PropertyResolvingWrapper` 
> from `vmTestbase/nsk/jvmti` tests? as
> `jtreg` doesn't support spaces in the arguments and doesn't handle `"` in any 
> special ways, the patch also:
>  - `s/"-javaOpts=/-javaOpts="/`
>  - makes `nsk.jvmti.scenarios.general_functions.GF08` to use 2nd arg as 
> `verboseType` and 3rd and the rest args
>concatenated as `phrase` and updates the tests accordingly
>  - removes spaces and surrounding `"` from `nsk.jvmti.test.property*`
>  - removes `"` surrounding `-agentlib:`, replaces spaces in `-agentlib` with 
> `,` and updates `ArgumentHandler` to treat
>`,` (as well as ` ` and `~`) as options delimiters, so it's consistent w/ 
> `jvmti_tools.cpp`
> 
> testing: ✅  `vmTestbase/nsk/jvmti` on {linux,windows,macos}-x64

This pull request has now been integrated.

Changeset: ca0e014e
Author:Igor Ignatyev 
URL:   https://git.openjdk.java.net/jdk/commit/ca0e014e
Stats: 599 lines in 165 files changed: 14 ins; 149 del; 436 mod

8252003: remove usage of PropertyResolvingWrapper in vmTestbase/nsk/jvmti

Reviewed-by: cjplummer, sspitsyn

-

PR: https://git.openjdk.java.net/jdk/pull/370


Re: RFR: 8252003: remove usage of PropertyResolvingWrapper in vmTestbase/nsk/jvmti [v2]

2020-09-30 Thread Igor Ignatyev
On Wed, 30 Sep 2020 21:34:22 GMT, Serguei Spitsyn  wrote:

>>> What are the meaning of these properties ?:
>>> -Dnsk.jvmti.test.property=value_of_nsk.jvmti.test.property
>>> -Dnsk.jvmti.test.property=initial_value_of_nsk.jvmti.test.property
>>> -Dnsk.jvmti.test.property.empty.new=initial_value_of_nsk.jvmti.test.property.empty.new
>> 
>> these are properties used by jvmti tests, the tests compare the actual value 
>> w/ expected values hardcoded in the test
>> code. the purpose of these properties is different in different tests, 
>> ranging from just checking values by an agent to
>> changing the value by the agent and checking that the value was changed.
>>  
>>> 
>>> Could you, please, explain this change? :
>>> 
>>> 
>>  ... scenarios/general_functions/GF08/gf08t001/TestDriver.java
>> @@ -87,8 +87,8 @@ public static void main(String[] args) throws Exception {
>> nsk.jvmti.scenarios.general_functions.GF08.gf08t.main(new String[] {
>> "gf08t001",
>> 
>> nsk.jvmti.scenarios.general_functions.GF08.gf08t001.class.getName(),
>>  -   keyPhrase,
>>  -  "gc"});
>>  +  "gc",
>>  +  keyPhrase});
>> }
>> }
>> 
>> it's the same changes I described 
>> [above](https://github.com/openjdk/jdk/pull/370#discussion_r497655837), in 
>> two words,
>> due to how jtreg handles spaces and `"` in the arguments, the positions of 
>> `phrase` and  `verboseType` have been
>> switched.
>
> Okay, thanks!

Serguei, Chris, thanks a lot for your reviews.

-

PR: https://git.openjdk.java.net/jdk/pull/370


  1   2   3   4   >