Messages in this thread |  | | Date | Thu, 4 Sep 2008 22:14:18 +0200 | | From | Krzysztof Helt <> | | Subject | Re: [PATCH 5/6] x86: move mtrr cpu cap setting early in early_init_xxxx |
| |
On Thu, 4 Sep 2008 12:17:14 -0700 "Yinghai Lu" <yhlu.kernel@gmail.com> wrote:
> On Thu, Sep 4, 2008 at 12:13 PM, Ingo Molnar <mingo@elte.hu> wrote: > > > > * Yinghai Lu <yhlu.kernel@gmail.com> wrote: > > > >> Krzysztof Helt <krzysztof.h1@wp.pl> found mtrr is not detected on k6-2 > >> > >> root case: > >> we move mtrr_bp_init early for mtrr trimming. > >> and in early_detect, only read cap from cpuid, so some cpu doesn't have > >> that bit in cpuid and need to set workaround bit will have problem. > >> > >> need to add early_init_xxxx to preset those bit before mtrr_bp_init > >> for those earlier cpus. > >> > >> this patch is for 2.6.27 > > > > hm, not sure we can do it in v2.6.27 as it depends on the other CPU init > > patches and that is a rather sensitive codepath. This problem should be > > present in v2.6.26 too, right? > > Yes. old cpus without cpuid bit for mtrr need this patch... > Krzysztof Helt tested it and it works with 2.6.27-rc5 (?) > >
Yes, I tested the patches with 2.6.27-rc5.
I was too lazy to find the case of this breakage as the mtrr register detection was "always" displayed during boot on this machine. I found the source of the breakage now:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=03ae5768b6110ebaa97dc3e7abf1c3d8bec5f874
The early_cpu_init() called directly amd_init_cpu() which set up mtrr flags on K6 cpus. This got removed by this patch with no replacement. This is dated as 2008-04-17.
As the K6 machine is my secondary computer (to test older stuff, ISA, etc) I do not boot it every day. Add holidays and it could be that it went unnoticed since April.
I hope this is answer your question. If you want I can retest the 2.6.26 kernel version.
Kind regards, Krzysztof
---------------------------------------------------------------------- Mobilne aplikacje na Twoj telefon! Sprawdz >> http://link.interia.pl/f1eff
|  |