Re: [PATCH] x86: mtrr cleanup for converting continuous to discrete - auto detect

From: Yinghai Lu
Date: Thu May 01 2008 - 21:55:49 EST


On Thu, May 1, 2008 at 6:18 PM, Gabriel C <nix.or.die@xxxxxxxxxxxxxx> wrote:
>
> Yinghai Lu wrote:
> > On Thu, May 1, 2008 at 5:29 PM, Gabriel C <nix.or.die@xxxxxxxxxxxxxx> wrote:
> >> Yinghai Lu wrote:
> >> > On Thu, May 1, 2008 at 4:45 AM, Gabriel C <nix.or.die@xxxxxxxxxxxxxx> wrote:
> >> >> Yinghai Lu wrote:
> >> >> > loop mtrr chunk_size and gran_size from 1M to 2G to find out optimal value.
> >> >> >
> >> >> > so user don't need to add mtrr_chunk_size and mtrr_gran_size,
> >> >> >
> >> >> > if optimal value is not found, print out all list to help select less optimal
> >> >> > value.
> >> >> >
> >> >> > add mtrr_spare_reg_nr= so user could set 2 instead of 1, if the card need more entries.
> >> >>
> >> >> WOW :)
> >> >>
> >> >> With this patch all is working fine , no RAM is lost , X is fast ,
> >> >> so far everything else seems to work fine. \o/
> >> >>
> >> >> I will test on 32bit tomorrow and stress the box later on today to be sure everything works fine.
> >> >>
> >> >> There is my dmesg , meminfo , mtrr output with this patch on top x86-latest :
> >> >>
> >> >> http://frugalware.org/~crazy/mtrr_x86-latest/
> >> >
> >> > while look at that you boot log, it seems there is one bug about hole
> >> > position. but I look that code, it should already be handled.
> >> >
> >> > Can you send out boot msg and /proc/mtrr when using
> >> > disable_mtrr_cleanup command line?
> >>
> >> Sure , there it is :
> >>
> >> http://frugalware.org/~crazy/mtrr_x86-latest/dmesg2
> >> http://frugalware.org/~crazy/mtrr_x86-latest/proc_mtrr2
> >>
> >> I'm still using this version of your patch , didn't got any time to update to v2.
> >> If you want me to try v2 tell me , I have some free time in about 30 minutes.
> >>
> > original
> >
> > reg00: base=0xd0000000 (3328MB), size= 256MB: uncachable, count=1
> > reg01: base=0xe0000000 (3584MB), size= 512MB: uncachable, count=1
> > reg02: base=0x00000000 ( 0MB), size=4096MB: write-back, count=1
> > reg03: base=0x100000000 (4096MB), size= 512MB: write-back, count=1
> > reg04: base=0x120000000 (4608MB), size= 128MB: write-back, count=1
> > reg05: base=0x128000000 (4736MB), size= 64MB: write-back, count=1
> > reg06: base=0xcf600000 (3318MB), size= 2MB: uncachable, count=1
> >
> > after clean up
> >
> > reg00: base=0x00000000 ( 0MB), size=2048MB: write-back, count=1
> > reg01: base=0x80000000 (2048MB), size=1024MB: write-back, count=1
> > reg02: base=0xc0000000 (3072MB), size= 256MB: write-back, count=1
> > reg03: base=0xcfe00000 (3326MB), size= 2MB: uncachable, count=1
> > reg04: base=0x100000000 (4096MB), size= 512MB: write-back, count=1
> > reg05: base=0x120000000 (4608MB), size= 256MB: write-back, count=1
> > reg06: base=0x12c000000 (4800MB), size= 64MB: uncachable, count=1
> >
> > so the hole base is not right, it should be at 3318MB instead of 3326MB.
> > please hold to test v3 ...
>
> All is still fine here after an quick test ( BTW that version is really chatty :P )

thanks. yeah, but can you remove debug in command line to see if it
still talks too much.

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