On Mon, Jul 12, 2010 at 08:34:35PM -0400, Sean MacLennan wrote: > On Mon, 28 Jun 2010 00:59:00 -0400 > Sean MacLennan <smaclen...@pikatech.com> wrote: > > > Anybody else seeing these messages? > > > > ppc_4xxFP-ld: .tmp_vmlinux1: section .data..init_task lma 0xc0374000 > > overlaps previous sections ppc_4xxFP-ld: .tmp_vmlinux2: > > section .data..init_task lma 0xc03a2000 overlaps previous sections > > ppc_4xxFP-ld: vmlinux: section .data..init_task lma 0xc03a2000 > > overlaps previous sections > > > > Or does anybody know what they mean? They started showing up in > > 2.6.35. > > > > Very easy to reproduce, so don't hesitate to ask for more info. > > I had a bit of time, so I tracked this down. This patch seems to be > the culprit: http://lkml.org/lkml/2010/2/19/366 > > Specifically, this code: > > /* The initial task and kernel stack */ > - .data.init_task : AT(ADDR(.data.init_task) - LOAD_OFFSET) { > - INIT_TASK_DATA(THREAD_SIZE) > - } > + INIT_TASK_DATA_SECTION(THREAD_SIZE) > > If I change it back to: > > /* The initial task and kernel stack */ > .data..init_task : AT(ADDR(.data..init_task) - LOAD_OFFSET) { > INIT_TASK_DATA(THREAD_SIZE) > } > > not only do the warnings go away, but the kernel now boots again!
It looks like a missing AT() in the output section. The following patch should also fix it. Please test and let us know. Thanks, Sam diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index 48c5299..3c4bf03 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h @@ -435,7 +435,7 @@ */ #define INIT_TASK_DATA_SECTION(align) \ . = ALIGN(align); \ - .data..init_task : { \ + .data..init_task : AT(ADDR(.data..init_task) - LOAD_OFFSET) { \ INIT_TASK_DATA(align) \ } _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev