[crac] RFR: Merge jdk:jdk-25+3
Radim Vansa
rvansa at openjdk.org
Tue Apr 22 20:37:09 UTC 2025
On Tue, 15 Apr 2025 08:11:19 GMT, Dmitry Cherepanov <dcherepanov at openjdk.org> wrote:
> Merge with jdk-25:3
>
> There are several conflicts between CRaC specific changes (https://github.com/openjdk/crac/pull/10) and incoming JDK changes for https://bugs.openjdk.org/browse/JDK-8342995
>
> https://github.com/openjdk/crac/pull/10 moved some parts from `linux/attachListener_linux.cpp` to
> - `linux/linuxAttachOperation.hpp` which later were renamed to `posix/posixAttachOperation.hpp`
> - `linux/attachListener_linux.hpp` which later were renamed to `posix/attachListener_posix.hpp`
>
> As a part of this merge, I manually applied JDK changes for `posix/attachListener_posix.cpp` to `posix/posixAttachOperation.hpp` & `posix/attachListener_posix.hpp`
> - new `SocketChannel` class moved to `posix/posixAttachOperation.hpp`
> - changes in `PosixAttachOperation` class incorporated into `posix/posixAttachOperation.hpp`
> - added `#include "os_posix.hpp"` to define `RESTARTABLE`
> - kept `socket()` function in `PosixAttachOperation` class as it’s used by [VM_Crac::is_socket_from_jcmd](https://github.com/openjdk/crac/blob/647105388b66b7acedf03d049dc60323912a8fe7/src/hotspot/os/linux/crac_linux.cpp#L279)
> - changes in `PosixAttachListener` class incorporated into `posix/attachListener_posix.hpp`
>
> Additional changes in `posix/attachListener_posix.cpp`
> - changes in `PosixAttachOperation::complete` incorporated into `write_operation_result`
>
> <details>
>
> <summary>Conflicts</summary>
>
>
> commit c54dd827b39e7e0066959e4985e4aaefd5452a10 (HEAD -> merge-jdk, dmitry-crac/merge-jdk)
> Merge: 410d0e168c3 23d6f747824
> Author: Dmitry Cherepanov <dcherepanov at azul.com>
> Date: Mon Apr 14 13:55:59 2025 +0400
>
> Merge with jdk:jdk-25+3
>
> diff --git a/.jcheck/conf b/.jcheck/conf
> remerge CONFLICT (content): Merge conflict in .jcheck/conf
> index 1d117b1d825..25bd8dd0b94 100644
> --- a/.jcheck/conf
> +++ b/.jcheck/conf
> @@ -4,12 +4,7 @@ jbs=JDK
> version=25
>
> [checks]
> -<<<<<<< 410d0e168c3 (8353243: [CRaC] Show all options in engine help)
> error=whitespace
> -=======
> -error=author,committer,reviewers,merge,issues,executable,symlink,message,hg-tag,whitespace,problemlists,copyright
> -warning=issuestitle,binary
> ->>>>>>> 23d6f747824 (8346463: Add test coverage for deploying the default provider as a module)
>
> [checks "reviewers"]
> committers=1
> @@ -18,31 +13,3 @@ ignore=duke
> [census]
> version=0
> domain=openjdk.org
> -<<<<<<< 410d0e168c3 (8353243: [CRaC] Show all options in engine help)
> -=======
> -
> -[checks "whitespace"]
> -files=.*.cpp|.*.hpp|.*.c|.*.h|.*.java|.*.cc|.*.hh|.*.m|.*.mm|.*.S|.*.md|.*.properties|.*.gmk|....
The changes seem to be applied correctly. I wonder though, whether should we upstream our changes to those listeners (refactoring) to synchronize with JDK and not have to deal with conflicts all the time. However we would still run into trouble during backports, as we would like to have CRaC changes synchronized across JDK majors (or not, if we don't expect further development in the Attach Listeners?)
src/hotspot/os/posix/posixAttachOperation.hpp line 91:
> 89: bool is_effectively_completed() { return _effectively_completed; }
> 90:
> 91: int socket() {
the method should be `const`
-------------
PR Review: https://git.openjdk.org/crac/pull/224#pullrequestreview-2785248837
PR Review Comment: https://git.openjdk.org/crac/pull/224#discussion_r2054802697
More information about the crac-dev
mailing list