On Wed, 22 Jan 2025 08:30:16 GMT, Richard Reingruber wrote:
> Hi all,
>
> I would like to backport the test-fix from commit
> [15d6469e](https://github.com/openjdk/jdk/commit/15d6469e8da635364c0ba83e425fd149c2d69495)
> from the [openjdk/jdk](https://git.openjdk.org/jdk) re
.
The commit being backported was authored by Richard Reingruber on 22 Jan 2025
and was reviewed by Christoph Langer, Matthias Baesken and Martin Doerr.
Thanks, Richard.
-
Commit messages:
- Backport 15d6469e8da635364c0ba83e425fd149c2d69495
Changes: https://git.openjdk.org/jdk/pull
On Wed, 15 Jan 2025 14:14:37 GMT, Richard Reingruber wrote:
> This PR reverts the fix from
> [JDK-8339166](https://bugs.openjdk.org/browse/JDK-8339166) because it
> increases the runtime of the test a lot.
> Instead a full gc is requested via the whitebox api. This solves the is
On Tue, 21 Jan 2025 08:14:22 GMT, Matthias Baesken wrote:
> LGTM; probably you do not need 2000 iterations now with the full GC, a
> smaller number would do as well, correct ? But it is okay for me as it is.
Thanks for reviewing. I've tried 1000 iterations but the runtime hardly changed
so I r
This PR reverts the fix from
[JDK-8339166](https://bugs.openjdk.org/browse/JDK-8339166) because it increases
the runtime of the test a lot.
Instead a full gc is requested via the whitebox api. This solves the issues
(see bug description) and it is also clearer and more reliable that allocating
On Thu, 29 Aug 2024 15:52:41 GMT, Claes Redestad wrote:
> LGTM. On my M1 MacBook this increase total runtime of `make test
> TEST=.../HiddenClassUnloading.java` by 8-9s, which seems acceptable to ensure
> it's stable and fit for purpose on all platforms.
@cl4es in my tests with a fastdebug bui
On Mon, 28 Oct 2024 13:08:37 GMT, Richard Reingruber wrote:
>> This is the implementation of JEP 491: Synchronize Virtual Threads without
>> Pinning. See [JEP 491](https://bugs.openjdk.org/browse/JDK-8337395) for
>> further details.
>>
>> In order to make the
On Thu, 17 Oct 2024 14:28:30 GMT, Patricio Chilano Mateo
wrote:
> This is the implementation of JEP 491: Synchronize Virtual Threads without
> Pinning. See [JEP 491](https://bugs.openjdk.org/browse/JDK-8337395) for
> further details.
>
> In order to make the code review easier the changes hav
On Sat, 26 Oct 2024 01:40:41 GMT, Dean Long wrote:
>> This is the implementation of JEP 491: Synchronize Virtual Threads without
>> Pinning. See [JEP 491](https://bugs.openjdk.org/browse/JDK-8337395) for
>> further details.
>>
>> In order to make the code review easier the changes have been sp
On Fri, 25 Oct 2024 21:33:24 GMT, Patricio Chilano Mateo
wrote:
>> This is the implementation of JEP 491: Synchronize Virtual Threads without
>> Pinning. See [JEP 491](https://bugs.openjdk.org/browse/JDK-8337395) for
>> further details.
>>
>> In order to make the code review easier the change
On Mon, 28 Oct 2024 13:08:37 GMT, Richard Reingruber wrote:
>> Patricio Chilano Mateo has updated the pull request incrementally with two
>> additional commits since the last revision:
>>
>> - Restore use of atPointA in test StopThreadTest.java
>> - r
On Fri, 25 Oct 2024 21:33:24 GMT, Patricio Chilano Mateo
wrote:
>> This is the implementation of JEP 491: Synchronize Virtual Threads without
>> Pinning. See [JEP 491](https://bugs.openjdk.org/browse/JDK-8337395) for
>> further details.
>>
>> In order to make the code review easier the change
On Sat, 26 Oct 2024 01:54:26 GMT, Dean Long wrote:
>> Patricio Chilano Mateo has updated the pull request incrementally with two
>> additional commits since the last revision:
>>
>> - Restore use of atPointA in test StopThreadTest.java
>> - remove interruptible check from conditional in Objec
On Sat, 26 Oct 2024 01:42:17 GMT, Dean Long wrote:
>> Patricio Chilano Mateo has updated the pull request incrementally with two
>> additional commits since the last revision:
>>
>> - Restore use of atPointA in test StopThreadTest.java
>> - remove interruptible check from conditional in Objec
On Sat, 26 Oct 2024 01:40:41 GMT, Dean Long wrote:
>> Patricio Chilano Mateo has updated the pull request incrementally with two
>> additional commits since the last revision:
>>
>> - Restore use of atPointA in test StopThreadTest.java
>> - remove interruptible check from conditional in Objec
On Wed, 23 Oct 2024 00:35:06 GMT, Patricio Chilano Mateo
wrote:
>> This is the implementation of JEP 491: Synchronize Virtual Threads without
>> Pinning. See [JEP 491](https://bugs.openjdk.org/browse/JDK-8337395) for
>> further details.
>>
>> In order to make the code review easier the change
On Tue, 25 Jun 2024 09:36:37 GMT, Adam Sotona wrote:
>> After JDK-8294960 is java.lang.invoke.ClassSpecializer using lamdas for code
>> generation and unfortunately it causes StackOverflow on BigEndian platforms.
>>
>> This patch converts all lambdas in ClassSpecializer into anonymous inner
>>
On Mon, 24 Jun 2024 22:11:55 GMT, Richard Reingruber wrote:
>> After JDK-8294960 is java.lang.invoke.ClassSpecializer using lamdas for code
>> generation and unfortunately it causes StackOverflow on BigEndian platforms.
>>
>> This patch converts all lambdas in ClassSp
On Mon, 24 Jun 2024 16:01:41 GMT, Adam Sotona wrote:
> After JDK-8294960 is java.lang.invoke.ClassSpecializer using lamdas for code
> generation and unfortunately it causes StackOverflow on BigEndian platforms.
>
> This patch converts all lambdas in ClassSpecializer into anonymous inner
> clas
On Thu, 15 Feb 2024 13:35:24 GMT, Richard Reingruber wrote:
>> Set `interrupted` in `Thread::interrupt` before reading `nioBlocker` for
>> correct (Dekker scheme) synchronization with concurrent execution of
>> [`AbstractInterruptibleChannel::begin`](https://github.co
On Tue, 16 Jan 2024 10:57:46 GMT, Richard Reingruber wrote:
> Set `interrupted` in `Thread::interrupt` before reading `nioBlocker` for
> correct (Dekker scheme) synchronization with concurrent execution of
> [`AbstractInterruptibleChannel::begin`](https://github.com/openjdk
th fastdebug and release builds on the main platforms and
> also on Linux/PPC64le and AIX.
Richard Reingruber 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 reques
th fastdebug and release builds on the main platforms and
> also on Linux/PPC64le and AIX.
Richard Reingruber 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 requ
On Fri, 19 Jan 2024 07:57:36 GMT, Alan Bateman wrote:
> > I noticed that VirtualThread overrides `isInterrupted`
> > Is there a reason to have this override?
>
> It was necessary at one point but no reason to now except to keep it close at
> the source level with the other methods that access t
On Wed, 17 Jan 2024 15:38:22 GMT, Richard Reingruber wrote:
>> Set `interrupted` in `Thread::interrupt` before reading `nioBlocker` for
>> correct (Dekker scheme) synchronization with concurrent execution of
>> [`AbstractInterruptibleChannel::begin`](https://github.co
On Thu, 18 Jan 2024 08:32:02 GMT, Alan Bateman wrote:
>> src/java.base/share/classes/java/lang/Thread.java line 1709:
>>
>>> 1707: // Setting the interrupt status must be done before reading
>>> nioBlocker.
>>> 1708: interrupted = true;
>>> 1709: interrupt0(); // inform
On Wed, 17 Jan 2024 21:18:27 GMT, Christoph Langer wrote:
>> Richard Reingruber has updated the pull request incrementally with one
>> additional commit since the last revision:
>>
>> Review Alan
>
> test/jdk/java/nio/channels/Selector/LotsOfInterrupts
On Wed, 17 Jan 2024 15:38:22 GMT, Richard Reingruber wrote:
>> Set `interrupted` in `Thread::interrupt` before reading `nioBlocker` for
>> correct (Dekker scheme) synchronization with concurrent execution of
>> [`AbstractInterruptibleChannel::begin`](https://github.co
th fastdebug and release builds on the main platforms and
> also on Linux/PPC64le and AIX.
Richard Reingruber has updated the pull request incrementally with one
additional commit since the last revision:
Review Alan
-
Changes:
- all: https://git.openjdk.org/jdk/pull
Set `interrupted` in `Thread::interrupt` before reading `nioBlocker` for
correct (Dekker scheme) synchronization with concurrent execution of
[`AbstractInterruptibleChannel::begin`](https://github.com/openjdk/jdk/blob/59062402b9c5ed5612a13c1c40eb22cf1b97c41a/src/java.base/share/classes/java/nio/c
On Tue, 16 Jan 2024 10:57:46 GMT, Richard Reingruber wrote:
> Set `interrupted` in `Thread::interrupt` before reading `nioBlocker` for
> correct (Dekker scheme) synchronization with concurrent execution of
> [`AbstractInterruptibleChannel::begin`](https://github.com/openjdk
On Tue, 23 May 2023 15:21:02 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Tue, 23 May 2023 12:26:52 GMT, Martin Doerr wrote:
> I believe omitting the PSA is wrong for varargs, but we don't have this
> information in the backend.
It is clearly wrong.
> So, I think we should simply not optimize it.
Already agreed for this version.
> Reserving 64 Byte stack space
On Mon, 22 May 2023 22:44:41 GMT, Martin Doerr wrote:
> Thanks for publishing our discussion, here. The unnecessary PSA affects other
> areas of hotspot much more than Panama. Yes, we should file an RFE. I think
> one for hotspot is sufficient as the downcall stub is part of it. I don't
> thin
On Tue, 23 May 2023 07:37:37 GMT, Richard Reingruber wrote:
>> Martin Doerr has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Parameter Save Area is the correct name.
>
> src/hotspot/cpu/ppc/downcallLink
On Mon, 22 May 2023 22:29:18 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Mon, 22 May 2023 16:06:02 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Mon, 22 May 2023 21:36:12 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Mon, 22 May 2023 14:09:22 GMT, Martin Doerr wrote:
>> Yes, good idea.
>
> Please take a look at
> https://github.com/openjdk/jdk/pull/12708/commits/70736be631e4f1bf3fd3c0d45ddfc076b74ef9dd
It looks good.
-
PR Review Comment: https://git.openjdk.org/jdk/pull/12708#discussion_r12
On Mon, 22 May 2023 13:42:27 GMT, Martin Doerr wrote:
>> Probably, yes. I didn't find time for figuring out what would be useful
>> tests. We could still add some in the future or with the big endian port.
>> Another idea: Would the following be better?
>> `final boolean useABIv2 = (this.getClas
On Mon, 22 May 2023 12:38:23 GMT, Martin Doerr wrote:
> That would be better to read, but would make the PPC64 CallArranger dependent
> on the current CABI. Note that there are tests which use
>
> ```
> import jdk.internal.foreign.abi.aarch64.CallArranger;
> ...
> CallArranger.LINUX.getBindings
On Mon, 22 May 2023 08:53:21 GMT, Richard Reingruber wrote:
>> Martin Doerr has updated the pull request incrementally with one additional
>> commit since the last revision:
>>
>> Cleanup imports, improve comments, updates from other platforms.
>
> src/java.b
On Fri, 19 May 2023 18:54:19 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Fri, 19 May 2023 18:47:49 GMT, Martin Doerr wrote:
>> src/java.base/share/classes/jdk/internal/foreign/abi/ppc64/CallArranger.java
>> line 158:
>>
>>> 156: class StorageCalculator {
>>> 157: private final boolean forArguments;
>>> 158: private boolean forVarArgs = false;
On Wed, 10 May 2023 14:19:43 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Wed, 10 May 2023 22:30:13 GMT, Martin Doerr wrote:
>> Ok, since this is loading a `long` (which represents an address that points
>> into the code cache) I think we're fine without using the access API then?
>
> Correct. The code had been written for the previous version of Shenandoah
> (1.0
On Wed, 10 May 2023 11:16:44 GMT, Martin Doerr wrote:
>> src/hotspot/cpu/ppc/upcallLinker_ppc.cpp line 202:
>>
>>> 200:
>>> 201: MacroAssembler* _masm = new MacroAssembler(&buffer);
>>> 202: address start = __ function_entry(); // called by C
>>
>> If `!defined(ABI_ELFv2)` a function descr
On Wed, 10 May 2023 13:24:55 GMT, Martin Doerr wrote:
>> As I see it, the access API is an abstraction to be used instead of raw
>> loads. It hides details. See for instance
>> `TemplateTable::getfield_or_static` on x86 where it is also used. PPC lags
>> behind in making use of the access API.
On Wed, 10 May 2023 13:07:35 GMT, Jorn Vernee wrote:
>> Interesting. I have no idea why. It does the same but with a more
>> complicated API.
>> I just noticed that other platforms use `NONZERO`. I think I should at least
>> add that.
>
>> It does the same but with a more complicated API.
>
>
On Thu, 27 Apr 2023 12:54:55 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Tue, 18 Apr 2023 10:44:03 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Thu, 16 Mar 2023 14:42:10 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Sat, 6 May 2023 19:38:36 GMT, Martin Doerr wrote:
>> Implementation of "Foreign Function & Memory API" for linux on Power (Little
>> Endian) according to "Power Architecture 64-Bit ELF V2 ABI Specification".
>>
>> This PR does not include code for VaList support because it's supposed to
>>
On Tue, 14 Feb 2023 14:10:08 GMT, Richard Reingruber wrote:
> This fixes the linked issue by trimming the caller of a frame to be
> deoptimized back to its `unextended_sp` iff it is compiled. The creation of
> the section `dead after deoptimization` shown in the a
On Wed, 15 Feb 2023 20:30:00 GMT, Richard Reingruber wrote:
>> This fixes the linked issue by trimming the caller of a frame to be
>> deoptimized back to its `unextended_sp` iff it is compiled. The creation of
>> the section `dead after deoptimization` shown
On Wed, 15 Feb 2023 12:35:52 GMT, Goetz Lindenmaier wrote:
>> Richard Reingruber has updated the pull request incrementally with three
>> additional commits since the last revision:
>>
>> - Improve comment
>> - Improve comment
>> - Spelling
>
> src/
tch-clause in the main method had to be changed to rethrow the
> caught exception because without this the test would have succeeded.
>
> Testing: jtreg tests tier 1-4 on standard platforms and also on ppc64le.
Richard Reingruber has updated the pull request incrementally with three
addi
This fixes the linked issue by trimming the caller of a frame to be deoptimized
back to its `unextended_sp` iff it is compiled. The creation of the section
`dead after deoptimization` shown in the attachment
[yield_after_deopt_failure.log](https://bugs.openjdk.org/secure/attachment/102602/yield_
On Fri, 27 Jan 2023 10:16:56 GMT, Matthias Baesken wrote:
>> test/jdk/jdk/internal/vm/Continuation/Fuzz.java line 95:
>>
>>> 93: }
>>> 94: if (Platform.isPPC()) {
>>> 95: COMPILATION_TIMEOUT = COMPILATION_TIMEOUT * 2;
>>
>> I guess this won't compile. COMPILATION_TIM
On Fri, 27 Jan 2023 10:20:26 GMT, Matthias Baesken wrote:
>> On our Linux ppc64le test machines we quite often see compilation timeouts
>> in the test jdk/internal/vm/Continuation/Fuzz.java.
>> (especially when running with fastdebug binaries)
>> So it probably makes sense to use a higher compil
On Fri, 27 Jan 2023 08:52:21 GMT, Matthias Baesken wrote:
>> On our Linux ppc64le test machines we quite often see compilation timeouts
>> in the test jdk/internal/vm/Continuation/Fuzz.java.
>> (especially when running with fastdebug binaries)
>> So it probably makes sense to use a higher compil
On Fri, 27 Jan 2023 08:33:32 GMT, Matthias Baesken wrote:
> On our Linux ppc64le test machines we quite often see compilation timeouts in
> the test jdk/internal/vm/Continuation/Fuzz.java.
> (especially when running with fastdebug binaries)
> So it probably makes sense to use a higher compilatio
62 matches
Mail list logo