Skip to contentSkip to conversation

make section names compatible with -ffunction-sections -fdata-sections: ppc

PATCH In review Denys Vlasenko 2 participants 2 messages Jul 1, 2008 – Jul 2, 2008 Generic include/asm header files

lore
Share & tools
lore
#0 lore raw

PATCH 16/23 make section names compatible with -ffunction-sections -fdata-sections: ppc

The purpose of this patch is to make kernel buildable with "gcc -ffunction-sections -fdata-sections". This patch fixes ppc architecture.

--
vda

arch/ppc/boot/ld.script +1 -1
@@ -41,7 +41,7 @@
   {
     *(.data)
     *(.data1)
-    *(.data.boot)
+    *(.boot.data)
     *(.sdata)
     *(.sdata2)
     *(.got.plt) *(.got)
arch/ppc/boot/simple/misc-embedded.c +1 -1
@@ -60,7 +60,7 @@
 
 /* We need to make sure that this is before the images to ensure
  * that it's in a mapped location. - Tom */
-bd_t hold_resid_buf __attribute__ ((__section__ (".data.boot")));
+bd_t hold_resid_buf __attribute__ ((__section__ (".boot.data")));
 bd_t *hold_residual = &hold_resid_buf;
 
 extern unsigned long serial_init(int chan, bd_t *bp);
arch/ppc/boot/simple/openbios.c +1 -1
@@ -41,7 +41,7 @@
 
 /* We need to make sure that this is before the images to ensure
  * that it's in a mapped location. */
-bd_t hold_resid_buf __attribute__ ((__section__ (".data.boot")));
+bd_t hold_resid_buf __attribute__ ((__section__ (".boot.data")));
 bd_t *hold_residual = &hold_resid_buf;
 
 typedef struct openbios_board_info {
arch/ppc/boot/simple/pibs.c +1 -1
@@ -16,7 +16,7 @@
 
 /* We need to make sure that this is before the images to ensure
  * that it's in a mapped location. - Tom */
-bd_t hold_resid_buf __attribute__ ((__section__ (".data.boot")));
+bd_t hold_resid_buf __attribute__ ((__section__ (".boot.data")));
 bd_t *hold_residual = &hold_resid_buf;
 
 /* String functions lifted from lib/vsprintf.c and lib/ctype.c */
arch/ppc/kernel/vmlinux.lds.S +3 -3
@@ -78,18 +78,18 @@
 
   . = ALIGN(4096);
   __nosave_begin = .;
-  .data_nosave : { *(.data.nosave) }
+  .data_nosave : { *(.nosave.data) }
   . = ALIGN(4096);
   __nosave_end = .;
 
   . = ALIGN(32);
-  .data.cacheline_aligned : { *(.data.cacheline_aligned) }
+  .cacheline_aligned.data : { *(.cacheline_aligned.data) }
 
   _edata  =  .;
   PROVIDE (edata = .);
 
   . = ALIGN(8192);
-  .data.init_task : { *(.data.init_task) }
+  .init_task.data : { *(.init_task.data) }
 
   NOTES
 
#1 lore raw
Quoted 5 lines · On Wed, 2 Jul 2008 02:40:03 +0200 Denys Vlasenko <[email protected]>…

The purpose of this patch is to make kernel buildable with "gcc -ffunction-sections -fdata-sections". This patch fixes ppc architecture.

You can drop this one entirely. arch/ppc won't exist in 2.6.27. It has been removed in the powerpc tree already.

josh