RFR: 8278885: Remove Windows ARM64 int8_t workaround in G1

2022-01-12 Thread aamarsh
Please review this small change to revert a previous workaround that avoided an 
MSVC issue. 

This issue has now been fixed in VS 16.8 and higher. 

I also updated some documentation to reflect this change.

-

Commit messages:
 - reverted windows/aarch64 workaround and added to documentation

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

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


RFR: 8279315: Add Git support to update_copyright_year.sh script

2022-01-12 Thread Dmitry Kulikov
Modified the `make/scripts/update_copyright_year.sh` script to support Git as 
well as Mercurial, as per 
[JDK-8279315](https://bugs.openjdk.java.net/browse/JDK-8279315). Also added the 
ability to specify company name as a command line argument instead of being 
hard-coded into the script.

-

Commit messages:
 - 8279315: Add Git support to update_copyright_year.sh script

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

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


Re: RFR: 8203290: [PPC64, s390] Check functionality of JDK-8199712 (Flight Recorder) [v8]

2022-01-12 Thread Markus Grönlund
On Wed, 12 Jan 2022 15:18:46 GMT, Tyler Steele  wrote:

>> Just in time for the holidays I have completed an implementation of the JFR 
>> functionality for AIX. As a side note, this is my first submission to 
>> OpenJDK 
>> 
>> ### Implementation notes and alternatives considered
>> 
>> After modifying the build system to allow the --enable-jvm-feature-jfr to 
>> work on AIX, my task was to implement the interfaces from os_perf.hpp. The 
>> os_perf_aix.cpp implementation that existed was, I believe, a copy of the 
>> Linux implementation. A review of the code in that file showed that 
>> NetworkInterface, CPUPerformanceInterface, and SystemProcessInterface would 
>> require modification to work on AIX. Using the Linux implementation as a 
>> guide, I initially expected to use files from the aix procfs like 
>> /proc//psinfo, and /proc//status in a manner similar to the Linux 
>> implementation. However, I ended up using libperfstat for all functionality 
>> required by the interfaces.
>> 
>> ### Testing
>> 
>> Testing for JFR seems to be quite light in the repo both before and after 
>> this change. In addition to performing manual testing, I have added some 
>> basic sanity checks that ensure events can be created and committed (using 
>> jtreg), and performs some basic checks on the results of the interface 
>> member functions (using gtest).
>> 
>> ### More notes
>> 
>> I've sent an email to the JFR group about a TOC overflow warning I 
>> encountered while building (for the release server target). I believe the 
>> fix is to pass -qpic=large when using the xlc toolchain, but my 
>> modifications to flags-cflags.m4 have not been successful in removing this 
>> warning.
>
> Tyler Steele has updated the pull request with a new target base due to a 
> merge or a rebase. The pull request now contains five commits:
> 
>  - Merge branch 'master' into JDK-8203290
>  - Clean up & testing
>
>- Run JFR tests in test/jdk/jdk/jfr
>- Fix issues found from above test suite
>- Remove unecessary jtreg & gtest tests
>- Remove ineffective `qpic=large`
>- TODO: jdk/jfr/event/runtime/TestNativeLibrariesEvent.java
>  - Merge branch 'JDK-8203290' of github.com:backwaterred/jdk into JDK-8203290
>  - 8203290: Implements Java Flight Recorder on AIX
>
> - changes build system to allow jfr feature on aix
> - implements NetworkPerformance, CPUPerformance, and SystemProcess
> interfaces from os_perf.hpp
> - implements jfr sanity tests
>  - 8203290: Implements Java Flight Recorder on AIX
>
> - changes build system to allow jfr feature on aix
> - implements NetworkPerformance, CPUPerformance, and SystemProcess
> interfaces from os_perf.hpp
> - implements jfr sanity tests

Hi Tyler,

Good work in getting JFR ported - thank you. Most of the work revolved around 
implementing the platform-specific os_perf* functionality. I had assumed you 
would need more work concerning the thread sampler, i.e. JFR method sampling, 
but it seems that os/posix/signals_posix.cpp can be used as-is (for suspend / 
resume) and that  pd_get_top_frame_for_profiling() already have implementations 
- that's good in that case.
Speaking of the thread sampler, to ensure stability, you also need a working 
implementation of os::ThreadCrashProtection. I can see there is the one in 
os_posix.cpp, and maybe that is the one already in use? Or does there need to 
be a specialization in os_aix.cpp? Please see 
https://bugs.openjdk.java.net/browse/JDK-8279077 for more details about crash 
protection.

I can't comment on the os_perf_aix.cpp changes from a ppc/aix viewpoint - I 
think Martin has taken care of that already.

I am ok with this from a JFR standpoint.

Thanks again
Markus

-

Marked as reviewed by mgronlun (Reviewer).

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md [v2]

2022-01-12 Thread Lance Andersen
On Wed, 12 Jan 2022 14:46:54 GMT, Daniel Jelinski  wrote:

>> Currently the information about using IDEA can only be found on mailing 
>> lists.
>> 
>> Additionally fixed the documentation for Visual Studio; the target 
>> `ide-project` does not exist.
>
> Daniel Jelinski has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Improved wording

> I think you are good to go with your latest set of changes.
> 
> Not sure if you want to refer to the idea.sh -h for additional options 
> (though that does not seem to give you any detail regarding the options)



> > Not sure if you want to refer to the idea.sh -h for additional options
> 
> I'm not sure about that either. These options are usually not required, and 
> the -h output leaves something to be desired. I'd rather keep the current 
> version, and only expand if users start asking.
> 
> /integrate

Works for me.

BTW typically we do the /integrate in a separate comment but it seems to have 
worked her

-

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


Integrated: 8268081: Upgrade Unicode Data Files to 14.0.0

2022-01-12 Thread Naoto Sato
On Wed, 5 Jan 2022 22:42:38 GMT, Naoto Sato  wrote:

> Please review the changes for upgrading the Unicode support in the JDK, from 
> version 13 to version 14. Corresponding CSR has also been drafted.

This pull request has now been integrated.

Changeset: 0a094d7c
Author:Naoto Sato 
URL:   
https://git.openjdk.java.net/jdk/commit/0a094d7c286ed0b5a35c517391e48c603cb43a68
Stats: 3443 lines in 41 files changed: 2353 ins; 101 del; 989 mod

8268081: Upgrade Unicode Data Files to 14.0.0

Reviewed-by: joehw, iris, lancea

-

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md [v2]

2022-01-12 Thread Daniel Jelinski
On Wed, 12 Jan 2022 18:08:51 GMT, Lance Andersen  wrote:

> Not sure if you want to refer to the idea.sh -h for additional options

I'm not sure about that either. These options are usually not required, and the 
-h output leaves something to be desired. I'd rather keep the current version, 
and only expand if users start asking.

-

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


Re: RFR: 8268081: Upgrade Unicode Data Files to 14.0.0

2022-01-12 Thread Kevin Rushforth
On Wed, 5 Jan 2022 22:42:38 GMT, Naoto Sato  wrote:

> Please review the changes for upgrading the Unicode support in the JDK, from 
> version 13 to version 14. Corresponding CSR has also been drafted.

The CSR is now approved. This comment should be sufficient to wake up the bot.

-

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


Re: RFR: 8253757: Add LLVM-based backend for hsdis

2022-01-12 Thread Saint Wesonga
On Wed, 17 Nov 2021 13:17:21 GMT, Magnus Ihse Bursie  wrote:

>> This patch expands the newly added system for hsdis backends to include LLVM.
>> 
>> The actual code in hsdis-llvm.cpp is based heavily on the work by @luhenry, 
>> as published in the never integrated PR 
>> https://github.com/openjdk/jdk/pull/392. (I have basically just ripped out 
>> the binutils-based part of it.)
>> 
>> Unfortunately I have not been able to make this work properly on Windows. 
>> With some additional flags I made it compile without complaints, but it 
>> caused hotspot to segfault in `LoadLibrary` (!) in `os::dll_load` when I 
>> tried to load the library. This is somewhat ironic, since the initial 
>> implementation was created by Ludovic for the very purpose of using it on 
>> Windows.
>> 
>> The lack of Windows support in this patch does not mean it is impossible to 
>> get it to work, just that I need to co-operate with someone who has more 
>> experience of compiling LLVM on Windows, and/or are more eager to get this 
>> combination to work.
>
> Yeah bot, I'm still working on it.

> @magicus @JornVernee Thank you for starting this PR and for the notes on the 
> Windows changes. I'm trying them out on macOS and Windows.
> 
> @theRealAph I'm not as familiar with the mac platform. Did you need to do 
> anything special to address these errors? I was adding 
> -L/opt/homebrew/opt/llvm/lib to the HSDIS_LDFLAGS.
> 
> ```
>   "_LLVMCreateDisasm", referenced from:
>   hsdis_backend::hsdis_backend(unsigned long, unsigned long, unsigned 
> char*, unsigned long, void* (*)(void*, char const*, void*), void*, int 
> (*)(void*, char const*, ...), void*, char const*, int) in hsdis-llvm.o
>   "_LLVMDisasmDispose", referenced from:
>   hsdis_backend::~hsdis_backend() in hsdis-llvm.o
> ...
> ld: symbol(s) not found for architecture arm64
> clang-13: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> ```

Turns out I just needed to add /opt/homebrew/opt/llvm/bin to my PATH. I can now 
use --with-hsdis=llvm.

-

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md [v2]

2022-01-12 Thread Lance Andersen
On Wed, 12 Jan 2022 14:46:54 GMT, Daniel Jelinski  wrote:

>> Currently the information about using IDEA can only be found on mailing 
>> lists.
>> 
>> Additionally fixed the documentation for Visual Studio; the target 
>> `ide-project` does not exist.
>
> Daniel Jelinski has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Improved wording

