Most Linux Distros Won't Run on Pentium 4
linugen writes "According to this article on LinuxGram, the majority of Linux distributions won't install on the Pentium 4. Apparently this is caused by the CPUID database, which contains no information on the Pentium IV. Currently only Red Hat and Turbolinux have updated versions of the CPUID databases."
Just browsing the 2.2.18 kernel changes log and came accross this: 2.2.18pre20 o Report PIV in proc as family 15 and uname as model 6 as discussed Check it out here
Joshua
Terradot
When in danger or in doubt, run in circles, scream and shout!
The installer of specific Linux distributions fails. The kernel really doesn't mind.
Linux won't install on those systems - not "won't run" as stated in the title.
Linux != Red Hat
Package Management != RPM
Slackware runs just fine ;-)
'nuff said
Okay... I'll do the stupid things first, then you shy people follow.
Okay... I'll do the stupid things first, then you shy people follow.
[Zappa]
Falling back to an i386 without FPU should work, all the time. CPU-specific informations (e.g. MTRR) are for optimizations only. If the cpuid database does not match the CPU, it is the kernel's best interest behave like an ad hoc i386 kernel - working slowly is better than not working at all.
What if the CPU is not x86? Then it is highly unlikely that the kernel even runs to that point thus far. Not impossible, but almost - like changing a few random bytes of a file and still getting the same MD5 checksum.
P4 owners only need to download 2.2.18 which should be out any day now
... and mere moments after posting, Linux
2.2.18 was released :)
... the existing three Pentium 4 owners about this?
Note: No closed-source OS has a problem with the Pentium IV.
I find it interesting how the article sounds like its blaming Intel for the problem of Linux distros not being properly updated yet to support the P4. I guess that means its Intel's job to run around all over the world making sure that these things are updated before they dare to release a new cpu.
Yeesh.
-- "So they told me that using the download page to download something was not something they anticipated." - Bill Gates
When an RPM based system goes to install, it needs to know what arch type to use (i386, sparc, etc) and it doesn't have the CPUID for the Pentium 4 lined up as "i386 compatible" so it basically throws it's hands up, and says "I can't find any packages to install, I give!" Although slightly improper, if Redhat had included a catchall, like "if you don't know what it is, try i386" then things would have been fine.
As it is, 7.0 just masks the cpuid in the kernel to lie and say "686", which I consider a fix at the wrong end of the pipe. They should have fixed the kernel to report the CPUID properly (it's "f86" but everyone thought x would be base10 not hex, so they all parse it wrong and give "?86") and patch the RPM arch database to match the real Pentium 4 CPUID to an i386 compatible install.
My opinions are not those of my employer. Made fresh daily!
It seems to me that the Linux shouldn't just fail if it doesn't understand a CPUID. Is there some reason it can't fall back to a "compatibility mode" (like, 486 or Pentium mode or something) so that it at least works? Maybe it won't run optimally, but a little warning message is better than a full-blown barf.
--
Sometimes it's best to just let stupid people be stupid.
What were they thinking? "Hey, let's design a failure mode into the kernel!"
Why couldn't it optionally enable features specific to a detected chip, starting with 386
as default?
This is just as bad as a BIOS that halts on any error. That's the kind of thing that makes remote server rebooting extremely dangerous. The system should be designed to work at all cost, and send errors to syslog if there is any reason for concern.
According to c't (german magazine), the problem is just with SMP-Kernels, that have problems to identify the IO-APIC to know the number of CPUs.
Quickfix: Boot with kernel parameter "noapic".
or get a new install disk. (SuSE: ftp://ftp.suse.com/pub/suse/i386/update/7.0/kernel /pentium4/)
--
You're rather dim view of closed source companies really doesn't make sense. For something like this, major companies like HP, SCO, etc would have fixed out before the chip hit the market. If Intel is coming out with a totally new generation chip, you don't just sit on your ass, you go ask them if there are compatiblity issues. Response time for comanies really isn't that bad. For example, there was a beta copy of pci-bios out for QNX RtP just a few days after people started reporting problems with graphics cards.
A deep unwavering belief is a sure sign you're missing something...
The article says that Intel is working with Linux ISV's to update their CPUID databases. Seems like they're doing the right thing. Is Intel really responsible to contact EVERY OS manufacturer for x86 and let them know that they are releasing a new CPU? I suppose that this is not a popular opinion on Slashdot, but maybe Intel does do some things right...
Oh...the kernel has to be updated to do this automatically or you have to do it yourself by hand???
I bet half the ppl that bitch about this are the same ones that bitch about all the hotfixes and Service Packs that M$ puts out.
---"What did I say that sounded like 'Tell me about your day?'"---