Hi Russell, On Wed, Feb 16, 2011 at 4:35 PM, Dave Martin <dave.martin@xxxxxxxxxx> wrote: > Hi, > > On Fri, Feb 11, 2011 at 04:32:47PM +0000, Russell King - ARM Linux wrote: > > [...] > >> diff --git a/arch/arm/kernel/vmlinux.lds.S b/arch/arm/kernel/vmlinux.lds.S >> index 45b5651..343d29f 100644 >> --- a/arch/arm/kernel/vmlinux.lds.S >> +++ b/arch/arm/kernel/vmlinux.lds.S >> @@ -21,6 +21,12 @@ >> #define ARM_CPU_KEEP(x) >> #endif >> >> +#if defined(CONFIG_SMP_ON_UP) && !defined(CONFIG_DEBUG_SPINLOCK) >> +#define ARM_EXIT_KEEP(x) x >> +#else >> +#define ARM_EXIT_KEEP(x) >> +#endif >> + >> OUTPUT_ARCH(arm) >> ENTRY(stext) >> >> @@ -43,6 +49,7 @@ SECTIONS >> _sinittext = .; >> HEAD_TEXT >> INIT_TEXT >> + ARM_EXIT_KEEP(EXIT_TEXT) >> _einittext = .; >> ARM_CPU_DISCARD(PROC_INFO) >> __arch_info_begin = .; >> @@ -71,6 +78,7 @@ SECTIONS >> #ifndef CONFIG_XIP_KERNEL >> __init_begin = _stext; >> INIT_DATA >> + ARM_EXIT_KEEP(EXIT_DATA) >> #endif >> } >> >> @@ -166,6 +174,7 @@ SECTIONS >> . = ALIGN(PAGE_SIZE); >> __init_begin = .; >> INIT_DATA >> + ARM_EXIT_KEEP(EXIT_DATA) >> . = ALIGN(PAGE_SIZE); >> __init_end = .; >> #endif >> >> _______________________________________________ >> linux-arm-kernel mailing list >> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx >> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel > > This works for me in a case known to fail without the patch. > > Tested-by: Dave Martin <dave.martin@xxxxxxxxxx> > > I still don't quite understand the intricacies of how vmlinux > is laid out, but the patch looks sensible. > > Do you need anything more from me on this? If not, I will > throw away my patch and replace it with yours. Are you still intending to merge your patch here? I don't see it anywhere yet, but I would like to get rid of my hack (which is rather messy). Cheers ---Dave -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html