[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#855606: marked as done (sqrt() regression on powerpc/jessie)



Your message dated Tue, 25 Apr 2017 19:47:13 +0000
with message-id <E1d36Qb-0009Cc-RS@fasolo.debian.org>
and subject line Bug#855606: fixed in glibc 2.19-18+deb8u8
has caused the Debian Bug report #855606,
regarding sqrt() regression on powerpc/jessie
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
855606: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=855606
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: libc6
Version: 2.19-18+deb8u7
Severity: normal
Tags: jessie

The following C program produces different output on Jessie and Sid. I
believe the Sid output is the correct one, and in fact this is the
output that has been observed for the "point" (and "polygon")
regression tests for PostgreSQL on all platforms for the last 20 years
since the test got added.


$ cat sqrt.c
#include <math.h>
#include <stdio.h>
#include <fenv.h>

double
pg_hypot(double x, double y)
{
    double      yx;

    /* Some PG-specific code deleted here */

    /* Else, drop any minus signs */
    x = fabs(x);
    y = fabs(y);

    /* Swap x and y if needed to make x the larger one */
    if (x < y)
    {
        double      temp = x;

        x = y;
        y = temp;
    }

    /*
     * If y is zero, the hypotenuse is x.  This test saves a few cycles in
     * such cases, but more importantly it also protects against
     * divide-by-zero errors, since now x >= y.
     */
    if (y == 0.0)
        return x;

    /* Determine the hypotenuse */
    yx = y / x;
    return x * sqrt(1.0 + (yx * yx));
}


int main ()
{
        //fesetround(FE_TONEAREST);
        printf("fegetround is %d\n", fegetround());
        double r = pg_hypot(10.0, 10.0);
        printf("14 %.14g\n", r);
        printf("15 %.15g\n", r);
        printf("16 %.16g\n", r);
        printf("17 %.17g\n", r);
        return 0;
}


Jessie output:
fegetround is 0
14 14.142135623731
15 14.1421356237309
16 14.14213562373095
17 14.142135623730949

Sid output:
fegetround is 0
14 14.142135623731
15 14.142135623731
16 14.14213562373095
17 14.142135623730951


The Sid output is also observed when running the binary compiled on
Jessie on Sid, so it's a library issue, not a compiler/binary one.


The problem might be due to the fix for #843904.


FTBFS in postgresql-9.4 in jessie-pu:
https://buildd.debian.org/status/fetch.php?pkg=postgresql-9.4&arch=powerpc&ver=9.4.11-0%2Bdeb8u1&stamp=1487473754&raw=0
FTBFS in postgresql-9.6 in jessie-backports:
https://buildd.debian.org/status/fetch.php?pkg=postgresql-9.6&arch=powerpc&ver=9.6.1-2~bpo8%2B1&stamp=1485184696&raw=0

Thread on pgsql-hackers:
https://www.postgresql.org/message-id/20170220155819.m2s43pf2pvkes4pc%40msg.credativ.de

Christoph

Attachment: signature.asc
Description: PGP signature


--- End Message ---
--- Begin Message ---
Source: glibc
Source-Version: 2.19-18+deb8u8

We believe that the bug you reported is fixed in the latest version of
glibc, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 855606@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Aurelien Jarno <aurel32@debian.org> (supplier of updated glibc package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Mon, 24 Apr 2017 06:41:38 +0200
Source: glibc
Binary: libc-bin libc-dev-bin glibc-doc glibc-source locales locales-all nscd multiarch-support libc6 libc6-dev libc6-dbg libc6-pic libc6-udeb libc6.1 libc6.1-dev libc6.1-dbg libc6.1-pic libc6.1-udeb libc0.3 libc0.3-dev libc0.3-dbg libc0.3-pic libc0.3-udeb libc0.1 libc0.1-dev libc0.1-dbg libc0.1-pic libc0.1-udeb libc6-i386 libc6-dev-i386 libc6-sparc libc6-dev-sparc libc6-sparc64 libc6-dev-sparc64 libc6-s390 libc6-dev-s390 libc6-amd64 libc6-dev-amd64 libc6-powerpc libc6-dev-powerpc libc6-ppc64 libc6-dev-ppc64 libc6-mips32 libc6-dev-mips32 libc6-mipsn32 libc6-dev-mipsn32 libc6-mips64 libc6-dev-mips64 libc0.1-i386 libc0.1-dev-i386 libc6-x32 libc6-dev-x32 libc6-i686 libc6-xen libc0.1-i686 libc0.3-i686 libc0.3-xen libc6.1-alphaev67 libc6-loongson2f libnss-dns-udeb libnss-files-udeb
Architecture: source all
Version: 2.19-18+deb8u8
Distribution: stable
Urgency: medium
Maintainer: Aurelien Jarno <aurel32@debian.org>
Changed-By: Aurelien Jarno <aurel32@debian.org>
Description:
 glibc-doc  - GNU C Library: Documentation
 glibc-source - GNU C Library: sources
 libc-bin   - GNU C Library: Binaries
 libc-dev-bin - GNU C Library: Development binaries
 libc0.1    - GNU C Library: Shared libraries
 libc0.1-dbg - GNU C Library: detached debugging symbols
 libc0.1-dev - GNU C Library: Development Libraries and Header Files
 libc0.1-dev-i386 - GNU C Library: 32bit development libraries for AMD64
 libc0.1-i386 - GNU C Library: 32bit shared libraries for AMD64
 libc0.1-i686 - GNU C Library: Shared libraries [i686 optimized]
 libc0.1-pic - GNU C Library: PIC archive library
 libc0.1-udeb - GNU C Library: Shared libraries - udeb (udeb)
 libc0.3    - GNU C Library: Shared libraries
 libc0.3-dbg - GNU C Library: detached debugging symbols
 libc0.3-dev - GNU C Library: Development Libraries and Header Files
 libc0.3-i686 - GNU C Library: Shared libraries [i686 optimized]
 libc0.3-pic - GNU C Library: PIC archive library
 libc0.3-udeb - GNU C Library: Shared libraries - udeb (udeb)
 libc0.3-xen - GNU C Library: Shared libraries [Xen version]
 libc6      - GNU C Library: Shared libraries
 libc6-amd64 - GNU C Library: 64bit Shared libraries for AMD64
 libc6-dbg  - GNU C Library: detached debugging symbols
 libc6-dev  - GNU C Library: Development Libraries and Header Files
 libc6-dev-amd64 - GNU C Library: 64bit Development Libraries for AMD64
 libc6-dev-i386 - GNU C Library: 32-bit development libraries for AMD64
 libc6-dev-mips32 - GNU C Library: o32 Development Libraries for MIPS
 libc6-dev-mips64 - GNU C Library: 64bit Development Libraries for MIPS64
 libc6-dev-mipsn32 - GNU C Library: n32 Development Libraries for MIPS64
 libc6-dev-powerpc - GNU C Library: 32bit powerpc development libraries for ppc64
 libc6-dev-ppc64 - GNU C Library: 64bit Development Libraries for PowerPC64
 libc6-dev-s390 - GNU C Library: 32bit Development Libraries for IBM zSeries
 libc6-dev-sparc - GNU C Library: 32bit Development Libraries for SPARC
 libc6-dev-sparc64 - GNU C Library: 64bit Development Libraries for UltraSPARC
 libc6-dev-x32 - GNU C Library: X32 ABI Development Libraries for AMD64
 libc6-i386 - GNU C Library: 32-bit shared libraries for AMD64
 libc6-i686 - GNU C Library: Shared libraries [i686 optimized]
 libc6-loongson2f - GNU C Library: Shared libraries (Loongson 2F optimized)
 libc6-mips32 - GNU C Library: o32 Shared libraries for MIPS
 libc6-mips64 - GNU C Library: 64bit Shared libraries for MIPS64
 libc6-mipsn32 - GNU C Library: n32 Shared libraries for MIPS64
 libc6-pic  - GNU C Library: PIC archive library
 libc6-powerpc - GNU C Library: 32bit powerpc shared libraries for ppc64
 libc6-ppc64 - GNU C Library: 64bit Shared libraries for PowerPC64
 libc6-s390 - GNU C Library: 32bit Shared libraries for IBM zSeries
 libc6-sparc - GNU C Library: 32bit Shared libraries for SPARC
 libc6-sparc64 - GNU C Library: 64bit Shared libraries for UltraSPARC
 libc6-udeb - GNU C Library: Shared libraries - udeb (udeb)
 libc6-x32  - GNU C Library: X32 ABI Shared libraries for AMD64
 libc6-xen  - GNU C Library: Shared libraries [Xen version]
 libc6.1    - GNU C Library: Shared libraries
 libc6.1-alphaev67 - GNU C Library: Shared libraries (EV67 optimized)
 libc6.1-dbg - GNU C Library: detached debugging symbols
 libc6.1-dev - GNU C Library: Development Libraries and Header Files
 libc6.1-pic - GNU C Library: PIC archive library
 libc6.1-udeb - GNU C Library: Shared libraries - udeb (udeb)
 libnss-dns-udeb - GNU C Library: NSS helper for DNS - udeb (udeb)
 libnss-files-udeb - GNU C Library: NSS helper for files - udeb (udeb)
 locales    - GNU C Library: National Language (locale) data [support]
 locales-all - GNU C Library: Precompiled locale data
 multiarch-support - Transitional package to ensure multiarch compatibility
 nscd       - GNU C Library: Name Service Cache Daemon
Closes: 796106 855606
Changes:
 glibc (2.19-18+deb8u8) stable; urgency=medium
 .
   [ Aurelien Jarno ]
   * Update from upstream stable branch:
     - Fix PowerPC sqrt inaccuracy.  Closes: #855606.
   * patches/any/cvs-resolv-internal-qtype.diff: patch from upstream to fix a
     NULL pointer dereference in libresolv when receiving a T_UNSPEC internal
     QTYPE (CVE-2015-5180).  Closes: #796106.
Checksums-Sha1:
 e0b2d8b34d7feea98536c39d009ccaac37278d17 8252 glibc_2.19-18+deb8u8.dsc
 a9000d036cc34b20f396c4a090217874cc932b6f 1057152 glibc_2.19-18+deb8u8.debian.tar.xz
 bcdb9c57d753a4eb710b14d939a6b4694c8e3c33 2269672 glibc-doc_2.19-18+deb8u8_all.deb
 88fdbf264fedac3cf36161f6acb79d708743d906 14254858 glibc-source_2.19-18+deb8u8_all.deb
 daa23f4e17ea8464387cec9bca24bd270020681a 3943880 locales_2.19-18+deb8u8_all.deb
Checksums-Sha256:
 d07bb20bc6c3b5ec739c47ba53103ab3ea93910c68dac11615f1a0bda86ee9fd 8252 glibc_2.19-18+deb8u8.dsc
 e043fcb0765b605bfdca5864d07a4b80401fd44d6396dc9a7a21b82abe71b251 1057152 glibc_2.19-18+deb8u8.debian.tar.xz
 fdd90a96ccc5dfc69fb20b80453c414904d40650038f9399d7457aead65ff28c 2269672 glibc-doc_2.19-18+deb8u8_all.deb
 2ade59805e80864c34547a6d6772755daac8457dd9520bae6caa622d2b715884 14254858 glibc-source_2.19-18+deb8u8_all.deb
 960fcbaae7bcadde08a7997254111fd3c54a2929b2fb2f16eccd39ea7271c2b1 3943880 locales_2.19-18+deb8u8_all.deb
Files:
 b25700dc3f68f1415290cb4f126d2e9c 8252 libs required glibc_2.19-18+deb8u8.dsc
 e0f9c0a49639b521d3c8c58741c36f08 1057152 libs required glibc_2.19-18+deb8u8.debian.tar.xz
 1553d48a1f1fe10422abf3ae49573fb2 2269672 doc optional glibc-doc_2.19-18+deb8u8_all.deb
 f5c7a0c523ec63b8f204203aa0711965 14254858 devel optional glibc-source_2.19-18+deb8u8_all.deb
 d828d04d5641d5ff5b70e6fd64190bb1 3943880 localization standard locales_2.19-18+deb8u8_all.deb
Package-Type: udeb

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEd0YmQqnvlP0Pdxltupx4Bh3djJsFAlj9nsIACgkQupx4Bh3d
jJuYDg//QeLnmTNmSoGEiJIWsxduJthE3pdFJ+jIjhaAMAxMeuxP0nYWxN5LDsoA
mqvsXGSjOuibPxZUR9/tx1QXC9AxtltIOJ679PiblNmwFtrOAyX55lAzk4k137tu
UmzVHU5ImRfQnXrkFEC1Z6TgsQSoL+bSFeH1zTEV+xRCn+H1Ltdl/Va5DP1m7jiA
9EJOPkBRtMa6LoU4AvsJaUrpd+JwjitvNPyDhIDj8RsPzcLjOnCZccc8OWCR5cFN
4ouRMStWZq0IojtuJrIbACT3q/ub+nh+Vrq39eDSWvoVb/JziOO1cFNcTnxj4bL3
Z2Ft+kJsW2rkt1uBV4RNVUpGMubUeF2kqfXbKE+be2FuGQwJZGL+SMh+fXhK2e1x
uqrKP4vliLRa3DrOTZVyvIm3T4WT5eyVLvbaMn9noPoXTQq16qUOss5Feyuw8HnD
iYCd5O+w4vF3iHYBeuJRN3poaTtkBN+gKRj9oCKe+04dfMsRxMasMZP8vH4mAuX2
FGoF3pkajxOAGK6JEv2THMBfktMZV9uVGAfahO1UYgkTJYTzd2fCMsFFSYvy967D
Qrup6EYu8gau4DQDBgEFAPqTxS4agINpgOk6T3aXuT1k89FRNXIta7InCH2/+jW9
Lh9gQ5VZ26Hsv3bVTIq226WfMbJWOv+1Y6As8PqwohJA57CSQ+k=
=tPDT
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: