RFR: 8274293: Build failure on macOS with Xcode 13.0 as vfork is deprecated [v2]

Thomas Stuefe stuefe at openjdk.java.net
Sat Sep 25 10:14:04 UTC 2021


On Sat, 25 Sep 2021 01:48:29 GMT, xpbob <github.com+7837910+xpbob at openjdk.org> wrote:

>> remove vfork() on Darwin
>
> xpbob has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Drop drop "Solaris" from the comment

The JDK change is fine. AFAICS we have used posix_spawn by default on MacOS since at least 2015, and vfork was not even an option on MacOS.

Wrt the hotspot portion, we now fall back to fork. I wonder what the footprint penalty is compared to vfork. `os::fork_and_exec` gets used mainly by error reporting (`-XX:OnError`=xxx), e.g. in OOM situations. We now may run into situations where error analysis tools are unable to spawn if the parent is too big. Maybe we should change `os::fork_and_exec()` to use posix_spawn instead?

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

PR: https://git.openjdk.java.net/jdk/pull/5686


More information about the core-libs-dev mailing list