FreeBSD 4.x SMP kernel panic on non-SMP machine
14 August 2007 – 6:21 pm by wg
Following the death this afternoon of a (somewhat critical) FreeBSD 4 machine here in the office, I hurriedly swapped the hard disk out of it’s original machine (a white-box Pentium 4 of some description which hangs every few minutes) in to the first available “spare” machine I found; a single processor AMD Athlon XP 2000+. I threw a few extra NIC’s in the machine and fired it up and bam — kernel panic on boot.
kernel.GENERIC booted just fine but this machine has some kernel customizations that make the GENERIC kernel next to useless. It turns out this single core, single processor, non-hyper-threading machine does not like APIC_IO being defined in the kernel configuration. Sure enough I commented out the SMP and APIC_IO options and rebuilt the kernel and it worked beautifully.
For some reason I’ve always kind of assumed that an SMP kernel would work just fine on a non-SMP machine — apparently not the case! But the disaster has been averted and all is well, so I’m going home!


























2 Responses to “FreeBSD 4.x SMP kernel panic on non-SMP machine”
That was the case on 4.x; anything later should be fine.
By Ceri Davies on Sep 6, 2007
Thanks for your comment, Ceri, I have noticed that more recently! We are finally slowly migrating from FreeBSD 4 to FreeBSD 6. While FreeBSD 4 has certainly served us well, 6 is a dream!
By wg on Sep 7, 2007