Re: Linux 2.2.4ac1

Thomas Wouters (thomas@xs4all.nl)
Sat, 27 Mar 1999 12:31:20 +0100


On Sat, Mar 27, 1999 at 09:51:38PM +1100, Richard Gooch wrote:

> > :: Matthew: try "grep mtrr /proc/cpuinfo".

> > Not there:
> > root:reliant lib$ cat /proc/cpuinfo
> > processor : 0
> > vendor_id : AuthenticAMD
> > cpu family : 5
> > model : 8
> > model name : AMD-K6(tm) 3D processor
> > stepping : 12
> > cpu MHz : 350.806599
> > fdiv_bug : no
> > hlt_bug : no
> > sep_bug : no
> > f00f_bug : no
> > fpu : yes
> > fpu_exception : yes
> > cpuid level : 1
> > wp : yes
> > flags : fpu vme de pse tsc msr mce cx8 sep pge mmx 3dnow
> > bogomips : 699.60

> > Of course, we *do* see that it's stepping 12, and not less than 9, as
> > Alan said.

> Actually, it's stepping 8 and above for the K6-II. However, please
> note that support AMD MTRRs is only available in Alan's tree or if you
> apply my patch (which has been submitted to Linus).
> My patch adds AMD and Cyrix support. The AMD support was based on
> Alan's patch.

This is getting peculiar :) I have a very similar AMD,
processor : 0
vendor_id : AuthenticAMD
cpu family : 5
model : 8
model name : AMD-K6(tm) 3D processor
stepping : 12
cpu MHz : 400.924185
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 sep pge mmx 3dnow
bogomips : 799.54

which i've tried getting mtrr to work on in 2.2.3-ac2 and 2.2.3-ac4. It
oopsed after giving the mtrr message on bootup, trace output showed it was
indeed mtrr that was oopsing. I've sent Alan the oops report a couple of
days ago. But, seeing these messages, i decided to try 2.2.4-ac1 with mtrr,
and, to my amazement, i didn't get an Oops. I also didn't get a message
about mtrr being installed, strangely enough, and as you can see, above,
cpuinfo doesn't say anything about mtrr. I do, however, have /proc/mtrr now.

So, my gues is:

arch/i386/kernel/setup.c Row ~900:

/* Modify the capabilities according to chip type */
if (c->x86_vendor == X86_VENDOR_CYRIX) {
x86_cap_flags[24] = "cxmmx";
} else if (c->x86_vendor == X86_VENDOR_AMD) {
x86_cap_flags[16] = "fcmov";
x86_cap_flags[31] = "3dnow";
if (c->x86 == 5 && c->x86_model == 6)
x86_cap_flags[10] = "sep";
} else if (c->x86_vendor == X86_VENDOR_INTEL) {
x86_cap_flags[6] = "pae";
x86_cap_flags[9] = "apic";
x86_cap_flags[12] = "mtrr";
x86_cap_flags[14] = "mca";
x86_cap_flags[16] = "pat";
x86_cap_flags[17] = "pse36";
x86_cap_flags[18] = "psn";
x86_cap_flags[24] = "osfxsr";
}

You wont ever see mtrr in the cpuflags for a non-intel processor :) It works
now, though. I might run some benchmarks if i find some time, this weekend.
Regardless, Matthew, you should have /proc/mtrr on 2.2.4-ac1. I can send
along my .config to see if anything significant is different ?

Regards,
Thomas.

-- 
Thomas Wouters <thomas@xs4all.net>

Hi! I'm a .signature virus! copy me into your .signature file to help me spread!

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/