Re: RFR: 8342938: Problem list java/io/IO/IO.java test on Linux ppc64le

2024-10-25 Thread Lutz Schmidt
On Thu, 24 Oct 2024 09:08:09 GMT, Matthias Baesken  wrote:

> Test java/io/IO/IO.java fails on Linux ppc64le because of issues with 
> 'expect' .

LGTM.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/21678#pullrequestreview-2392339879


Re: RFR: 8340801: Disable ubsan checks in some awt/2d coding [v4]

2024-10-14 Thread Lutz Schmidt
On Fri, 11 Oct 2024 18:05:58 GMT, Kim Barrett  wrote:

>> Matthias Baesken 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 four additional 
>> commits since the last revision:
>> 
>>  - Merge remote-tracking branch 'origin/master' into JDK-8340801
>>  - move ub.h to a better location
>>  - remove ubsan changes from jni_md.h
>>  - JDK-8340801
>
> Not a review, just commenting.
> 
> I very much support the work @MBaesken has done with ubsan in HotSpot.
> There's a bit of a chicken or egg problem with this kind of thing.  ubsan
> isn't really usable and in any way supported or supportable until the code has
> been made pretty much ubsan-clean.  Matthias has made substantial progress
> toward that for HotSpot, and I thank him for this effort.
> 
> There are currently four uses of the disabling attribute in HotSpot.  Two are
> for intentional things (writing to address zero intentionally, for testing
> signal handling and the like).  One is for a known issue that is being worked
> on, with an associated JBS issue; the attribute is being used to reduce
> testing noise in the meantime.  The fourth is related to some of my recent
> work (adjacent to, not caused by), and something that I think ought to be
> fixed.  I'll be filing a JBS issue.  Along the way there have been a
> substantial number of real bugs uncovered and addressed.
> 
> My only complaint has been a tendency to be a bit too quick to reach for the
> disabling attribute, without sufficient analysis and attempt to resolve in a
> way that corrects the problem.  Of the issues I've observed, the result of a
> real fix nearly always ben a straight-up improvement.

I agree with @kimbarrett in his fear that a convenience macro may lower the 
hurdle of just suppressing an ubsan complaint. On the other hand, using a macro 
makes the code look cleaner. Should there ever be a need to change how ubsan is 
quiesced, it can be done at one place with the use of a macro. I therefore will 
give the change a LGTM.

-

PR Comment: https://git.openjdk.org/jdk/pull/21184#issuecomment-2410653806


Re: RFR: 8340801: Disable ubsan checks in some awt/2d coding [v4]

2024-10-14 Thread Lutz Schmidt
On Wed, 9 Oct 2024 07:50:20 GMT, Matthias Baesken  wrote:

>> There is some old awt/2d coding where warnings occur when running with ubsan 
>> enabled binaries.
>> However at most of these locations the coding should work (at least on our 
>> supported platform set) so the warnings can be disabled at least for now.
>> 
>> The change adds a macro ATTRIBUTE_NO_UBSAN  similar to what we already use 
>> in Hotspot coding.
>
> Matthias Baesken 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 four additional 
> commits since the last revision:
> 
>  - Merge remote-tracking branch 'origin/master' into JDK-8340801
>  - move ub.h to a better location
>  - remove ubsan changes from jni_md.h
>  - JDK-8340801

Marked as reviewed by lucy (Reviewer).

-

PR Review: https://git.openjdk.org/jdk/pull/21184#pullrequestreview-2366001983


Re: RFR: 8341722: Fix some warnings as errors when building on Linux with toolchain clang [v2]

2024-10-09 Thread Lutz Schmidt
On Wed, 9 Oct 2024 11:44:35 GMT, Matthias Baesken  wrote:

>> There are a few warnings as errors occurring when building on Linux with 
>> clang (clang15). Mostly these are some kind of 'unused' warnings.
>> Might be related to https://bugs.openjdk.org/browse/JDK-8339156 .
>
> Matthias Baesken has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   adjust gcc warning settings; bring back rslt

