From: Andrew Morton Cc: Johannes Weiner Cc: Bernhard Walle Cc: Ingo Molnar Signed-off-by: Andrew Morton --- include/linux/bootmem.h | 2 +- mm/bootmem.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff -puN include/linux/bootmem.h~revert-linux-next-revert-bootmem-add-return-value-to-reserve_bootmem_node include/linux/bootmem.h --- a/include/linux/bootmem.h~revert-linux-next-revert-bootmem-add-return-value-to-reserve_bootmem_node +++ a/include/linux/bootmem.h @@ -67,7 +67,7 @@ extern void free_bootmem(unsigned long a #define BOOTMEM_DEFAULT 0 #define BOOTMEM_EXCLUSIVE (1<<0) -extern void reserve_bootmem_node(pg_data_t *pgdat, +extern int reserve_bootmem_node(pg_data_t *pgdat, unsigned long physaddr, unsigned long size, int flags); diff -puN mm/bootmem.c~revert-linux-next-revert-bootmem-add-return-value-to-reserve_bootmem_node mm/bootmem.c --- a/mm/bootmem.c~revert-linux-next-revert-bootmem-add-return-value-to-reserve_bootmem_node +++ a/mm/bootmem.c @@ -323,15 +323,16 @@ static void __init reserve_bootmem_core( } } -void __init reserve_bootmem_node(pg_data_t *pgdat, unsigned long physaddr, +int __init reserve_bootmem_node(pg_data_t *pgdat, unsigned long physaddr, unsigned long size, int flags) { int ret; ret = can_reserve_bootmem_core(pgdat->bdata, physaddr, size, flags); if (ret < 0) - return; + return -ENOMEM; reserve_bootmem_core(pgdat->bdata, physaddr, size, flags); + return 0; } #ifndef CONFIG_HAVE_ARCH_BOOTMEM_NODE _