I think you are good to go with your latest set of changes.

Not sure if you want to refer to the idea.sh -h for additional options (though 
that does not seem to give you any detail regarding the options)

-

Marked as reviewed by lancea (Reviewer).

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


Re: RFR: 8277204: Implementation of JEP 8264130: PAC-RET protection for Linux/AArch64 [v11]

2022-01-12 Thread Andrew Dinn
On Wed, 12 Jan 2022 17:08:34 GMT, Alan Hayward  wrote:

> Is it worth holding this patch up for those fixes?

Probably. It depends on exactly what is failing. Can you provide more info?

-

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


Re: RFR: 8277204: Implementation of JEP 8264130: PAC-RET protection for Linux/AArch64 [v11]

2022-01-12 Thread Alan Hayward
On Tue, 14 Dec 2021 09:40:03 GMT, Alan Hayward  wrote:

>> PAC is an optional feature in AArch64 8.3 and is compulsory in v9. One
>> of its uses is to protect against ROP based attacks. This is done by
>> signing the Link Register whenever it is stored on the stack, and
>> authenticating the value when it is loaded back from the stack. If an
>> attacker were to try to change control flow by editing the stack then
>> the authentication check of the Link Register will fail, causing a
>> segfault when the function returns.
>> 
>> On a system with PAC enabled, it is expected that all applications will
>> be compiled with ROP protection. Fedora 33 and upwards already provide
>> this. By compiling for ARMv8.0, GCC and LLVM will only use the set of
>> PAC instructions that exist in the NOP space - on hardware without PAC,
>> these instructions act as NOPs, allowing backward compatibility for
>> negligible performance cost (2 NOPs per non-leaf function).
>> 
>> Hardware is currently limited to the Apple M1 MacBooks. All testing has
>> been done within a Fedora Docker image. A run of SpecJVM showed no
>> difference to that of noise - which was surprising.
>> 
>> The most important part of this patch is simply compiling using branch
>> protection provided by GCC/LLVM. This protects all C++ code from being
>> used in ROP attacks, removing all static ROP gadgets from use.
>> 
>> The remainder of the patch adds ROP protection to runtime generated
>> code, in both stubs and compiled Java code. Attacks here are much harder
>> as ROP gadgets must be found dynamically at runtime. If/when AOT
>> compilation is added to JDK, then all stubs and compiled Java will be
>> susceptible ROP gadgets being found by static analysis and therefore
>> potentially as vulnerable as C++ code.
>> 
>> There are a number of places where the VM changes control flow by
>> rewriting the stack or otherwise. I’ve done some analysis as to how
>> these could also be used for attacks (which I didn’t want to post here).
>> These areas can be protected ensuring the pointers to various stubs and
>> entry points are stored in memory as signed pointers. These changes are
>> simple to make (they can be reduced to a type change in common code and
>> a few addition sign/auth calls in the backend), but there a lot of them
>> and the total code change is fairly large. I’m happy to provide a few
>> work in progress patches.
>> 
>> In order to match the security benefits of the Apple Arm64e ABI across
>> the whole of JDK, then all the changes mentioned above would be
>> required.
>
> Alan Hayward has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Change UseROPProtection to UseBranchProtection
>   
>   Change-Id: I31c5e1bb5c285262f262459c13057a46221682f1
>   CustomizedGitHooks: yes

Coming back to this work for 2021

I've just done a complete run of all the jtreg tests on this patch with both 
PAC on and PAC off on a PAC enabled machine.
With PAC off I saw no regressions. With PAC on I saw ~250 regressions - mostly 
Shenendoah tests, but with a few ZGC and serviceability tests too. Is it worth 
holding this patch up for those fixes?

In addition the CSR still needs a review: 
https://bugs.openjdk.java.net/browse/JDK-8277543

-

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md [v2]

2022-01-12 Thread Erik Joelsson
On Wed, 12 Jan 2022 14:46:54 GMT, Daniel Jelinski  wrote:

>> Currently the information about using IDEA can only be found on mailing 
>> lists.
>> 
>> Additionally fixed the documentation for Visual Studio; the target 
>> `ide-project` does not exist.
>
> Daniel Jelinski has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Improved wording

Contents of ide.md looks good. As long as ide.html is generated correctly using 
pandoc I'm good with this.

-

Marked as reviewed by erikj (Reviewer).

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


Re: RFR: 8203290: [PPC64, s390] Check functionality of JDK-8199712 (Flight Recorder) [v8]

2022-01-12 Thread Tyler Steele
> Just in time for the holidays I have completed an implementation of the JFR 
> functionality for AIX. As a side note, this is my first submission to OpenJDK 
> 
> 
> ### Implementation notes and alternatives considered
> 
> After modifying the build system to allow the --enable-jvm-feature-jfr to 
> work on AIX, my task was to implement the interfaces from os_perf.hpp. The 
> os_perf_aix.cpp implementation that existed was, I believe, a copy of the 
> Linux implementation. A review of the code in that file showed that 
> NetworkInterface, CPUPerformanceInterface, and SystemProcessInterface would 
> require modification to work on AIX. Using the Linux implementation as a 
> guide, I initially expected to use files from the aix procfs like 
> /proc//psinfo, and /proc//status in a manner similar to the Linux 
> implementation. However, I ended up using libperfstat for all functionality 
> required by the interfaces.
> 
> ### Testing
> 
> Testing for JFR seems to be quite light in the repo both before and after 
> this change. In addition to performing manual testing, I have added some 
> basic sanity checks that ensure events can be created and committed (using 
> jtreg), and performs some basic checks on the results of the interface member 
> functions (using gtest).
> 
> ### More notes
> 
> I've sent an email to the JFR group about a TOC overflow warning I 
> encountered while building (for the release server target). I believe the fix 
> is to pass -qpic=large when using the xlc toolchain, but my modifications to 
> flags-cflags.m4 have not been successful in removing this warning.

Tyler Steele has updated the pull request with a new target base due to a merge 
or a rebase. The pull request now contains five commits:

 - Merge branch 'master' into JDK-8203290
 - Clean up & testing
   
   - Run JFR tests in test/jdk/jdk/jfr
   - Fix issues found from above test suite
   - Remove unecessary jtreg & gtest tests
   - Remove ineffective `qpic=large`
   - TODO: jdk/jfr/event/runtime/TestNativeLibrariesEvent.java
 - Merge branch 'JDK-8203290' of github.com:backwaterred/jdk into JDK-8203290
 - 8203290: Implements Java Flight Recorder on AIX
   
- changes build system to allow jfr feature on aix
- implements NetworkPerformance, CPUPerformance, and SystemProcess
interfaces from os_perf.hpp
- implements jfr sanity tests
 - 8203290: Implements Java Flight Recorder on AIX
   
