--- old/src/java.base/unix/native/libjava/childproc.c 2019-05-20 16:11:16.825769201 +0200 +++ new/src/java.base/unix/native/libjava/childproc.c 2019-05-20 16:11:16.637770103 +0200 @@ -314,6 +314,13 @@ { const ChildStuff* p = (const ChildStuff*) arg; + if (p->sendAlivePing) { + /* Child shall signal aliveness to parent at the very first + * moment. */ + int code = CHILD_IS_ALIVE; + restartableWrite(p->fail[1], &code, sizeof(code)); + } + /* Close the parent sides of the pipes. Closing pipe fds here is redundant, since closeDescriptors() would do it anyways, but a little paranoia is a good thing. */