Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

alpha: use .data.init_task instead of .data.init_thread.

alpha is the only architecture that uses the section name
.data.init_thread instead of .data.init_task. So convert alpha to use
.data.init_task like everything else.

.data.init_task does not need a separate output section; this change
also moves it into the .data output section.

Signed-off-by: Tim Abbott <tabbott@mit.edu>
Cc: Richard Henderson <rth@twiddle.net>
Cc: linux-alpha@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Tim Abbott and committed by
Linus Torvalds
ea12c2ed 62bef288

+4 -8
+2 -3
arch/alpha/kernel/init_task.c
··· 13 13 struct task_struct init_task = INIT_TASK(init_task); 14 14 EXPORT_SYMBOL(init_task); 15 15 16 - union thread_union init_thread_union 17 - __attribute__((section(".data.init_thread"))) 18 - = { INIT_THREAD_INFO(init_task) }; 16 + union thread_union init_thread_union __init_task_data = 17 + { INIT_THREAD_INFO(init_task) };
+2 -5
arch/alpha/kernel/vmlinux.lds.S
··· 1 1 #include <asm-generic/vmlinux.lds.h> 2 2 #include <asm/page.h> 3 + #include <asm/thread_info.h> 3 4 4 5 OUTPUT_FORMAT("elf64-alpha") 5 6 OUTPUT_ARCH(alpha) ··· 93 92 __init_end = .; 94 93 /* Freed after init ends here */ 95 94 96 - /* Note 2 page alignment above. */ 97 - .data.init_thread : { 98 - *(.data.init_thread) 99 - } 100 - 101 95 . = ALIGN(PAGE_SIZE); 102 96 .data.page_aligned : { 103 97 *(.data.page_aligned) ··· 106 110 _data = .; 107 111 /* Data */ 108 112 .data : { 113 + INIT_TASK_DATA(THREAD_SIZE) 109 114 DATA_DATA 110 115 CONSTRUCTORS 111 116 }