[Regression] AArch64: log and cos/sin intrinsics give incorrect results

Bug #1796982 reported by dann frazier
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
openjdk-lts (Ubuntu)
Fix Released
Critical
Unassigned
Cosmic
Fix Released
Critical
Unassigned

Bug Description

Upstream bug: https://bugs.openjdk.java.net/browse/JDK-8211105
Reference (w/ workaround): http://mail.openjdk.java.net/pipermail/jdk-updates-dev/2018-September/000155.html

$ cat LogTest.java
public class LogTest {
    public static void main(String[] args) {
        double x = 4.9E-324;
        System.out.println(Math.log(x));
        System.out.println(StrictMath.log(x));
    }
}

$ cat CosTest.java
public class CosTest {
    public static void main(String[] args) {
        System.out.println(Math.cos(1647100));
    }
}

$ javac LogTest.java

With 10.0.2+13-1ubuntu1 (correct):
$ java LogTest
-744.4400719213812
-744.4400719213812

With 11~28-3ubuntu1 (incorrect):
$ java LogTest
-710.989276736877
-744.4400719213812

$ javac CosTest.java
With 10.0.2+13-1ubuntu1 (correct):
$ java CosTest
0.7833030468809974

With 11~28-3ubuntu1 (incorrect):
$ java CosTest
-0.2745634094819721

CVE References

dann frazier (dannf)
summary: - [Regression] AArch64: Math.log intrinsic gives incorrect results
+ [Regression] AArch64: log and cos/sin intrinsics give incorrect results
description: updated
dann frazier (dannf)
description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package openjdk-lts - 11.0.1+13-3ubuntu1

---------------
openjdk-lts (11.0.1+13-3ubuntu1) disco; urgency=medium

  * Sync packages with 11.0.1+13-3:
    - Tighten dependency on debhelper on recent releases. Closes: #911694.
    - Reproducible properties file header when SOURCE_DATE_EPOCH is specified.
      Closes: #914278.
    - Add SOURCE_DATE_EPOCH support to the javadoc tool. Closes: #783938.
    - Disable AArch64 intrinsics for sin, cos and log. Closes: #910188.
      LP: #1796982.
    - Add support for DEB_BUILD_OPTIONS=terse. Closes: #912211.

 -- Matthias Klose <email address hidden> Fri, 30 Nov 2018 12:15:34 +0100

Changed in openjdk-lts (Ubuntu):
status: New → Fix Released
dann frazier (dannf)
description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package openjdk-lts - 11.0.1+13-3ubuntu3.18.10.1

---------------
openjdk-lts (11.0.1+13-3ubuntu3.18.10.1) cosmic-security; urgency=medium

  * Backport from Disco.

openjdk-lts (11.0.1+13-3ubuntu3.19.04.1) disco; urgency=medium

  * Apply 11.0.2 security patches.
  * Security fixes:
    - CVE-2019-2422, S8206290: Better FileChannel transfer performance.
    - CVE-2019-2426, S8209094: Improve web server connections.
    - S8199156: Better route routing.
    - S8199552: Update to build scripts.
    - S8200659: Improve BigDecimal support.
    - S8203955: Improve robot support.
    - S8204895: Better icon support.
    - S8205709: Proper allocation handling.
    - S8205714: Initial class initialization.
    - S8210094: Better loading of classloader classes.
    - S8210606: Improved data set handling.
    - S8210866: Improve JPEG processing.

openjdk-lts (11.0.1+13-3ubuntu2) disco; urgency=medium

  * debian/buildwatch.sh: use same code from openjdk-8.
  * debian/control.in, debian/control:
    - add fixed build depends for jtreg and xfvb.
  * debian/rules:
    - call the same testsuites scripts used for autopkgtest.
    - removed jtreg and xvfb build dependency logic and moved the bdeps
      into debian/control.in.
    - added gen-autopackage rule to generate autopkgtest scripts from
      templates.
    - copy flight recorder configuration files.
    - fix logging in langtools testing.
    - don't ignore/exclude the release file from the jdk package, it is
      required by jtreg tests and autopkgtests will fail without it.
    - don't run nashorn testsuite.
    - add prune-build-dir rule to cleanup build dir from unnecessary
      files.
  * update dep8 tests:
    - debian/tests/control: updated to run openjdk-11 tests.
    - debian/tests/hotspot, debian/tests/jaxp, debian/tests/jdk,
      debian/tests/langtools: use the new jt .sh scripts.
    - debian/tests/jtdiff-autopkgtest.sh: used by the scripts to report
      any differences between the autopkgtest and the tests results
      generated during the openjdk package build.
    - debian/tests/jtreg-autopkgtest.in: template to generate the jtreg
      script used by the autopkgtest tests.
    - debian/tests/jtreg-autopkgtest.sh: used by the scripts to run jtreg
      and put the resulting artifacts in the right places.
    - debian/tests/hotspot, debian/tests/jaxp, debian/tests/jdk,
      debian/tests/langtools: run same testsuites as build time and
      compare the results.
    - debian/tests/valid-tests: no longer needed, removed.

openjdk-lts (11.0.1+13-3ubuntu1) disco; urgency=medium

  * Sync packages with 11.0.1+13-3:
    - Tighten dependency on debhelper on recent releases. Closes: #911694.
    - Reproducible properties file header when SOURCE_DATE_EPOCH is specified.
      Closes: #914278.
    - Add SOURCE_DATE_EPOCH support to the javadoc tool. Closes: #783938.
    - Disable AArch64 intrinsics for sin, cos and log. Closes: #910188.
      LP: #1796982.
    - Add support for DEB_BUILD_OPTIONS=terse. Closes: #912211.

 -- Tiago Stürmer Daitx <email address hidden> Mon, 14 Jan 2019 04:14:40 +0000

Changed in openjdk-lts (Ubuntu Cosmic):
status: New → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.