diff --git a/arch/alpha/kernel/init_task.c b/arch/alpha/kernel/init_task.c index 19b86328ffd7..6f80ca4f9766 100644 --- a/arch/alpha/kernel/init_task.c +++ b/arch/alpha/kernel/init_task.c @@ -13,6 +13,5 @@ static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); struct task_struct init_task = INIT_TASK(init_task); EXPORT_SYMBOL(init_task); -union thread_union init_thread_union - __attribute__((section(".data.init_thread"))) - = { INIT_THREAD_INFO(init_task) }; +union thread_union init_thread_union __init_task_data = + { INIT_THREAD_INFO(init_task) }; diff --git a/arch/alpha/kernel/vmlinux.lds.S b/arch/alpha/kernel/vmlinux.lds.S index 6dc03c35caa0..82803df17977 100644 --- a/arch/alpha/kernel/vmlinux.lds.S +++ b/arch/alpha/kernel/vmlinux.lds.S @@ -1,5 +1,6 @@ #include #include +#include OUTPUT_FORMAT("elf64-alpha") OUTPUT_ARCH(alpha) @@ -92,11 +93,6 @@ SECTIONS __init_end = .; /* Freed after init ends here */ - /* Note 2 page alignment above. */ - .data.init_thread : { - *(.data.init_thread) - } - . = ALIGN(PAGE_SIZE); .data.page_aligned : { *(.data.page_aligned) @@ -110,6 +106,7 @@ SECTIONS _data = .; /* Data */ .data : { + INIT_TASK_DATA(THREAD_SIZE) DATA_DATA CONSTRUCTORS }