- changes build system to allow jfr feature on aix
- implements NetworkPerformance, CPUPerformance, and SystemProcess
interfaces from os_perf.hpp
- implements jfr sanity tests

-

Changes: https://git.openjdk.java.net/jdk/pull/6885/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk=6885=07
  Stats: 831 lines in 5 files changed: 151 ins; 514 del; 166 mod
  Patch: https://git.openjdk.java.net/jdk/pull/6885.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/6885/head:pull/6885

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md

2022-01-12 Thread Daniel Jelinski
On Wed, 12 Jan 2022 07:29:33 GMT, Daniel Jelinski  wrote:

> Currently the information about using IDEA can only be found on mailing lists.
> 
> Additionally fixed the documentation for Visual Studio; the target 
> `ide-project` does not exist.

Thanks for all your suggestions. Let me know if the current version is 
acceptable.

Re pandoc, it looks like the Windows version is generating similar output to 
the Linux one, so I think I can handle this. Thanks for the offer.

-

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md [v2]

2022-01-12 Thread Daniel Jelinski
> Currently the information about using IDEA can only be found on mailing lists.
> 
> Additionally fixed the documentation for Visual Studio; the target 
> `ide-project` does not exist.

Daniel Jelinski has updated the pull request incrementally with one additional 
commit since the last revision:

  Improved wording

-

Changes:
  - all: https://git.openjdk.java.net/jdk/pull/7044/files
  - new: https://git.openjdk.java.net/jdk/pull/7044/files/1f4e99ca..b6d81300

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

  Stats: 11 lines in 2 files changed: 1 ins; 1 del; 9 mod
  Patch: https://git.openjdk.java.net/jdk/pull/7044.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/7044/head:pull/7044

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md

2022-01-12 Thread Erik Joelsson
On Wed, 12 Jan 2022 07:29:33 GMT, Daniel Jelinski  wrote:

> Currently the information about using IDEA can only be found on mailing lists.
> 
> Additionally fixed the documentation for Visual Studio; the target 
> `ide-project` does not exist.

Added some suggestions on language.

doc/ide.md line 49:

> 47: 
> 48: The make system can generate a Visual Studio project for a limited subset
> 49: of native sources. After configuring, the project can be generated using:

The limited subset is hotspot, which is a pretty clear separation. 
Suggestion:

The make system can generate a Visual Studio project for the Hotspot 
native source. After configuring, the project is be generated using:

doc/ide.md line 81:

> 79: 
> 80: The JDK project has a script that can be used for indexing the project
> 81: with IntelliJ. After configuring and building the JDK, IntelliJ workspace

Suggestion:

with IntelliJ. After configuring and building the JDK, an IntelliJ workspace

doc/ide.md line 89:

> 87: 
> 88: This creates a subfolder called `.idea` in the current folder. To use it,
> 89: choose `File -> Open...` in IntelliJ and select the folder where you run

Suggestion:

choose `File -> Open...` in IntelliJ and select the folder where you ran

-

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md

2022-01-12 Thread Erik Joelsson
On Wed, 12 Jan 2022 12:17:02 GMT, Lance Andersen  wrote:

> > > (...) As far as I am aware, the ide.html should be generated from the 
> > > ide.md so you should only need to modify ide.md
> > 
> > 
> > Are you sure about this? The discussion on #5676 suggests that the HTML 
> > files need to be modified.
> > I wouldn't mind not having to edit htmls; `make update-build-docs` is 
> > broken on Cygwin, and I had to fix paths in compile commands manually.
> 
> Yes pandoc as far as I am aware should be generating the html so lets wait 
> for Erik to comment as it seems strange to have to do both and would be 
> better to address the issue so only one file needs updated if there is indeed 
> an issue.

You should only manually edit the .md files and then let pandoc generate .html 
files using `make update-build-docs`. Both types of files should then be 
included in the commit. If you have trouble generating .html files this way, 
you will need help from someone who can. Let me know when the textual content 
of this patch is considered final, then I can do it for you if you like.

-

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md

2022-01-12 Thread Lance Andersen
On Wed, 12 Jan 2022 12:10:50 GMT, Daniel Jelinski  wrote:

