diff options
Diffstat (limited to 'include/linux/bootmem.h')
| -rw-r--r-- | include/linux/bootmem.h | 25 | 
1 files changed, 16 insertions, 9 deletions
diff --git a/include/linux/bootmem.h b/include/linux/bootmem.h index 01eca1794e1..ab344a52110 100644 --- a/include/linux/bootmem.h +++ b/include/linux/bootmem.h @@ -99,24 +99,31 @@ extern void *__alloc_bootmem_low_node(pg_data_t *pgdat,  				      unsigned long align,  				      unsigned long goal); +#ifdef CONFIG_NO_BOOTMEM +/* We are using top down, so it is safe to use 0 here */ +#define BOOTMEM_LOW_LIMIT 0 +#else +#define BOOTMEM_LOW_LIMIT __pa(MAX_DMA_ADDRESS) +#endif +  #define alloc_bootmem(x) \ -	__alloc_bootmem(x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem(x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_align(x, align) \ -	__alloc_bootmem(x, align, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem(x, align, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_nopanic(x) \ -	__alloc_bootmem_nopanic(x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem_nopanic(x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_pages(x) \ -	__alloc_bootmem(x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem(x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_pages_nopanic(x) \ -	__alloc_bootmem_nopanic(x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem_nopanic(x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_node(pgdat, x) \ -	__alloc_bootmem_node(pgdat, x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem_node(pgdat, x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_node_nopanic(pgdat, x) \ -	__alloc_bootmem_node_nopanic(pgdat, x, SMP_CACHE_BYTES, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem_node_nopanic(pgdat, x, SMP_CACHE_BYTES, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_pages_node(pgdat, x) \ -	__alloc_bootmem_node(pgdat, x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem_node(pgdat, x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_pages_node_nopanic(pgdat, x) \ -	__alloc_bootmem_node_nopanic(pgdat, x, PAGE_SIZE, __pa(MAX_DMA_ADDRESS)) +	__alloc_bootmem_node_nopanic(pgdat, x, PAGE_SIZE, BOOTMEM_LOW_LIMIT)  #define alloc_bootmem_low(x) \  	__alloc_bootmem_low(x, SMP_CACHE_BYTES, 0)  |