LGTM.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/21407#pullrequestreview-2359153153


Re: RFR: 8339980: [s390x] ProblemList jdk/java/util/zip/CloseInflaterDeflaterTest.java

2024-09-18 Thread Lutz Schmidt
On Thu, 12 Sep 2024 05:12:18 GMT, Amit Kumar  wrote:

> This PR will ProblemList `jdk/java/util/zip/CloseInflaterDeflaterTest.java` 
> on s390x. This change should be reverted while fixing 
> [JDK-8339216](https://bugs.openjdk.org/browse/JDK-8339216).

Looks good. And trivial.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/20960#pullrequestreview-2312744653


Re: RFR: 8339487: ProcessHandleImpl os_getChildren sysctl call - retry in case of ENOMEM and enhance exception message [v4]

2024-09-09 Thread Lutz Schmidt
On Mon, 9 Sep 2024 07:06:22 GMT, Matthias Baesken  wrote:

>> When running jtreg test java/lang/ProcessHandle/PermissionTest.java on 
>> macOS, a few times this error occurs :
>> 
>> java.lang.RuntimeException: Cannot allocate memory
>>at java.base/java.lang.ProcessHandleImpl.getProcessPids0(Native 
>> Method)
>>at 
>> java.base/java.lang.ProcessHandleImpl.children(ProcessHandleImpl.java:456)
>>at 
>> java.base/java.lang.ProcessHandleImpl.children(ProcessHandleImpl.java:434)
>>at PermissionTest.childrenWithPermission(PermissionTest.java:84)
>>at 
>> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>>at java.base/java.lang.reflect.Method.invoke(Method.java:573)
>>at 
>> org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:132)
>>at org.testng.internal.TestInvoker.invokeMethod(TestInvoker.java:599)
>>at 
>> org.testng.internal.TestInvoker.invokeTestMethod(TestInvoker.java:174)
>>at 
>> org.testng.internal.MethodRunner.runInSequence(MethodRunner.java:46)
>>at 
>> org.testng.internal.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:822)
>>at 
>> org.testng.internal.TestInvoker.invokeTestMethods(TestInvoker.java:147)
>>at 
>> org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
>>at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:128)
>>at java.base/java.util.ArrayList.forEach(ArrayList.java:1597)
>> 
>> 
>> Probably sysctl fails here, but it is not fully clear; it would help to 
>> change the exception so that the standard text is shown too in the exception 
>> message.
>
> Matthias Baesken has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   fix typo

Still looking good.

-

PR Review: https://git.openjdk.org/jdk/pull/20839#pullrequestreview-2289129121


Re: RFR: 8339487: ProcessHandleImpl native exceptions - include message text and last error information

2024-09-04 Thread Lutz Schmidt
On Tue, 3 Sep 2024 14:09:23 GMT, Matthias Baesken  wrote:

> When running jtreg test java/lang/ProcessHandle/PermissionTest.java on macOS, 
> a few times this error occurs :
> 
> java.lang.RuntimeException: Cannot allocate memory
>at java.base/java.lang.ProcessHandleImpl.getProcessPids0(Native Method)
>at 
> java.base/java.lang.ProcessHandleImpl.children(ProcessHandleImpl.java:456)
>at 
> java.base/java.lang.ProcessHandleImpl.children(ProcessHandleImpl.java:434)
>at PermissionTest.childrenWithPermission(PermissionTest.java:84)
>at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>at java.base/java.lang.reflect.Method.invoke(Method.java:573)
>at 
> org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:132)
>at org.testng.internal.TestInvoker.invokeMethod(TestInvoker.java:599)
>at 
> org.testng.internal.TestInvoker.invokeTestMethod(TestInvoker.java:174)
>at org.testng.internal.MethodRunner.runInSequence(MethodRunner.java:46)
>at 
> org.testng.internal.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:822)
>at 
> org.testng.internal.TestInvoker.invokeTestMethods(TestInvoker.java:147)
>at 
> org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
>at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:128)
>at java.base/java.util.ArrayList.forEach(ArrayList.java:1597)
> 
> 
> Probably sysctl fails here, but it is not fully clear; it would help to 
> change the exception so that the standard text is shown too in the exception 
> message.

LGTM.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/20839#pullrequestreview-2279640921


Re: RFR: 8330615: avoid signed integer overflows in zip_util.c readCen / hashN

2024-04-24 Thread Lutz Schmidt
On Tue, 23 Apr 2024 07:51:28 GMT, Matthias Baesken  wrote:

> In the hashN usages of readCen from zip_util.c we see a lot of signed integer 
> overflows.
> For example in the java/util jtreg tests those are easily reproducable when 
> compiling with -ftrapv (clang/gcc toolchains).
> While those overflows never seem to cause crashes or similar errors, they are 
> unwanted because
> signed integer overflows in C cause undefined behavior.
> See
> https://www.gnu.org/software/c-intro-and-ref/manual/html_node/Signed-Overflow.html
>>
>> For signed integers, the result of overflow in C is in principle undefined, 
>> meaning that anything whatsoever could happen.
>> Therefore, C compilers can do optimizations that treat the overflow case 
>> with total unconcern.
> 
> So we might still get unwanted results (maybe bad/strange hashing, depending 
> on compiler and optimization level).
> 
> Compilation with -ftrapv causes/triggers this SIGILL on macOS showing the 
> issue :
> # Problematic frame:
> # C [libzip.dylib+0x6362] hashN+0x32
> #
> 
> Stack: [0x7c496000,0x7c596000], sp=0x7c5957e0, free 
> space=1021k
> Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native 
> code)
> C [libzip.dylib+0x6362] hashN+0x32
> C [libzip.dylib+0x5d5e] readCEN+0xd2e
> C [libzip.dylib+0x4ee0] ZIP_Put_In_Cache0+0x160
> V [libjvm.dylib+0x544b1e] ClassLoader::open_zip_file(char const*, char**, 
> JavaThread*)+0x3e
> V [libjvm.dylib+0x543fec] ClassLoader::create_class_path_entry(JavaThread*, 
> char const*, stat const*, bool, bool)+0x6c
> V [libjvm.dylib+0x543833] 
> ClassLoader::setup_bootstrap_search_path_impl(JavaThread*, char const*)+0xf3
> V [libjvm.dylib+0x54819b] classLoader_init1()+0x1b
> V [libjvm.dylib+0x92602a] init_globals()+0x3a
> V [libjvm.dylib+0x12b3b74] Threads::create_vm(JavaVMInitArgs*, bool*)+0x314
> V [libjvm.dylib+0xa848f4] JNI_CreateJavaVM+0x64
> C [libjli.dylib+0x4483] JavaMain+0x123
> C [libjli.dylib+0x7529] ThreadJavaMain+0x9
> C [libsystem_pthread.dylib+0x68fc] _pthread_start+0xe0
> C [libsystem_pthread.dylib+0x2443] thread_start+0xf

LGTM.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/18908#pullrequestreview-2019585061


Re: [jdk22] RFR: 8319128: sun/security/pkcs11 tests fail on OL 7.9 aarch64

2024-01-24 Thread Lutz Schmidt
On Tue, 23 Jan 2024 10:21:42 GMT, Goetz Lindenmaier  wrote:

> I backport this to fix this issue in 22. We see it failing there in our CI.

Looks good.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk22/pull/95#pullrequestreview-1841351221


Re: RFR: 8318705: [macos] ProblemList java/rmi/registry/multipleRegistries/MultipleRegistries.java

2023-10-24 Thread Lutz Schmidt
On Tue, 24 Oct 2023 09:51:20 GMT, Goetz Lindenmaier  wrote:

> …tipleRegistries.java
> 
> The test fails in our CI with the message listed here. We see both, aarch and 
> x86_64. It happens rarely, but a long time back.

