Details
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8206054 | 12 | Ivan Gerasimov | P4 | Resolved | Fixed | team |
JDK-8206649 | 11.0.1 | Ivan Gerasimov | P4 | Resolved | Fixed | b01 |
Description
In java.base/linux/native/libnet/linux_close.c:
do {
if (fd1 < 0) {
rv = close(fd2);
} else {
rv = dup2(fd1, fd2);
}
} while (rv == -1 && errno == EINTR);
However, the close() call is not restartable.
Only dup2() needs to be restarted if interrupted.
do {
if (fd1 < 0) {
rv = close(fd2);
} else {
rv = dup2(fd1, fd2);
}
} while (rv == -1 && errno == EINTR);
However, the close() call is not restartable.
Only dup2() needs to be restarted if interrupted.
Attachments
Issue Links
- backported by
-
JDK-8206054 Do not restart close if errno is EINTR
-
- Resolved
-
-
JDK-8206649 Do not restart close if errno is EINTR
-
- Resolved
-