forked from Minki/linux
b52c17ce85
It will return free memory size in specified range. We can not use memory_size - reserved_size here, because some reserved area may not be in the scope of memblock.memory.region. Use memblock.memory.region subtracting memblock.reserved.region to get free range array. then count size of all free ranges. -v2: Ben insist on using _in_range Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
21 lines
708 B
C
21 lines
708 B
C
#ifndef _X86_MEMBLOCK_H
|
|
#define _X86_MEMBLOCK_H
|
|
|
|
#define ARCH_DISCARD_MEMBLOCK
|
|
|
|
u64 memblock_x86_find_in_range_size(u64 start, u64 *sizep, u64 align);
|
|
void memblock_x86_to_bootmem(u64 start, u64 end);
|
|
|
|
void memblock_x86_reserve_range(u64 start, u64 end, char *name);
|
|
void memblock_x86_free_range(u64 start, u64 end);
|
|
struct range;
|
|
int get_free_all_memory_range(struct range **rangep, int nodeid);
|
|
|
|
void memblock_x86_register_active_regions(int nid, unsigned long start_pfn,
|
|
unsigned long last_pfn);
|
|
u64 memblock_x86_hole_size(u64 start, u64 end);
|
|
u64 memblock_x86_find_in_range_node(int nid, u64 start, u64 end, u64 size, u64 align);
|
|
u64 memblock_x86_free_memory_in_range(u64 addr, u64 limit);
|
|
|
|
#endif
|