The purpose of this patch is to make kernel buildable with "gcc -ffunction-sections -fdata-sections". This patch fixes m68k architecture. Signed-off-by: Denys Vlasenko <vda.linux@xxxxxxxxxxxxxx> -- vda --- 0.org/arch/m68k/kernel/head.S Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68k/kernel/head.S Wed Jul 2 00:44:22 2008 @@ -577,7 +577,7 @@ #endif .endm -.section ".text.head","ax" +.section ".head.text","ax" ENTRY(_stext) /* * Version numbers of the bootinfo interface --- 0.org/arch/m68k/kernel/process.c Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68k/kernel/process.c Wed Jul 2 00:45:57 2008 @@ -48,7 +48,7 @@ EXPORT_SYMBOL(init_mm); union thread_union init_thread_union -__attribute__((section(".data.init_task"), aligned(THREAD_SIZE))) +__attribute__((section(".init_task.data"), aligned(THREAD_SIZE))) = { INIT_THREAD_INFO(init_task) }; /* initial task structure */ --- 0.org/arch/m68k/kernel/sun3-head.S Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68k/kernel/sun3-head.S Wed Jul 2 00:44:22 2008 @@ -29,7 +29,7 @@ .globl kernel_pg_dir .equ kernel_pg_dir,kernel_pmd_table - .section .text.head + .section .head.text ENTRY(_stext) ENTRY(_start) --- 0.org/arch/m68k/kernel/vmlinux-std.lds Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68k/kernel/vmlinux-std.lds Wed Jul 2 00:45:57 2008 @@ -11,7 +11,7 @@ . = 0x1000; _text = .; /* Text and read-only data */ .text : { - *(.text.head) + *(.head.text) TEXT_TEXT SCHED_TEXT LOCK_TEXT @@ -36,7 +36,7 @@ .bss : { *(.bss) } /* BSS */ . = ALIGN(16); - .data.cacheline_aligned : { *(.data.cacheline_aligned) } :data + .cacheline_aligned.data : { *(.cacheline_aligned.data) } :data _edata = .; /* End of data section */ @@ -76,7 +76,7 @@ . = ALIGN(8192); __init_end = .; - .data.init_task : { *(.data.init_task) } /* The initial task and kernel stack */ + .init_task.data : { *(.init_task.data) } /* The initial task and kernel stack */ _end = . ; --- 0.org/arch/m68k/kernel/vmlinux-sun3.lds Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68k/kernel/vmlinux-sun3.lds Wed Jul 2 00:45:57 2008 @@ -11,7 +11,7 @@ . = 0xE002000; _text = .; /* Text and read-only data */ .text : { - *(.text.head) + *(.head.text) TEXT_TEXT SCHED_TEXT LOCK_TEXT @@ -68,7 +68,7 @@ #endif . = ALIGN(8192); __init_end = .; - .data.init.task : { *(.data.init_task) } + .init.task.data : { *(.init_task.data) } .bss : { *(.bss) } /* BSS */ --- 0.org/arch/m68knommu/kernel/init_task.c Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68knommu/kernel/init_task.c Wed Jul 2 00:45:57 2008 @@ -37,6 +37,6 @@ * "init_task" linker map entry.. */ union thread_union init_thread_union - __attribute__((__section__(".data.init_task"))) = + __attribute__((__section__(".init_task.data"))) = { INIT_THREAD_INFO(init_task) }; --- 0.org/arch/m68knommu/kernel/vmlinux.lds.S Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68knommu/kernel/vmlinux.lds.S Wed Jul 2 00:45:57 2008 @@ -55,7 +55,7 @@ .romvec : { __rom_start = . ; _romvec = .; - *(.data.initvect) + *(.initvect.data) } > romvec #endif @@ -65,7 +65,7 @@ TEXT_TEXT SCHED_TEXT LOCK_TEXT - *(.text.lock) + *(.lock.text) . = ALIGN(16); /* Exception table */ __start___ex_table = .; @@ -147,7 +147,7 @@ _sdata = . ; DATA_DATA . = ALIGN(8192) ; - *(.data.init_task) + *(.init_task.data) _edata = . ; } > DATA --- 0.org/arch/m68knommu/platform/68360/head-ram.S Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68knommu/platform/68360/head-ram.S Wed Jul 2 00:45:57 2008 @@ -280,7 +280,7 @@ * and then overwritten as needed. */ -.section ".data.initvect","awx" +.section ".initvect.data","awx" .long RAMEND /* Reset: Initial Stack Pointer - 0. */ .long _start /* Reset: Initial Program Counter - 1. */ .long buserr /* Bus Error - 2. */ --- 0.org/arch/m68knommu/platform/68360/head-rom.S Wed Jul 2 00:40:40 2008 +++ 1.fixname/arch/m68knommu/platform/68360/head-rom.S Wed Jul 2 00:45:57 2008 @@ -291,7 +291,7 @@ * and then overwritten as needed. */ -.section ".data.initvect","awx" +.section ".initvect.data","awx" .long RAMEND /* Reset: Initial Stack Pointer - 0. */ .long _start /* Reset: Initial Program Counter - 1. */ .long buserr /* Bus Error - 2. */ -- To unsubscribe from this list: send the line "unsubscribe linux-embedded" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html