lkml.org 
[lkml]   [2007]   [Jun]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [PATCH] trim memory not covered by WB MTRRs
    Date
    On Wednesday, June 6, 2007 1:26 pm Justin Piszcz wrote:
    > On Wed, 6 Jun 2007, Jesse Barnes wrote:
    > > On some machines, buggy BIOSes don't properly setup WB MTRRs to
    > > cover all available RAM, meaning the last few megs (or even gigs)
    > > of memory will be marked uncached. Since Linux tends to allocate
    > > from high memory addresses first, this causes the machine to be
    > > unusably slow as soon as the kernel starts really using memory
    > > (i.e. right around init time).
    > >
    > > This patch works around the problem by scanning the MTRRs at
    > > boot and figuring out whether the current end_pfn value (setup
    > > by early e820 code) goes beyond the highest WB MTRR range, and
    > > if so, trimming it to match. A fairly obnoxious KERN_WARNING
    > > is printed too, letting the user know that not all of their
    > > memory is available due to a likely BIOS bug.
    > >
    > > Something similar could be done on i386 if needed, but the boot
    > > ordering would be slightly different, since the MTRR code on i386
    > > depends on the boot_cpu_data structure being setup.
    > >
    > > Justin, can you please test and make sure this patch works for
    > > you too? It'll only work around the problem, but it's better
    > > than having to do mem= by hand or waiting for a fix from your
    > > BIOS vendor.
    > >
    > > Thanks,
    > > Jesse
    >
    > Against what kernel version does this patch apply?

    Um... git as of b4946ffb1860597b187d78d61ac6504177eb0ff8. Sorry I
    should have updated before spinning the patch (will do now).

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

    \
     
     \ /
      Last update: 2007-06-06 22:31    [W:5.442 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site