|Summary:||www/node Illegal Instruction on powerpc64 big endian elfv1|
|Product:||Ports & Packages||Reporter:||Curtis Hamilton <hamiltcl>|
|Component:||Individual Port(s)||Assignee:||Bradley T. Hughes <bhughes>|
|Status:||Closed Overcome By Events|
|Severity:||Affects Only Me||CC:||gustavo.romero, jhibbits, powerpc|
Description Curtis Hamilton 2019-07-10 17:33:42 UTC
Build completes successfully, but core dumps with "Illegal Instruction". root@lenoil8:~ # node Welcome to Node.js v12.2.0. Type ".help" for more information. Illegal instruction (core dumped) root@lenoil8:~ # gdb node node.core GNU gdb (GDB) 8.2.1 [GDB v8.2.1 for FreeBSD] Copyright (C) 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "powerpc64-portbld-freebsd12.0". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from node...(no debugging symbols found)...done. [New LWP 100293] [New LWP 100338] [New LWP 100339] [New LWP 100340] [New LWP 100341] [New LWP 100342] [New LWP 100343] Core was generated by `node'. Program terminated with signal SIGILL, Illegal instruction. #0 0x0000000011505b50 in ?? () [Current thread is 1 (LWP 100293)] (gdb) backtrace #0 0x0000000011505b50 in ?? () #1 0x0000000011505b00 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) (gdb) disass No function contains program counter for selected frame.
Comment 1 Gustavo Romero 2019-07-10 17:39:02 UTC
(In reply to Curtis Hamilton from comment #0) Hi Curtis, What does "x/4i $pc" tell in gdb? Could you also try to inspect 'dmesg' and paste the instruction inside < >, please? Thanks.
Comment 2 Curtis Hamilton 2019-07-10 19:16:25 UTC
(In reply to Gustavo Romero from comment #1) >>Hi Curtis, >>What does "x/4i $pc" tell in gdb? [Current thread is 1 (LWP 100087)] (gdb) x/4i $pc => 0x11505b50: friz f2,f1 0x11505b54: fsub f1,f1,f2 0x11505b58: lfd f3,0(r28) 0x11505b5c: fcmpu cr0,f1,f3 (gdb) >>Could you also try to inspect 'dmesg' and paste the instruction inside < >, >>please? I assumed you meant this. cpu0: IBM PowerPC 970MP revision 1.1, 2300.29 MHz cpu0: Features dc000000<PPC32,PPC64,ALTIVEC,FPU,MMU> cpu0: HID0 1511081<DEEPNAP,NAP,DPM,NHR,TBEN,ENATTN> >>Thanks.
Comment 3 Justin Hibbits 2019-07-10 19:43:14 UTC
It looks like the 'friz' instruction came in with PowerISA 2.03 or 2.04. PPC970 conforms to 2.02 and/or the legacy PowerPC ISA, so does not have the 'friz' instruction.
Comment 4 Curtis Hamilton 2019-09-27 20:29:08 UTC
Seems the only fix is new hardware. Therefore this is OBE.