Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

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
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -94,7 +94,7 @@ extern unsigned long init_bootmem_node(pg_data_t *pgdat,
				       unsigned long freepfn,
				       unsigned long startpfn,
				       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 size,
				 int flags);
+4 −2
Original line number Diff line number Diff line
@@ -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);
}

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;
}

void __init free_bootmem_node(pg_data_t *pgdat, unsigned long physaddr,