Re: [PATCH] trim memory not covered by WB MTRRs

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

 



On Wed, Jun 13, 2007 at 08:52:23AM +0200, Bodo Eggert wrote:
 > Jesse Barnes <[email protected]> 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.
 > 
 > Wouldn't it be better to correct the MTRR, if possible? As far as I read
 > here (LKML), the BIOS did not merge the entries

The size/alignment constraints of MTRRs (must be a power of 2)
means that the best-fit method of covering non power of 2 memory sizes
is the, well.. best fit.  There's nothing that can be merged.

	Dave

-- 
http://www.codemonkey.org.uk
-
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