diff options
| -rw-r--r-- | include/linux/bootmem.h | 5 | ||||
| -rw-r--r-- | mm/bootmem.c | 8 | ||||
| -rw-r--r-- | mm/nobootmem.c | 8 |
3 files changed, 21 insertions, 0 deletions
diff --git a/include/linux/bootmem.h b/include/linux/bootmem.h index 3f778c27f825..3cd16ba82f15 100644 --- a/include/linux/bootmem.h +++ b/include/linux/bootmem.h | |||
| @@ -99,6 +99,9 @@ void *___alloc_bootmem_node_nopanic(pg_data_t *pgdat, | |||
| 99 | extern void *__alloc_bootmem_low(unsigned long size, | 99 | extern void *__alloc_bootmem_low(unsigned long size, |
| 100 | unsigned long align, | 100 | unsigned long align, |
| 101 | unsigned long goal); | 101 | unsigned long goal); |
| 102 | void *__alloc_bootmem_low_nopanic(unsigned long size, | ||
| 103 | unsigned long align, | ||
| 104 | unsigned long goal); | ||
| 102 | extern void *__alloc_bootmem_low_node(pg_data_t *pgdat, | 105 | extern void *__alloc_bootmem_low_node(pg_data_t *pgdat, |
| 103 | unsigned long size, | 106 | unsigned long size, |
| 104 | unsigned long align, | 107 | unsigned long align, |
| @@ -132,6 +135,8 @@ extern void *__alloc_bootmem_low_node(pg_data_t *pgdat, | |||
| 132 | 135 | ||
| 133 | #define alloc_bootmem_low(x) \ | 136 | #define alloc_bootmem_low(x) \ |
| 134 | __alloc_bootmem_low(x, SMP_CACHE_BYTES, 0) | 137 | __alloc_bootmem_low(x, SMP_CACHE_BYTES, 0) |
| 138 | #define alloc_bootmem_low_pages_nopanic(x) \ | ||
| 139 | __alloc_bootmem_low_nopanic(x, PAGE_SIZE, 0) | ||
| 135 | #define alloc_bootmem_low_pages(x) \ | 140 | #define alloc_bootmem_low_pages(x) \ |
| 136 | __alloc_bootmem_low(x, PAGE_SIZE, 0) | 141 | __alloc_bootmem_low(x, PAGE_SIZE, 0) |
| 137 | #define alloc_bootmem_low_pages_node(pgdat, x) \ | 142 | #define alloc_bootmem_low_pages_node(pgdat, x) \ |
diff --git a/mm/bootmem.c b/mm/bootmem.c index b93376c39b61..2b0bcb019ec2 100644 --- a/mm/bootmem.c +++ b/mm/bootmem.c | |||
| @@ -833,6 +833,14 @@ void * __init __alloc_bootmem_low(unsigned long size, unsigned long align, | |||
| 833 | return ___alloc_bootmem(size, align, goal, ARCH_LOW_ADDRESS_LIMIT); | 833 | return ___alloc_bootmem(size, align, goal, ARCH_LOW_ADDRESS_LIMIT); |
| 834 | } | 834 | } |
| 835 | 835 | ||
| 836 | void * __init __alloc_bootmem_low_nopanic(unsigned long size, | ||
| 837 | unsigned long align, | ||
| 838 | unsigned long goal) | ||
| 839 | { | ||
| 840 | return ___alloc_bootmem_nopanic(size, align, goal, | ||
| 841 | ARCH_LOW_ADDRESS_LIMIT); | ||
| 842 | } | ||
| 843 | |||
| 836 | /** | 844 | /** |
| 837 | * __alloc_bootmem_low_node - allocate low boot memory from a specific node | 845 | * __alloc_bootmem_low_node - allocate low boot memory from a specific node |
| 838 | * @pgdat: node to allocate from | 846 | * @pgdat: node to allocate from |
diff --git a/mm/nobootmem.c b/mm/nobootmem.c index 03d152a76acf..5e07d36e381e 100644 --- a/mm/nobootmem.c +++ b/mm/nobootmem.c | |||
| @@ -391,6 +391,14 @@ void * __init __alloc_bootmem_low(unsigned long size, unsigned long align, | |||
| 391 | return ___alloc_bootmem(size, align, goal, ARCH_LOW_ADDRESS_LIMIT); | 391 | return ___alloc_bootmem(size, align, goal, ARCH_LOW_ADDRESS_LIMIT); |
| 392 | } | 392 | } |
| 393 | 393 | ||
| 394 | void * __init __alloc_bootmem_low_nopanic(unsigned long size, | ||
| 395 | unsigned long align, | ||
| 396 | unsigned long goal) | ||
| 397 | { | ||
| 398 | return ___alloc_bootmem_nopanic(size, align, goal, | ||
| 399 | ARCH_LOW_ADDRESS_LIMIT); | ||
| 400 | } | ||
| 401 | |||
| 394 | /** | 402 | /** |
| 395 | * __alloc_bootmem_low_node - allocate low boot memory from a specific node | 403 | * __alloc_bootmem_low_node - allocate low boot memory from a specific node |
| 396 | * @pgdat: node to allocate from | 404 | * @pgdat: node to allocate from |