LGTM.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/16341#pullrequestreview-1694866872


Re: RFR: 8254693: Add Panama feature to pass heap segments to native code [v10]

2023-10-20 Thread Lutz Schmidt
On Fri, 20 Oct 2023 08:38:22 GMT, Jorn Vernee  wrote:

>> Add the ability to pass heap segments to native code. This requires using 
>> `Linker.Option.critical(true)` as a linker option. It has the same 
>> limitations as normal critical calls, namely: upcalls into Java are not 
>> allowed, and the native function should return relatively quickly. Heap 
>> segments are exposed to native code through temporary native addresses that 
>> are valid for the duration of the native call.
>> 
>> The motivation for this is supporting existing Java array-based APIs that 
>> might have to pass multi-megabyte size arrays to native code, and are 
>> current relying on Get-/ReleasePrimitiveArrayCritical from JNI. Where making 
>> a copy of the array would be overly prohibitive.
>> 
>> Components of this patch:
>> 
>> - New binding operator `SegmentBase`, which gets the base object of a 
>> `MemorySegment`.
>> - Rename `UnboxAddress` to `SegmentOffset`. Add flag to specify whether 
>> processing heap segments should be allowed.
>> - `CallArranger` impls use new binding operators when 
>> `Linker.Option.critical(/* allowHeap= */ true)` is specified.
>> - `NativeMethodHandle`/`NativeEntryPoint` allow `Object` in their signatures.
>> - The object/oop + offset is exposed as temporary address to native code.
>> - Since we stay in the `_thread_in_Java` state, we can safely expose the 
>> oops passed to the downcall stub to native code, without needing GCLocker. 
>> These oops are valid until we poll for safepoint, which we never do 
>> (invoking pure native code).
>> - Only x64 and AArch64 for now.
>> - I've refactored `ArgumentShuffle` in the C++ code to no longer rely on 
>> callbacks to get the set of source and destination registers (using 
>> `CallingConventionClosure`), but instead just rely on 2 equal size arrays 
>> with source and destination registers. This allows filtering the input java 
>> registers before passing them to `ArgumentShuffle`, which is required to 
>> filter out registers holding segment offsets. Replacing placeholder 
>> registers is also done as a separate pre-processing step now. See changes 
>> in: 
>> https://github.com/openjdk/jdk/pull/16201/commits/d2b40f1117d63cc6d74e377bf88cdcf6d15ff866
>> - I've factored out `DowncallStubGenerator` in the x64 and AArch64 code to 
>> use a common `DowncallLinker::StubGenerator`.
>> - Fallback linker is also supported using JNI's 
>> `GetPrimitiveArrayCritical`/`ReleasePrimitiveArrayCritical`
>> 
>> Aside: fixed existing issue with `DowncallLinker` not properly acquiring 
>> segments in interpreted mode.
>> 
>> Numbers for the included benchmark on my machine are:
>> 
>> 
>> Benchmar...
>
> Jorn Vernee has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   bump up argument counts in TestLargeStub to their maximum

s390 part looks good now. 
I did not check the shared code nor the other CPU architectures.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/16201#pullrequestreview-1690103693


Re: RFR: 8254693: Add Panama feature to pass heap segments to native code [v6]

2023-10-19 Thread Lutz Schmidt
On Wed, 18 Oct 2023 17:04:52 GMT, Sidraya Jayagond  
wrote:

>> Jorn Vernee has updated the pull request incrementally with two additional 
>> commits since the last revision:
>> 
>>  - add PPC impl
>>  - add missing file
>
> Add s390x port from here
> [S390x_Panama_heap_segments.txt](https://github.com/openjdk/jdk/files/13031418/S390x_Panama_heap_segments.txt)
> 
> All tests are passing on linux S390x. One single test case is failing on Big 
> Endian:
> test TestLayoutPaths.testBadAlignmentOfRoot(): failure. Similar to PPC Big 
> Endian.

@sid8606 You may want to have a look at my s390 comments.

-

PR Comment: https://git.openjdk.org/jdk/pull/16201#issuecomment-1771020553


Re: RFR: 8254693: Add Panama feature to pass heap segments to native code [v7]

2023-10-19 Thread Lutz Schmidt
On Wed, 18 Oct 2023 17:38:24 GMT, Jorn Vernee  wrote:

>> Add the ability to pass heap segments to native code. This requires using 
>> `Linker.Option.critical(true)` as a linker option. It has the same 
>> limitations as normal critical calls, namely: upcalls into Java are not 
>> allowed, and the native function should return relatively quickly. Heap 
>> segments are exposed to native code through temporary native addresses that 
>> are valid for the duration of the native call.
>> 
>> The motivation for this is supporting existing Java array-based APIs that 
>> might have to pass multi-megabyte size arrays to native code, and are 
>> current relying on Get-/ReleasePrimitiveArrayCritical from JNI. Where making 
>> a copy of the array would be overly prohibitive.
>> 
>> Components of this patch:
>> 
>> - New binding operator `SegmentBase`, which gets the base object of a 
>> `MemorySegment`.
>> - Rename `UnboxAddress` to `SegmentOffset`. Add flag to specify whether 
>> processing heap segments should be allowed.
>> - `CallArranger` impls use new binding operators when 
>> `Linker.Option.critical(/* allowHeap= */ true)` is specified.
>> - `NativeMethodHandle`/`NativeEntryPoint` allow `Object` in their signatures.
>> - The object/oop + offset is exposed as temporary address to native code.
>> - Since we stay in the `_thread_in_Java` state, we can safely expose the 
>> oops passed to the downcall stub to native code, without needing GCLocker. 
>> These oops are valid until we poll for safepoint, which we never do 
>> (invoking pure native code).
>> - Only x64 and AArch64 for now.
>> - I've refactored `ArgumentShuffle` in the C++ code to no longer rely on 
>> callbacks to get the set of source and destination registers (using 
>> `CallingConventionClosure`), but instead just rely on 2 equal size arrays 
>> with source and destination registers. This allows filtering the input java 
>> registers before passing them to `ArgumentShuffle`, which is required to 
>> filter out registers holding segment offsets. Replacing placeholder 
>> registers is also done as a separate pre-processing step now. See changes 
>> in: 
>> https://github.com/openjdk/jdk/pull/16201/commits/d2b40f1117d63cc6d74e377bf88cdcf6d15ff866
>> - I've factored out `DowncallStubGenerator` in the x64 and AArch64 code to 
>> use a common `DowncallLinker::StubGenerator`.
>> - Fallback linker is also supported using JNI's 
>> `GetPrimitiveArrayCritical`/`ReleasePrimitiveArrayCritical`
>> 
>> Aside: fixed existing issue with `DowncallLinker` not properly acquiring 
>> segments in interpreted mode.
>> 
>> Numbers for the included benchmark on my machine are:
>> 
>> 
>> Benchmar...
>
> Jorn Vernee has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   add s390 support

See inline comments for s390 part.
I didn't review all the other code.

src/hotspot/cpu/s390/downcallLinker_s390.cpp line 100:

> 98:   Address offset_addr(callerSP, FP_BIAS + reg_offset.offset());
> 99:   __ mem2reg_opt(r_tmp1, offset_addr, true);
> 100:   __ z_agr(reg_oop_reg, r_tmp1);

Please note that s390 is a CISC architecture. It provides instructions for 
almost everything. :-)
Here, I would suggest to add the offset to reg_oop_reg directly from memory - 
without first loading the offset into a temp register (that is RISC style). 
It's shorter and faster:
`  __ z_ag(reg_oop_reg, offset_addr);`

src/hotspot/cpu/s390/downcallLinker_s390.cpp line 112:

> 110: __ mem2reg_opt(r_tmp2, oop_addr, true);
> 111: __ z_agr(r_tmp1, r_tmp2);
> 112: __ reg2mem_opt(r_tmp1, oop_addr, true);

