memblock: Remove memblock_find()
Nobody uses it anymore. It's semantics were ... weird Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
Родитель
1e2b904026
Коммит
b693fffb18
|
@ -60,7 +60,6 @@ extern int memblock_is_memory(u64 addr);
|
|||
extern int memblock_is_region_memory(u64 base, u64 size);
|
||||
extern int __init memblock_is_reserved(u64 addr);
|
||||
extern int memblock_is_region_reserved(u64 base, u64 size);
|
||||
extern int memblock_find(struct memblock_region *res);
|
||||
|
||||
extern void memblock_dump_all(void);
|
||||
|
||||
|
|
|
@ -531,35 +531,3 @@ int memblock_is_region_reserved(u64 base, u64 size)
|
|||
return memblock_overlaps_region(&memblock.reserved, base, size) >= 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Given a <base, len>, find which memory regions belong to this range.
|
||||
* Adjust the request and return a contiguous chunk.
|
||||
*/
|
||||
int memblock_find(struct memblock_region *res)
|
||||
{
|
||||
int i;
|
||||
u64 rstart, rend;
|
||||
|
||||
rstart = res->base;
|
||||
rend = rstart + res->size - 1;
|
||||
|
||||
for (i = 0; i < memblock.memory.cnt; i++) {
|
||||
u64 start = memblock.memory.regions[i].base;
|
||||
u64 end = start + memblock.memory.regions[i].size - 1;
|
||||
|
||||
if (start > rend)
|
||||
return -1;
|
||||
|
||||
if ((end >= rstart) && (start < rend)) {
|
||||
/* adjust the request */
|
||||
if (rstart < start)
|
||||
rstart = start;
|
||||
if (rend > end)
|
||||
rend = end;
|
||||
res->base = rstart;
|
||||
res->size = rend - rstart + 1;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче