>Synopsis: incorrect MPFR build with thread-local storage and shared >library >Category: mips64 >Environment: System : OpenBSD 6.9 Details : OpenBSD 6.9 (GENERIC.MP) #551: Sun Apr 18 03:06:59 MDT 2021 dera...@octeon.openbsd.org:/usr/src/sys/arch/octeon/compile/GENERIC.MP
Architecture: OpenBSD.octeon Machine : octeon >Description: After building GMP and GNU MPFR, many MPFR tests fail with random errors. Running the same test several times can give different errors. >How-To-Repeat: Test done on gcc231.fsffrance.org (GCC Compile Farm): 1. Build, check and install GMP 6.2.1 with ./configure --prefix=$HOME/gmp-debug --enable-assert --enable-alloca=debug make -j3 make -j3 check make install 2. Build MPFR 4.1.0 (with the patches) with ./configure --with-gmp=$HOME/gmp-debug make -j3 3. Check MPFR with make -j3 check Or run individual tests manually from the tests directory. Note that not all tests fail. I think that only those using variables declared with thread-local storage will fail. This may be specific to mips64, as there is no such issue with OpenBSD 6.9 on amd64 (gcc302.fsffrance.org). >Fix: I don't know the exact cause or a fix, but there was a bug also involving TLS and shared libraries in FreeBSD 8.2: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=161344 This one was fixed, but the same problem reappeared in FreeBSD 12.0: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=235751 dmesg: OpenBSD 6.9 (GENERIC.MP) #551: Sun Apr 18 03:06:59 MDT 2021 dera...@octeon.openbsd.org:/usr/src/sys/arch/octeon/compile/GENERIC.MP real mem = 1073741824 (1024MB) avail mem = 1035517952 (987MB) random: good seed from bootblocks mainbus0 at root: board 20300 rev 0.15, model cavium,ubnt_e300 cpu0 at mainbus0: CN70xx/CN71xx CPU rev 0.2 1000 MHz, CN70xx/CN71xx FPU rev 0.0 cpu0: cache L1-I 78KB 39 way D 32KB 32 way, L2 1024KB 8 way cpu1 at mainbus0: CN70xx/CN71xx CPU rev 0.2 1000 MHz, CN70xx/CN71xx FPU rev 0.0 cpu1: cache L1-I 78KB 39 way D 32KB 32 way, L2 1024KB 8 way cpu2 at mainbus0: CN70xx/CN71xx CPU rev 0.2 1000 MHz, CN70xx/CN71xx FPU rev 0.0 cpu2: cache L1-I 78KB 39 way D 32KB 32 way, L2 1024KB 8 way cpu3 at mainbus0: CN70xx/CN71xx CPU rev 0.2 1000 MHz, CN70xx/CN71xx FPU rev 0.0 cpu3: cache L1-I 78KB 39 way D 32KB 32 way, L2 1024KB 8 way clock0 at mainbus0: int 5 octcrypto0 at mainbus0 iobus0 at mainbus0 simplebus0 at iobus0: "soc" "bootbus" at simplebus0 not configured octciu0 at simplebus0 octcib0 at simplebus0: max-bits 23 octcib1 at simplebus0: max-bits 12 octcib2 at simplebus0: max-bits 6 octcib3 at simplebus0: max-bits 15 octcib4 at simplebus0: max-bits 4 octcib5 at simplebus0: max-bits 11 octcib6 at simplebus0: max-bits 11 octgpio0 at simplebus0: 20 pins, xbit 16 octsmi0 at simplebus0 octsmi1 at simplebus0 octpip0 at simplebus0 octgmx0 at octpip0 interface 0 cnmac0 at octgmx0: port 0 SGMII, address e0:63:da:c0:62:27 ukphy0 at cnmac0 phy 4: Generic IEEE 802.3u media interface, rev. 2: OUI 0x0001c1, model 0x000c cnmac1 at octgmx0: port 1 SGMII, address e0:63:da:c0:62:28 ukphy1 at cnmac1 phy 5: Generic IEEE 802.3u media interface, rev. 2: OUI 0x0001c1, model 0x000c cnmac2 at octgmx0: port 2 SGMII, address e0:63:da:c0:62:29 ukphy2 at cnmac2 phy 6: Generic IEEE 802.3u media interface, rev. 2: OUI 0x0001c1, model 0x000c cnmac3 at octgmx0: port 3 SGMII, address e0:63:da:c0:62:2a ukphy3 at cnmac3 phy 7: Generic IEEE 802.3u media interface, rev. 2: OUI 0x0001c1, model 0x000c octsctl0 at simplebus0: disabled octxctl0 at simplebus0: DWC3 rev 0x250a xhci0 at octxctl0, xHCI 1.0 usb0 at xhci0: USB revision 3.0 uhub0 at usb0 configuration 1 interface 0 "Generic xHCI root hub" rev 3.00/1.00 addr 1 octxctl1 at simplebus0: DWC3 rev 0x250a xhci1 at octxctl1, xHCI 1.0 usb1 at xhci1: USB revision 3.0 uhub1 at usb1 configuration 1 interface 0 "Generic xHCI root hub" rev 3.00/1.00 addr 1 "i2c" at simplebus0 not configured "i2c" at simplebus0 not configured com0 at simplebus0: ns16550a, 64 byte fifo com0: console com1 at simplebus0: ns16550a, 64 byte fifo com1: probed fifo depth: 0 bytes octmmc0 at simplebus0 sdmmc0 at octmmc0: 8-bit, mmc high-speed "spi" at simplebus0 not configured "ocla0" at simplebus0 not configured "dma-engine" at simplebus0 not configured "dma-engine" at simplebus0 not configured octrng0 at iobus0 base 0x1400000000000 irq 0 octpcie0 at iobus0: 3 ports octpcie0 port 0: link timeout octpcie0 port 1: reset timeout octpcie0 port 2: reset timeout umass0 at uhub0 port 2 configuration 1 interface 0 "SanDisk SDDR-B531" rev 3.10/29.20 addr 2 umass0: using SCSI over Bulk-Only scsibus0 at umass0: 2 targets, initiator 0 sd0 at scsibus0 targ 1 lun 0: <SanDisk, SDDR-B531, 2920> removable serial.0781cfcb210000008409 sd0: 59392MB, 512 bytes/sector, 121634816 sectors scsibus1 at sdmmc0: 2 targets, initiator 0 sd1 at scsibus1 targ 1 lun 0: <Kingston, MMC4GB, 0000> removable sd1: 3728MB, 512 bytes/sector, 7634944 sectors vscsi0 at root scsibus2 at vscsi0: 256 targets softraid0 at root scsibus3 at softraid0: 256 targets root on sd0a (1e0b04336e332f57.a) swap on sd0b dump on sd0b WARNING: /mnt was not properly unmounted WARNING: CHECK AND RESET THE DATE! usbdevs: usbdevs: no USB controllers found -- Vincent Lefèvre <vinc...@vinc17.net> - Web: <https://www.vinc17.net/> 100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/> Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)