powerpc: fix .data..init_task output section
PATCH 1/1 powerpc: fix .data..init_task output section
=46rom 851e645a7eee68380caaf026eb6d3be118876370 Mon Sep 17 00:00:00 2001
From: Sam Ravnborg <[email protected]>
Date: Tue, 13 Jul 2010 11:39:42 +0200
Subject: [PATCH] vmlinux.lds: fix .data..init_task output section (fix popwerpc boot)
The .data..init_task output section was missing a load offset causing a popwerpc target to fail to boot.
Sean MacLennan tracked it down to the definition of INIT_TASK_DATA_SECTION().
There are only two users of INIT_TASK_DATA_SECTION() in the kernel today: cris and popwerpc.
cris do not support relocatable kernels and is thus not impacted by this change.
Fix INIT_TASK_DATA_SECTION() to specify load offset like all other output sections.
--- include/asm-generic/vmlinux.lds.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
(quoted diff) +0 -0
b/include/asm-generic/vmlinux.lds.h index 48c5299..cdfff74 100644
include/asm-generic/vmlinux.lds.h +0 -0
@@ -435,7 +435,7 @@*/ #define
INIT_TASK_DATA_SECTION(align)
\ . =3D ALIGN(align); \
- .data..init_task :
{ \
+ .data..init_task : AT(ADDR(.data..init_task) - LOAD_OFFSET)
{ \ INIT_TASK_DATA(align)
\ }
=20
--=20
1.6.0.6
=46rom 851e645a7eee68380caaf026eb6d3be118876370 Mon Sep 17 00:00:00 2001
From: Sam Ravnborg <[email protected]>
Date: Tue, 13 Jul 2010 11:39:42 +0200
Subject: [PATCH] vmlinux.lds: fix .data..init_task output section (fix popw= erpc boot)
The .data..init_task output section was missing a load offset causing a popwerpc target to fail to boot.
Sean MacLennan tracked it down to the definition of INIT_TASK_DATA_SECTION().
There are only two users of INIT_TASK_DATA_SECTION() in the kernel today: cris and popwerpc.
cris do not support relocatable kernels and is thus not impacted by this change.
Fix INIT_TASK_DATA_SECTION() to specify load offset like all other output sections.
--- include/asm-generic/vmlinux.lds.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
include/asm-generic/vmlinu= renamed from include/asm-generic/vmlinux.lds.h +0 -0
x.lds.h
index 48c5299..cdfff74 100644
include/asm-generic/vmlinux.lds.h +1 -1
@@ -435,7 +435,7 @@*/ #define INIT_TASK_DATA_SECTION (align) \ . =3D ALIGN(align); \ - .data..init_task : { \ + .data..init_task : AT(ADDR(.data..init_task) - LOAD_OFFSET) { \ INIT_TASK_DATA(align) \ }
=20
--=20
1.6.0.6