Commit da5e37ef authored by Sam Ravnborg's avatar Sam Ravnborg Committed by Benjamin Herrenschmidt

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.
Reported-by: default avatarSean MacLennan <smaclennan@pikatech.com>
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
parent 3fdfd990
...@@ -435,7 +435,7 @@ ...@@ -435,7 +435,7 @@
*/ */
#define INIT_TASK_DATA_SECTION(align) \ #define INIT_TASK_DATA_SECTION(align) \
. = ALIGN(align); \ . = ALIGN(align); \
.data..init_task : { \ .data..init_task : AT(ADDR(.data..init_task) - LOAD_OFFSET) { \
INIT_TASK_DATA(align) \ INIT_TASK_DATA(align) \
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment