On Fri, Sep 01, 2017 at 01:04:40AM -0500, Andrew Daugherity wrote: > I recently dug out of the closet my old IBM PS/2E, which had served as > my firewall box from 2000ish-06, and was in fact the very first > machine I ever installed OpenBSD on, to see if it still worked > properly. It did (after changing the CMOS battery), but booted into > OpenBSD 4.1... yeah, just a *bit* out of date there. The machine may > not be of great use nowadays (I'd retired it when it couldn't keep up > with my internet connection), but even as a retro-computing > playground, running a 10-year-old/20-releases-ago version of OpenBSD > is of no benefit. Let's rectify that! > > ==== > >> OpenBSD/i386 BOOT 3.31 > boot> hd0a:/bsd61.rd > cannot open hd0a:/etc/random.seed: No such file or directory > booting hd0a:/bsd61.rd: 3208120+1332224+3342348+0+446464 > [72+288736+277711]=0x87e694 > entry point at 0x2000d4 > > Copyright (c) 1982, 1986, 1989, 1991, 1993 > The Regents of the University of California. All rights reserved. > Copyright (c) 1995-2017 OpenBSD. All rights reserved. https://www.OpenBSD.org > > OpenBSD 6.1 (RAMDISK_CD) #289: Sat Apr 1 13:58:25 MDT 2017 > dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/RAMDISK_CD > fatal privileged instruction fault (0) in supervisor mode > trap type 0 code 0 eip d03b1f7c cs d09f0008 eflags 10046 cr2 0 cpl 0 > panic: trap type 0, code=0, pc=d03b1f7c > > The operating system has halted. > Please press any key to reboot. > ==== > > Well, that's not good -- I didn't expect 6.1 to run particularly well > on this, but I figured it would at least boot... how about 6.0? > > > ==== > booting hd0a:/bsd60.rd: 3211188+1318224+2061312+0+442368 > [72+298576+282894]=0x744144 > entry point at 0x2000d4 > > Copyright (c) 1982, 1986, 1989, 1991, 1993 > The Regents of the University of California. All rights reserved. > Copyright (c) 1995-2016 OpenBSD. All rights reserved. http://www.OpenBSD.org > > OpenBSD 6.0 (RAMDISK_CD) #1864: Tue Jul 26 12:57:09 MDT 2016 > dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/RAMDISK_CD > cpu0: Intel 486DX (486-class) > real mem = 16183296 (15MB) > avail mem = 8122368 (7MB) > mainbus0 at root > bios0 at mainbus0: date 03/31/93 > pcibios at bios0 function 0x1a not configured > bios0: ROM list: 0xc8000/0x1000 0xc9000/0x1000 0xca000/0x2000 > cpu0 at mainbus0: (uniprocessor) > isa0 at mainbus0 > isadma0 at isa0 > fdc0 at isa0 port 0x3f0/6 irq 6 drq 2 > fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec > com0 at isa0 port 0x3f8/8 irq 4: ns16450, no fifo > com0: console > 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 > wdc0 at isa0 port 0x1f0/8 irq 14 > wd0 at wdc0 channel 0 drive 0: <IBM-DARA-206000> > wd0: 16-sector PIO, LBA, 5729MB, 11733120 sectors > wd0(wdc0:0:0): using BIOS timings > npx0 at isa0 port 0xf0/16 irq 13 > pcic0 at isa0 port 0x3e0/2 iomem 0xd0000/16384 > pcic0 controller 0: <Intel 82365SL rev 1> has sockets A and B > pcic0 controller 1: <Intel 82365SL rev 1> has sockets A and B > pcmcia0 at pcic0 controller 0 socket 0 > pcmcia1 at pcic0 controller 0 socket 1 > pcmcia2 at pcic0 controller 1 socket 0 > ep1 at pcmcia2 function 0 "3Com, 3C574-TX Fast EtherLink PC Card, A" > port 0x340/32, irq 3: address 00:10:4b:5f:20:c0 > tqphy0 at ep1 phy 0: 78Q2120 10/100 PHY, rev. 3 > pcmcia3 at pcic0 controller 1 socket 1 > ep2 at pcmcia3 function 0 "3Com, 3C574-TX Fast EtherLink PC Card, A" > port 0x300/32, irq 9: address 00:60:08:93:80:48 > tqphy1 at ep2 phy 0: 78Q2120 10/100 PHY, rev. 3 > pcic0: irq 5, polling enabled > softraid0 at root > scsibus0 at softraid0: 256 targets > root on rd0a swap on rd0b dump on rd0b > erase ^?, werase ^W, kill ^U, intr ^C, status ^T > > Welcome to the OpenBSD/i386 6.0 installation program. > (I)nstall, (U)pgrade, (A)utoinstall or (S)hell? > ==== > > Seems fairly normal. Did I miss something about 6.1 dropping 486 > support? [/me checks i386.html... still says 486 or better!] > > Turns out that GENERIC can give us a little more useful information > than RAMDISK_CD, as it drops into ddb: > > > ==== > boot> hd0a:/bsd.61 > cannot open hd0a:/etc/random.seed: No such file or directory > booting hd0a:/bsd.61: 7678420+2057220+174556+0+1097728 > [72+501520+501951]=0xb761b4 > entry point at 0x2000d4 > > [ using 1003956 bytes of bsd ELF symbol table ] > Copyright (c) 1982, 1986, 1989, 1991, 1993 > The Regents of the University of California. All rights reserved. > Copyright (c) 1995-2017 OpenBSD. All rights reserved. https://www.OpenBSD.org > > OpenBSD 6.1 (GENERIC) #291: Sat Apr 1 13:49:08 MDT 2017 > dera...@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC > kernel: privileged instruction fault trap, code=0 > Stopped at cpuid+0x12: cpuid > ddb> trace > cpuid(80000000,d0d78ef0,d0d78ed8,0,7d) at cpuid+0x12 > identifycpu(d0c7d8a0,d09fbb83,10,0,ffffffff) at identifycpu+0x80d > cpu_startup(d09cefed,d09d1680,16c,8,0) at cpu_startup+0xb9 > main(d02004c6,d02004ce,0,0,0) at main+0x6a > ddb> ps > PID TID PPID UID S FLAGS WAIT COMMAND > ddb> > ==== > > Looks like it's trying to run the CPUID instruction, which this > processor probably doesn't support. Maybe this was an accidental > breakage, rather than intentionally dropping 486es? Time to examine > the CVS logs, I guess. (A -current snapshot also fails in the same > manner, so something happened between 6.0 & 6.1.) >
Looks like I broke this about a year ago: 1.592 (mlarkin 14-Oct-16): 1.592 (mlarkin 14-Oct-16): cpuid(0x80000000, regs); 1.592 (mlarkin 14-Oct-16): if (regs[0] >= 0x80000006) 1.592 (mlarkin 14-Oct-16): cpuid(0x80000006, ci->ci_extcacheinfo); I did test this on 486, but apparently qemu's emulated 486 isn't really a proper 486. I'll see what I can do to solve it for you. Thanks for reporting it. -ml