diff options
author | iedowse <iedowse@FreeBSD.org> | 2005-02-06 16:55:52 +0000 |
---|---|---|
committer | iedowse <iedowse@FreeBSD.org> | 2005-02-06 16:55:52 +0000 |
commit | 552b43ee4475faf2c3ca9b4bce75dfa87d3d7507 (patch) | |
tree | ca51f8f0d2ff78cdd8884ffe4f36d839a4043a91 /sys/dev/random | |
parent | 1af887fe98a69cf87a0a9399f0ae7aeb0cf80bad (diff) | |
download | FreeBSD-src-552b43ee4475faf2c3ca9b4bce75dfa87d3d7507.zip FreeBSD-src-552b43ee4475faf2c3ca9b4bce75dfa87d3d7507.tar.gz |
Check that we have at least a 586-class CPU before calling do_cpuid().
This fixes booting on a number of 486 processors.
PR: i386/75686
Reviewed by: markm
MFC after: 1 week
Diffstat (limited to 'sys/dev/random')
-rw-r--r-- | sys/dev/random/probe.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/dev/random/probe.c b/sys/dev/random/probe.c index 5cd1bdd..05b8223 100644 --- a/sys/dev/random/probe.c +++ b/sys/dev/random/probe.c @@ -37,6 +37,7 @@ __FBSDID("$FreeBSD$"); #if defined(__i386__) && !defined(PC98) #include <machine/cpufunc.h> +#include <machine/cputypes.h> #endif #include <dev/random/randomdev.h> @@ -55,6 +56,8 @@ random_ident_hardware(struct random_systat *systat) /* Then go looking for hardware */ #if defined(__i386__) && !defined(PC98) + if (cpu_class < CPUCLASS_586) + return; do_cpuid(1, regs); if ((regs[0] & 0xf) >= 3) { do_cpuid(0xc0000000, regs); |