> > (...) As far as I am aware, the ide.html should be generated from the 
> > ide.md so you should only need to modify ide.md
> 
> Are you sure about this? The discussion on #5676 suggests that the HTML files 
> need to be modified.
> 
> I wouldn't mind not having to edit htmls; `make update-build-docs` is broken 
> on Cygwin, and I had to fix paths in compile commands manually.

Yes pandoc as far as I am aware should be generating the html so lets wait for 
Erik to comment as it seems strange to have to do both and would be better to 
address the issue so only one file needs updated if there is indeed an issue.

-

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md

2022-01-12 Thread Daniel Jelinski
On Wed, 12 Jan 2022 11:55:39 GMT, Lance Andersen  wrote:

> (...) As far as I am aware, the ide.html should be generated from the ide.md 
> so you should only need to modify ide.md

Are you sure about this? The discussion on #5676 suggests that the HTML files 
need to be modified.

I wouldn't mind not having to edit htmls; `make update-build-docs` is broken on 
Cygwin, and I had to fix paths in compile commands manually.

-

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


Re: RFR: 8279877: Document IDEA IDE setup in docs/ide.md

2022-01-12 Thread Lance Andersen
On Wed, 12 Jan 2022 07:29:33 GMT, Daniel Jelinski  wrote:

> Currently the information about using IDEA can only be found on mailing lists.
> 
> Additionally fixed the documentation for Visual Studio; the target 
> `ide-project` does not exist.

Thank you for taking a stab at this.  As far as I am aware, the ide.html should 
be generated from the ide.md so you should only need to modify ide.md

doc/ide.md line 88:

> 86: ```
> 87: 
> 88: This creates a subfolder called `.idea` in the current folder. To use it,

I might consider rewording this.  Typically this is run at the top of the your 
openjdk fork/clone.

-

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


Re: RFR: 8203290: [PPC64, s390] Check functionality of JDK-8199712 (Flight Recorder) [v7]

2022-01-12 Thread Martin Doerr
On Tue, 11 Jan 2022 16:53:05 GMT, Tyler Steele  wrote:

>> Just in time for the holidays I have completed an implementation of the JFR 
>> functionality for AIX. As a side note, this is my first submission to 
>> OpenJDK 
>> 
>> ### Implementation notes and alternatives considered
>> 
>> After modifying the build system to allow the --enable-jvm-feature-jfr to 
>> work on AIX, my task was to implement the interfaces from os_perf.hpp. The 
>> os_perf_aix.cpp implementation that existed was, I believe, a copy of the 
>> Linux implementation. A review of the code in that file showed that 
>> NetworkInterface, CPUPerformanceInterface, and SystemProcessInterface would 
>> require modification to work on AIX. Using the Linux implementation as a 
>> guide, I initially expected to use files from the aix procfs like 
>> /proc//psinfo, and /proc//status in a manner similar to the Linux 
>> implementation. However, I ended up using libperfstat for all functionality 
>> required by the interfaces.
>> 
>> ### Testing
>> 
>> Testing for JFR seems to be quite light in the repo both before and after 
>> this change. In addition to performing manual testing, I have added some 
>> basic sanity checks that ensure events can be created and committed (using 
>> jtreg), and performs some basic checks on the results of the interface 
>> member functions (using gtest).
>> 
>> ### More notes
>> 
>> I've sent an email to the JFR group about a TOC overflow warning I 
>> encountered while building (for the release server target). I believe the 
>> fix is to pass -qpic=large when using the xlc toolchain, but my 
>> modifications to flags-cflags.m4 have not been successful in removing this 
>> warning.
>
> Tyler Steele 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:
> 
>   Clean up & testing
>   
>   - Run JFR tests in test/jdk/jdk/jfr
>   - Fix issues found from above test suite
>   - Remove unecessary jtreg & gtest tests
>   - Remove ineffective `qpic=large`
>   - TODO: jdk/jfr/event/runtime/TestNativeLibrariesEvent.java

The change looks good to me. I only had a quick look at the new os_perf_aix 
implementation, so someone else should serve as 2nd reviewer (no Reviewer 
status required). The old code was a copy from linux as a placeholder. Note 
that we don't build and test on AIX anymore.

-

Marked as reviewed by mdoerr (Reviewer).

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