Using alt-java with Red Hat build of OpenJDK
Abstract
Providing feedback on Red Hat build of OpenJDK documentation
To report an error or to improve our documentation, log in to your Red Hat Jira account and submit an issue. If you do not have a Red Hat Jira account, then you will be prompted to create an account.
Procedure
- Click the following link to create a ticket.
- Enter a brief description of the issue in the Summary.
- Provide a detailed description of the issue or enhancement in the Description. Include a URL to where the issue occurs in the documentation.
- Clicking Submit creates and routes the issue to the appropriate documentation team.
Making open source more inclusive
Red Hat is committed to replacing problematic language in our code, documentation, and web properties. We are beginning with these four terms: master, slave, blacklist, and whitelist. Because of the enormity of this endeavor, these changes will be implemented gradually over several upcoming releases. For more details, see our CTO Chris Wright’s message.
Chapter 1. Overview of alt-java
Red Hat packages contain a mitigation for the SSB vulnerability in the form of a patch for the java
binary. This patch disables an optimization present in x86-64 (Intel and AMD) processors. Disabling that optimization reduces the risk of kernel side-channel attacks, but also reduces CPU performance.
Since the patch reduces performance, it has been removed from the java
launcher. A new binary alt-java
is now available. From the January 2021 Critical Patch Update release (1.8.0 282.b08, 11.0.10.9) onwards, the alt-java
binary is included in Red Hat build of OpenJDK 8 and Red Hat build of OpenJDK 11 GA RPM packages.
Additional resources
- For more information about the performance impact of SSB mitigation, see Kernel Side-Channel Attack using Speculative Store Bypass - CVE-2018-3639 on the Red Hat Customer Portal
-
For more information about the
java
binary patch, see RH1566890 in the Red Hat Bugzilla documentation.
Chapter 2. Differences between java
and alt-java
Similarities exist between alt-java
and java
binaries, with the exception of the SSB mitigation.
Although the SBB mitigation patch exists only for x86-64 architecture, Intel and AMD, the alt-java
exists on all architectures. For non-x86 architectures, the alt-java
binary is identical to java
binary, except alt-java
has no patches.
Additional resources
-
For more information about similarities between
alt-java
andjava
, see RH1750419 in the Red Hat Bugzilla documentation.
Chapter 3. alt-java
and java
uses
Depending on your needs, you can use either the alt-java
binary or the java
binary to run your application’s code.
3.1. alt-java
usage
Use alt-java
for any applications that run untrusted code. Be aware that using alt-java
is not a solution to all speculative execution vulnerabilities.
3.2. java
usage
Use the java
binary for performance-critical tasks in a secure environment. Most RPMs in a Red Hat Enterprise Linux system use the java
binary, except for IcedTea-Web. IcedTea-Web uses alt-java
as its launcher, so you can use IcedTea-Web to run untrusted code.
Additional resources
Chapter 4. Performance impact of alt-java
The alt-java
binary contains the SSB mitigation, so the SSB mitigation performance impact no longer exists on java
.
Using alt-java
might significantly reduce the performance of Java programs.
You can find detailed information of some Java performance issues that might exist with using alt-java
by selecting any of the Red Hat Bugzilla links listed in the Additional resources section.
Additional resources
Revised on 2024-05-10 09:08:05 UTC