[PATCH] lmb: Remove __init from lmb_end_of_DRAM()

Benjamin Herrenschmidt benh at kernel.crashing.org
Thu Aug 27 17:20:30 EST 2009

We call lmb_end_of_DRAM() to test whether a DMA mask
is ok on a machine without IOMMU, but this function is
marked as __init.

I don't think there's a clean way to get the top of RAM
max_pfn doesn't appear to include highmem or I missed
(or we have a bug :-) so for now, let's just avoid having
a broken 2.6.31 by making this function non-__init and we
can revisit later.

Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>

David, you use lmb too, any objection there ?

diff --git a/lib/lmb.c b/lib/lmb.c
index e4a6482..0343c05 100644
--- a/lib/lmb.c
+++ b/lib/lmb.c
@@ -429,7 +429,7 @@ u64 __init lmb_phys_mem_size(void)
 	return lmb.memory.size;
-u64 __init lmb_end_of_DRAM(void)
+u64 lmb_end_of_DRAM(void)
 	int idx = lmb.memory.cnt - 1;

More information about the Linuxppc-dev mailing list