yinghai at kernel.org
Wed Apr 13 14:59:43 PDT 2011
On 04/13/2011 02:50 PM, Joerg Roedel wrote:
> On Wed, Apr 13, 2011 at 01:48:48PM -0700, Yinghai Lu wrote:
>> - addr = memblock_find_in_range(0, 1ULL<<32, aper_size, 512ULL<<20);
>> + addr = memblock_find_in_range(0, 1ULL<<32, aper_size, 512ULL<<21);
> Btw, while looking at this code I wondered why the 512M goal is enforced
> by the alignment. Start could be set to 512M instead and the alignment
> can be aper_size as it should. Any reason for such a big alignment?
when using bootmem, try to use big alignment (512M ), so we could avoid take ram range below 512M.
Author: Yinghai Lu <yhlu.kernel.send at gmail.com>
Date: Mon Apr 14 20:40:37 2008 -0700
x86_64: allocate gart aperture from 512M
because we try to reserve dma32 early, so we have chance to get aperture
with some sequence aperture allocated from RAM, could become E820_RESERVED.
and then if doing a kexec with a big kernel that uncompressed size is above
64M we could have a range conflict with still using gart.
So allocate gart aperture from 512M instead.
Also change the fallback_aper_order to 5, because we don't have chance to get
2G or 4G aperture.
We can change it back to 32M or make it equal to size.
> P.S.: The box is still in the office, I will try this debug-patch
Alexandre's system is working at 0xa4000000 with 184.108.40.206
So it is not low address problem. could be other reason like
some other code could need lower address.
More information about the dri-devel