summaryrefslogtreecommitdiffstats
path: root/lib/lmb.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2008-04-23 23:30:59 -0700
committerDavid S. Miller <davem@davemloft.net>2008-04-23 23:30:59 -0700
commit7347aefbccb47ce2d076d8ac7dff2cdd1435974c (patch)
tree1099122c0fd687ada9a9d0d20949a6df58a2c971 /lib/lmb.c
parent807501475fce0ebe68baedf87f202c3e4ee0d12c (diff)
downloadlinux-7347aefbccb47ce2d076d8ac7dff2cdd1435974c.tar.gz
linux-7347aefbccb47ce2d076d8ac7dff2cdd1435974c.tar.bz2
linux-7347aefbccb47ce2d076d8ac7dff2cdd1435974c.zip
[LMB]: Fix lmb allocation regression.
Changeset d9024df02ffe74d723d97d552f86de3b34beb8cc ("[LMB] Restructure allocation loops to avoid unsigned underflow") removed the alignment of the 'size' argument to call lmb_add_region() done by __lmb_alloc_base(). In doing so it reintroduced the bug fixed by changeset eea89e13a9c61d3928223d2f9bf2295e22e0efb6 ("[LMB]: Fix bug in __lmb_alloc_base()."). This puts it back. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'lib/lmb.c')
-rw-r--r--lib/lmb.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/lmb.c b/lib/lmb.c
index 896e2832099e..207147ab25e4 100644
--- a/lib/lmb.c
+++ b/lib/lmb.c
@@ -346,7 +346,7 @@ u64 __init __lmb_alloc_base(u64 size, u64 align, u64 max_addr)
if (j < 0) {
/* this area isn't reserved, take it */
if (lmb_add_region(&lmb.reserved, base,
- size) < 0)
+ lmb_align_up(size, align)) < 0)
return 0;
return base;
}