Re: 2.6.14: CR4 not needed to be inspected on the 486 anymore?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Maciej W. Rozycki wrote:

On Thu, 3 Nov 2005, Zachary Amsden wrote:

disables code to retrieve the actual value of CR4 on 486-class systems
(which may or may not implement the register, depending on the exact CPU
type and stepping).  This seems suspicious to me, but I have to admit I
haven't followed the discussion on the issue if there was any.


This was deliberate. CR4 doesn't exist on standard 486 class systems, and I'm not sure how you could make use of it anyway, since the features used by Linux - machine check, page size extensions, time stamp counter, global pages, are only available in Pentium and later class systems, and identified by CPUID, which also doesn't exist on 486.

Later Intel i486DX2 and i486DX4 processors (the so called "write-back
enhanced" ones) did support page size extensions (4MB pages) and as far as
I know we do use them on such chips.  They did implement the CPUID
instruction, too (as well as late i486SX and i486SX2 chips that did not
support PSE).  That's a counter-example that proves the actual value of
CR4 is going to be useful on these systems.  These chips also implemented
the VME feature (the PVI and VME bits of CR4), but they may not be
terribly useful for us.

I used quite a few of such chips myself in mid 90s -- you may search
archives of various mailing lists for examples of "cpuinfo" dumps for such
processors.


Finally got the relevant information from Intel. The embedded i486DX-2/4 series does support CPUID, and PSE, and thus CR4. Ugh. Also just found this guy:

$ cat /proc/cpuinfo processor : 0
vendor_id       : GenuineIntel
cpu family      : 4
model           : 7
model name      : 486 DX/2-WB
stepping        : 0
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme pse
bogomips        : 32.25


He won't like me too much. I'll write up a proper patch for this, a la mode de rdmsr_safe / wrmsr_safe. At least it's not a bug, just missing information.

Zach
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux