RFR: 8305669: RuntimeException when running benchmarks through make on Windows/WSL [v2]
Chen Liang
liach at openjdk.org
Tue May 9 18:56:25 UTC 2023
On Mon, 8 May 2023 20:05:50 GMT, Chen Liang <liach at openjdk.org> wrote:
>> This patch replaces `FIXPATH` with `FixPath` on individual path argumenets. The root cause might be that JMH requires passing VM args to benchmarks in quotes, which might have triggered incorrect detections in `FIXPATH` (as in comparison, `$1_MICRO_JAVA_OPTIONS += --add-opens=java.base/java.io=ALL-UNNAMED` right above this patch seems to work fine)
>> Also removed a useless and wrong Java flag to the java running javac, originally intended to enable running `make test TEST="loom.obsolete"` benchmarks.
>>
>> Since I only have a windows cygwin environment, I am not quite sure if this works elsewhere.
>
> Chen Liang 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 six additional commits since the last revision:
>
> - Comment about the fix logic
> We have a mix and match of spaces and tabs, might need to fix it later
> - Is this the right way instead?
> - space fails linux
> - Expose fixpath import and let jmh run use it
> - Merge branch 'master' into jmh-windows
> - 8305669: RuntimeException when running benchmarks through make on Windows/WSL
Thanks for the conclusions. A quick peek into the benchmarks show there are currently three types of exports/opens:
1. java.io opens, present since the beginning of the benchmark suite
2. classfile and asm opens for the Class-File API benchmarks
3. jdk.internal.vm for a few loom benchmarks, added incorrectly to javac's vm args upon loom integration
The latter two cases are easy to take care of; loom one is used by some of those deprecated benchmarks. I don't know where the first java.io opens is required and might need others help to investigate that.
In addition, I think users can still pass in `--add-exports` and `--add-opens` with `MICRO_JAVA_OPTIONS` from test arguments, which may still get FixPath'd and break. If that is the case, this patch would still have some value.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/13550#issuecomment-1540723084
More information about the build-dev
mailing list