Commit 71c2742f authored by Bernhard Walle's avatar Bernhard Walle Committed by Linus Torvalds

Add return value to reserve_bootmem_node()

This patch changes the function reserve_bootmem_node() from void to int,
returning -ENOMEM if the allocation fails.

This fixes a build problem on x86 with CONFIG_KEXEC=y and
CONFIG_NEED_MULTIPLE_NODES=y
Signed-off-by: default avatarBernhard Walle <bwalle@suse.de>
Reported-by: default avatarAdrian Bunk <bunk@kernel.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent a1921443
...@@ -94,7 +94,7 @@ extern unsigned long init_bootmem_node(pg_data_t *pgdat, ...@@ -94,7 +94,7 @@ extern unsigned long init_bootmem_node(pg_data_t *pgdat,
unsigned long freepfn, unsigned long freepfn,
unsigned long startpfn, unsigned long startpfn,
unsigned long endpfn); unsigned long endpfn);
extern void reserve_bootmem_node(pg_data_t *pgdat, extern int reserve_bootmem_node(pg_data_t *pgdat,
unsigned long physaddr, unsigned long physaddr,
unsigned long size, unsigned long size,
int flags); int flags);
......
...@@ -442,15 +442,17 @@ unsigned long __init init_bootmem_node(pg_data_t *pgdat, unsigned long freepfn, ...@@ -442,15 +442,17 @@ unsigned long __init init_bootmem_node(pg_data_t *pgdat, unsigned long freepfn,
return init_bootmem_core(pgdat, freepfn, startpfn, endpfn); return init_bootmem_core(pgdat, freepfn, startpfn, endpfn);
} }
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) unsigned long size, int flags)
{ {
int ret; int ret;
ret = can_reserve_bootmem_core(pgdat->bdata, physaddr, size, flags); ret = can_reserve_bootmem_core(pgdat->bdata, physaddr, size, flags);
if (ret < 0) if (ret < 0)
return; return -ENOMEM;
reserve_bootmem_core(pgdat->bdata, physaddr, size, flags); reserve_bootmem_core(pgdat->bdata, physaddr, size, flags);
return 0;
} }
void __init free_bootmem_node(pg_data_t *pgdat, unsigned long physaddr, void __init free_bootmem_node(pg_data_t *pgdat, unsigned long physaddr,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment