JDK-8141024 : [Solaris] Obsolete UseAltSigs
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 9
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • Submitted: 2015-10-30
  • Updated: 2017-05-17
  • Resolved: 2015-11-16
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9 b96Fixed
Related Reports
CSR :  
Relates :  
Sub Tasks
JDK-8143084 :  
JDK-8179049 :  
Description
History:

The JVM claimed SIGUSR1 and SIGUSR2 for the INTERRUPT and ASYNC signals, respectively/

-XX:+UseAltSigs was provided to allow users to reclaim those signals and instead use two of the real-time signal (between SIGRTMIN and SIGRTMAX)

As of Solaris 10, Solaris provides SIGJVM1 and SIGJVM2 exclusively for the JVMs use. This avoids any conflict with user-defined signal usage.

As we no longer support Solaris versions older than 10, we do not need the UseAltSigs functionality and the flag can be made Obsolete.
Comments
> ./b00/se-solaris-x64-internal/images/jdk/bin/java -XX:+UseAltSigs -version Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option UseAltSigs; support was removed in 9.0 java version "1.9.0-internal" Java(TM) SE Runtime Environment (build 1.9.0-internal-b00) Java HotSpot(TM) 64-Bit Server VM (build 1.9.0-internal-b00, mixed mode) > ./b00/se-solaris-x64-internal/images/jdk/bin/java -Xusealtsigs -version Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option -Xusealtsigs; support was removed in 9.0 java version "1.9.0-internal" Java(TM) SE Runtime Environment (build 1.9.0-internal-b00) Java HotSpot(TM) 64-Bit Server VM (build 1.9.0-internal-b00, mixed mode)
10-11-2015

Actually two flags: -Xusealtsigs -XX:+/-UseAltSigs In JDK 6 we documented that these flags no longer had any affect on Solaris 10: http://www.oracle.com/technetwork/java/javase/signals-139944.html#gbzbh Also, as SIGJVM1/2 will always be available we don't need the remaining ALT_xxx_SIGNAL logic. That logic is actually broken in current code: if (isJVM1available) { os::Solaris::set_SIGasync(SIGJVM2); } else if (UseAltSigs) { os::Solaris::set_SIGasync(ALT_ASYNC_SIGNAL); } else { os::Solaris::set_SIGasync(ASYNC_SIGNAL); } The first line should be a call to isJVM1available(), but instead it simply references the functions address and so is always true.
09-11-2015

Needs to be removed from the java manpage / docs.
30-10-2015