summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Ellerman <michael@ellerman.id.au>2006-07-04 17:13:23 +1000
committerPaul Mackerras <paulus@samba.org>2006-07-07 20:19:16 +1000
commite7c1f69d4fa4da47dc995b5de64b6cb76ae32081 (patch)
treef28032f439eb7a0a667eb6ac969b008e3e317f2e
parent73ea6959b11821ba5ade77fb1d3d4aed52be3b67 (diff)
downloadlinux-e7c1f69d4fa4da47dc995b5de64b6cb76ae32081.tar.gz
linux-e7c1f69d4fa4da47dc995b5de64b6cb76ae32081.tar.bz2
linux-e7c1f69d4fa4da47dc995b5de64b6cb76ae32081.zip
[POWERPC] Fix mem= handling when the memory limit is > RMO size
There's a bug in my cleaned up mem= handling, if the memory limit is larger than the RMO size we'll erroneously enlarge the RMO size. Fix is to only change the RMO size if the memory limit is less than the current RMO value. Signed-off-by: Michael Ellerman <michael@ellerman.id.au> Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r--arch/powerpc/mm/lmb.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/powerpc/mm/lmb.c b/arch/powerpc/mm/lmb.c
index 4b17a7359924..716a2906a24d 100644
--- a/arch/powerpc/mm/lmb.c
+++ b/arch/powerpc/mm/lmb.c
@@ -320,7 +320,8 @@ void __init lmb_enforce_memory_limit(unsigned long memory_limit)
break;
}
- lmb.rmo_size = lmb.memory.region[0].size;
+ if (lmb.memory.region[0].size < lmb.rmo_size)
+ lmb.rmo_size = lmb.memory.region[0].size;
/* And truncate any reserves above the limit also. */
for (i = 0; i < lmb.reserved.cnt; i++) {