On Thu, 12 Jun 2025 04:11:15 GMT, Thomas Stuefe <stu...@openjdk.org> wrote:

> (for JDK 26)
> 
> Note: This PR is a continuation of the old PR here: 
> https://github.com/openjdk/jdk/pull/25260; had to close the old one since I 
> had Skara problems after the JDK25 split-off.
> 
> See the companion CSR (https://bugs.openjdk.org/browse/JDK-8357090) for the 
> ratio behind this removal.
> 
> Patch
> 
> - removes all code handling the VFORK mode.
> - removes or clarifies comments explaining use of vfork by the JVM.
> - we now print out an error message to stderr if the user still specifies 
> -Djdk.lang.Process.launchMechanism=vfork.

src/java.base/unix/native/libjava/ProcessImpl_md.c line 60:

> 58:  * - then exec(2) the target binary
> 59:  *
> 60:  * On the OS-side are four ways to fork off:

I would mention the two ways that are implemented, only mentioning vfork after 
the supported mechanisms to inhibit someone wanting to go backwards.

src/java.base/unix/native/libjava/ProcessImpl_md.c line 86:

> 84:  *    powerful, but Linux-specific.
> 85:  *
> 86:  * D) posix_spawn(3): Where fork/vfork/clone all fork off the process and 
> leave

I would downplay the OS launch options we don't use, only saying that vfork is 
dangerous (and a bit as to why) but there's no need to mention clone. And 
there's no need to mention the the deprecation or removal, when this is 
integrated its gone.

src/java.base/unix/native/libjava/childproc.c line 207:

> 205:     vector[count] = NULL;
> 206: }
> 207: 

This mode should be mentioned in the CSR, even if no-one knew it was there.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/25768#discussion_r2150580874
PR Review Comment: https://git.openjdk.org/jdk/pull/25768#discussion_r2150578422
PR Review Comment: https://git.openjdk.org/jdk/pull/25768#discussion_r2150587579

Reply via email to