>Synopsis: <OpenBSD 6.4 doesn't boot on 486 class processor anymore> >Category: <kernel i386> >Environment: System : OpenBSD 6.4 Details : OpenBSD 6.4 (GENERIC) #926: Thu Oct 11 13:43:06 MDT 2018 dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
Architecture: OpenBSD.i386 Machine : i386 >Description: <Just after booting the kernel the system stops with: trap: 0(0) invalid opcode fault cn_tab=0x5412c eax 0 ecx 0 edx ff58 ebx ffc8 esp fe0c ebp ff40 esi 8 edi ff58 eip 4241c eflags 10046 cs 8 ss 10 ds 10 es 10 fs 10 gs 10 I tested it with AMD / Cyrix 486DX2-66, AMD 486DX4-100 and Cyrix 5x86-100GP processors on different mainboards with chipsets of UMC, SiS and Winbond. I found one exception which works yet (see dmesg): AMD 5x86 P75 (marketing name) which was a AMD 486DX4-133 with write-back cache. I tested it also with OpenBSD 6.0 also which boots into the system and failed after the numeric coprocessor setup: nxp0 at isa0 port 0xf0/16: using exception 16 Kernel: privileged instruction fault trap, code=0 Stopped at pctrattach+0x83: cpuid With 586 class processors (AMD K5, Cyrix 686, IDT WinChip, Rise mP6) I didn't see any problemes. > >How-To-Repeat: <with any 486 class AMD or Cyrix processor with exception of AMD 5x86> >Fix: <An alternative to fix it would be a new declaration of the OpenBSD hardware requirements: minimum 586 class> dmesg: OpenBSD 6.4 (GENERIC) #926: Thu Oct 11 13:43:06 MDT 2018 dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC real mem = 33050624 (31MB) avail mem = 17457152 (16MB) mpath0 at root scsibus0 at mpath0: 256 targets mainbus0 at root bios0 at mainbus0: date 07/25/94 pcibios at bios0 function 0x1a not configured bios0: ROM list: 0xc0000/0x6000 0xc6800/0x1800 cpu0 at mainbus0: (uniprocessor) cpu0: AMD Am5x86 W/B 133/160 ("AuthenticAMD" 486-class), 04-0f-04 cpu0: FPU isa0 at mainbus0 isadma0 at isa0 com0 at isa0 port 0x3f8/8 irq 4: ns16450, no fifo pckbc0 at isa0 port 0x60/5 irq 1 irq 12 pckbd0 at pckbc0 (kbd slot) wskbd0 at pckbd0: console keyboard vga0 at isa0 port 0x3b0/48 iomem 0xa0000/131072 wsdisplay0 at vga0 mux 1: console (80x25, vt100 emulation), using wskbd0 wsdisplay0: screen 1-5 added (80x25, vt100 emulation) wdc0 at isa0 port 0x1f0/8 irq 14 wd0 at wdc0 channel 0 drive 0: <WDC WD205AA> wd0: 16-sector PIO, LBA, 19569MB, 40079088 sectors wd0(wdc0:0:0): using BIOS timings we0: changing IRQ 9 to 10 we0 at isa0 port 0x280/32 iomem 0xd0000/16384 irq 10 we0: SMC8216T (16-bit), address 00:00:c0:dd:68:a6 pcppi0 at isa0 port 0x61 spkr0 at pcppi0 npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16 vscsi0 at root scsibus1 at vscsi0: 256 targets softraid0 at root scsibus2 at softraid0: 256 targets root on wd0a (09bfa9f83a9c7986.a) swap on wd0b dump on wd0b usbdevs: usbdevs: no USB controllers found pcidump: acpidump: