mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 18:13:41 +02:00
[PATCH] ppc64: Simplify some lmb functions
lmb_phys_mem_size() can always return lmb.memory.size, as long as it's called after lmb_analyze(), which it is. There's no need to recalculate the size on every call. lmb_analyze() was calculating a few things we then threw away, so just don't calculate them to start with. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
180379dcef
commit
71e1f55ad4
|
|
@ -119,20 +119,12 @@ lmb_init(void)
|
||||||
void __init
|
void __init
|
||||||
lmb_analyze(void)
|
lmb_analyze(void)
|
||||||
{
|
{
|
||||||
unsigned long i;
|
int i;
|
||||||
unsigned long mem_size = 0;
|
|
||||||
unsigned long size_mask = 0;
|
|
||||||
|
|
||||||
for (i=0; i < lmb.memory.cnt; i++) {
|
lmb.memory.size = 0;
|
||||||
unsigned long lmb_size;
|
|
||||||
|
|
||||||
lmb_size = lmb.memory.region[i].size;
|
for (i = 0; i < lmb.memory.cnt; i++)
|
||||||
|
lmb.memory.size += lmb.memory.region[i].size;
|
||||||
mem_size += lmb_size;
|
|
||||||
size_mask |= lmb_size;
|
|
||||||
}
|
|
||||||
|
|
||||||
lmb.memory.size = mem_size;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* This routine called with relocation disabled. */
|
/* This routine called with relocation disabled. */
|
||||||
|
|
@ -266,20 +258,11 @@ lmb_alloc_base(unsigned long size, unsigned long align, unsigned long max_addr)
|
||||||
return base;
|
return base;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* You must call lmb_analyze() before this. */
|
||||||
unsigned long __init
|
unsigned long __init
|
||||||
lmb_phys_mem_size(void)
|
lmb_phys_mem_size(void)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_MSCHUNKS
|
|
||||||
return lmb.memory.size;
|
return lmb.memory.size;
|
||||||
#else
|
|
||||||
unsigned long total = 0;
|
|
||||||
int i;
|
|
||||||
|
|
||||||
/* add all physical memory to the bootmem map */
|
|
||||||
for (i=0; i < lmb.memory.cnt; i++)
|
|
||||||
total += lmb.memory.region[i].size;
|
|
||||||
return total;
|
|
||||||
#endif /* CONFIG_MSCHUNKS */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
unsigned long __init
|
unsigned long __init
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user