Hi Ithamar,
Ithamar R. Adema wrote:
On some architectures VECTORS_BASE is an address in SRAM, potentially
lower then DRAM_BASE. In older kernels (at least before 2.6.29) when
bootmem was passed such an address, it failed silently. These days,
it'll fail with a BUG() macro, causing booting to stop. To fix this,
don't reserve the VECTORS_BASE range if VECTORS_BASE < DRAM_BASE.
Would the following patch be acceptable?
Looks ok to me. I will apply for uClinux-dist.
If you want that to go into mainline kernels you will need
to send it to the linux-arm-kernel list (and once ok'ed
into rmk's patch system).
Regards
Greg
--- linux-2.6.x/arch/arm/mm/nommu.c 2009-08-12 13:03:57.000000000 +0200
+++ linux-2.6.x-lpc22xx/arch/arm/mm/nommu.c 2009-08-12
14:16:59.000000000 +0200
@@ -33,6 +33,7 @@ void __init reserve_node_zero(pg_data_t
BOOTMEM_DEFAULT);
#endif
+#if !defined(CONFIG_DRAM_BASE) || (CONFIG_VECTORS_BASE >=
CONFIG_DRAM_BASE)
/*
* Register the exception vector page.
* some architectures which the DRAM is the exception vector to trap,
@@ -40,6 +41,7 @@ void __init reserve_node_zero(pg_data_t
*/
reserve_bootmem_node(pgdat, CONFIG_VECTORS_BASE, PAGE_SIZE,
BOOTMEM_DEFAULT);
+#endif
}
/*
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev
--
------------------------------------------------------------------------
Greg Ungerer -- Principal Engineer EMAIL: [email protected]
SnapGear Group, McAfee PHONE: +61 7 3435 2888
825 Stanley St, FAX: +61 7 3891 3630
Woolloongabba, QLD, 4102, Australia WEB: http://www.SnapGear.com
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev