On 3/12/2020 9:19 pm, Magnus Ihse Bursie wrote:
On Thu, 3 Dec 2020 04:34:52 GMT, David Holmes <dhol...@openjdk.org> wrote:

The signal-chaining facility was introduced in JDK 1.4 nearly 20 years ago and 
supported three different Linux signal API's: sigset, signal and sigaction:

https://docs.oracle.com/javase/8/docs/technotes/guides/vm/signal-chaining.html

Only sigaction is a Posix supported API for multi-threaded processes, that we 
can use cross-platform. Both signal and sigset are obsolete and have undefined 
behaviour in a multi-threaded process. From the Linux man pages:

sigset: This API is obsolete: new applications should use the POSIX signal API 
(sigaction(2), sigprocmask(2), etc.)

signal: The behavior of signal() varies across UNIX versions, and has also 
varied historically across different versions of Linux. Avoid its use: use 
sigaction(2) instead.

We should deprecate the use of signal and sigset in JDK 16 with a view to their 
removal in JDK 17.

A CSR request has been filed.

Testing: hotspot/jtreg/runtime/signal tests

Thanks,
David

As we say in Swedish: Äntligen! :-)

Build changes look good.

Thanks for the review Magnus!

David
-----

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

Marked as reviewed by ihse (Reviewer).

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

Reply via email to