[PATCH 24/25] lmb: Make lmb_alloc_try_nid() fallback to LMB_ALLOC_ANYWHERE

From: Benjamin Herrenschmidt
Date: Mon May 10 2010 - 05:47:05 EST


lmb_alloc_nid() used to fallback to allocating anywhere by using
lmb_alloc() as a fallback.

However, some of my previous patches limit lmb_alloc() to the region
covered by LMB_ALLOC_ACCESSIBLE which is not quite what we want
for lmb_alloc_try_nid().

So we fix it by explicitely using LMB_ALLOC_ANYWHERE.

Not that so far only sparc uses lmb_alloc_nid() and it hasn't been updated
to clamp the accessible zone yet. Thus the temporary "breakage" should have
no effect.

Signed-off-by: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>
---
lib/lmb.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/lib/lmb.c b/lib/lmb.c
index fd98261..6c38c87 100644
--- a/lib/lmb.c
+++ b/lib/lmb.c
@@ -531,7 +531,7 @@ phys_addr_t __init lmb_alloc_try_nid(phys_addr_t size, phys_addr_t align, int ni

if (res)
return res;
- return lmb_alloc(size, align);
+ return lmb_alloc_base(size, align, LMB_ALLOC_ANYWHERE);
}


--
1.6.3.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/