Similar to above. You need to load only one operand into a register.

  __ mem2reg_opt(r_tmp2, oop_addr, true);
  __ z_ag(r_tmp2, offset_addr);
  __ reg2mem_opt(r_tmp2, oop_addr, true);

-

Changes requested by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/16201#pullrequestreview-1687765628
PR Review Comment: https://git.openjdk.org/jdk/pull/16201#discussion_r1365554460
PR Review Comment: https://git.openjdk.org/jdk/pull/16201#discussion_r1365560688


Re: RFR: JDK-8315751: RandomTestBsi1999 fails often with timeouts on Linux ppc64le

2023-09-07 Thread Lutz Schmidt
On Wed, 6 Sep 2023 14:47:20 GMT, Matthias Baesken  wrote:

> The test RandomTestBsi1999 fails often with timeouts on Linux ppc64le; even 
> when it succeeds the test takes a lot of time and is close to timing out. 
> Probably we should increase the timeout value for this test.

Looks good.

-

PR Review: https://git.openjdk.org/jdk/pull/15594#pullrequestreview-1614961811


Re: RFR: JDK-8314121: test tools/jpackage/share/RuntimePackageTest.java#id0 fails on RHEL8

2023-09-05 Thread Lutz Schmidt
On Fri, 1 Sep 2023 07:22:12 GMT, Matthias Baesken  wrote:

> on some RHEL Linux 8.X machines , we run into errors in test 
> tools/jpackage/share/RuntimePackageTest.java#id0 , error can be seen below.
> It looks like these errors occur when running the jtreg tests with higher 
> concurrency, I did not see them when running just the single test.
> 
> When adding some test output , we see the 2 top install dirs below (1 is 
> expected, not 2) :
> ./test/unpacked-rpm/opt
> ./test/unpacked-rpm/usr
> 
> error output :
> 
> java.lang.AssertionError: Expected [1]. Actual [2]: Check the package has 1 
> top installation directories
>at jdk.jpackage.test.TKit.error(TKit.java:273)
>at jdk.jpackage.test.TKit.assertEquals(TKit.java:576)
>at 
> jdk.jpackage.test.PackageTest$Handler.verifyRootCountInUnpackedPackage(PackageTest.java:705)
>at 
> jdk.jpackage.test.PackageTest$Handler.lambda$verifyPackageInstalled$3(PackageTest.java:635)
>at java.base/java.util.Optional.ifPresent(Optional.java:178)
>at 
> jdk.jpackage.test.PackageTest$Handler.verifyPackageInstalled(PackageTest.java:633)
>at jdk.jpackage.test.PackageTest$Handler.accept(PackageTest.java:592)
>at jdk.jpackage.test.PackageTest$2.accept(PackageTest.java:504)
>at jdk.jpackage.test.PackageTest$2.accept(PackageTest.java:411)
>at 
> jdk.jpackage.test.Functional$ThrowingConsumer.lambda$toConsumer$0(Functional.java:41)
>at java.base/java.lang.Iterable.forEach(Iterable.java:75)
>at 
> jdk.jpackage.test.PackageTest.lambda$runActions$24(PackageTest.java:381)
>at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
>at 
> jdk.jpackage.test.PackageTest.lambda$runActions$25(PackageTest.java:380)
>at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
>at jdk.jpackage.test.PackageTest.runActions(PackageTest.java:379)
>at 
> jdk.jpackage.test.RunnablePackageTest.run(RunnablePackageTest.java:58)
>at RuntimePackageTest.test(RuntimePackageTest.java:83)
>at 
> java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
>at java.base/java.lang.reflect.Method.invoke(Method.java:580)
>at jdk.jpackage.test.MethodCall.accept(MethodCall.java:145)
>at jdk.jpackage.test.TestInstance.run(TestInstance.java:230)
>at jdk.jpackage.test.TKit.lambda$ignoreExceptions$5(TKit.java:141)
>at jdk.jpackage.test.TKit.lambda$runTests$3(TKit.java:126)
>at 
> java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708)
>at java.base/jav...

LGTM.
Thanks for fixing. The add'l output doesn't fix anything, but may be helpful in 
the future.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/15528#pullrequestreview-1610495096


Re: RFR: JDK-8310380: Handle problems in core-related tests on macOS when codesign tool does not work

2023-06-21 Thread Lutz Schmidt
On Tue, 20 Jun 2023 13:23:16 GMT, Matthias Baesken  wrote:

> Currently, a number of tests fail on macOS because they miss the core file 
> (e.g. serviceability/sa/TestJmapCore.java).
> The reason is that configure detects on some setups that codesign does not 
> work ("checking if debug mode codesign is possible... no) .
> So adding the needed entitlement to generate cores is not done in the build. 
> This is currently not checked later in the tests.
> But without the entitlement, a core is not generated.

LGTM.
Thanks for enhancing test analysis.

-

Marked as reviewed by lucy (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/14562#pullrequestreview-1491050558


Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v10]

2023-04-12 Thread Lutz Schmidt
On Wed, 12 Apr 2023 03:44:45 GMT, Amit Kumar  wrote:

> Another remark: Old JDK on s390 used "os.arch = zArch_64", current one 
> "os.arch = s390x". @offamitkumar: You probably want to take a look.

zArch_64 is not relevant/not used in the OpenJDK port to IBM System z. As noted 
elsewhere in the PR, it's the architecture name that was used in the initial, 
proprietary port by SAP. I found just one occurrence of the string in the head 
revision, and that was in test/lib/jdk/test/lib/Platform.java.

-

PR Comment: https://git.openjdk.org/jdk/pull/13357#issuecomment-1505110504


Re: RFR: 8304915: Create jdk.internal.util.Architecture enum and apply [v7]

2023-04-07 Thread Lutz Schmidt
On Fri, 7 Apr 2023 11:21:33 GMT, Thomas Stuefe  wrote:

>> Hello Thomas, that change was based on the review comment here 
>> https://github.com/openjdk/jdk/pull/13357#discussion_r1159810942
>
> Okay, Lutz is the expert here. Sorry for the noise.

Just to let my voice be heard directly after being cited several times: s390 is 
used to designate the CPU architecture. The arch-specific files are stored in 
src/hotspot/cpu/s390 for that reason. Back in the days when SAP contributed the 
s390 port, there was a discussion which architecture name to use. SAP had used 
zArch_64 which more closely reflects what the port really is (a 64-bit only 
port to IBM's z/Architecture). It was a majority decision to use s390 for some 
historic reasons (I don't remember exactly anymore).

s390x is (almost) always used in conjunction with a Linux OS port. In that 
respect, linuxs390x is a tautology. OpenJDK does not use this tautology, see 
src/hotspot/os_cpu/linux_s390 for example.

-

PR Review Comment: https://git.openjdk.org/jdk/pull/13357#discussion_r1160657249


Re: RFR: JDK-8293659: Improve UnsatisfiedLinkError error message to include dlopen error details [v2]

2022-09-21 Thread Lutz Schmidt
On Fri, 16 Sep 2022 07:27:44 GMT, Matthias Baesken  wrote:

>> When trying to load a x64 lib on macOS aarch64 one got previously this 
>> detailed message before 
>> [JDK-8275703](https://bugs.openjdk.org/browse/JDK-8275703):
>> 
>> java.lang.UnsatisfiedLinkError: /testing/jco3/macOsx64/libsapjco3.dylib: 
>> dlopen(/testing/jco3/macOsx64/libsapjco3.dylib, 1): no suitable image found. 
>> Did find:
>
> Matthias Baesken has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   Adjust throwExceptionIfFail

Changes look good to me.

-

Marked as reviewed by lucy (Reviewer).

PR: https://git.openjdk.org/jdk/pull/10286