>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:


Reply via email to