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

Signed-off-by: Denys Vlasenko <[EMAIL PROTECTED]>
--
vda


--- 0.org/arch/ppc/boot/ld.script       Wed Jul  2 00:40:41 2008
+++ 1.fixname/arch/ppc/boot/ld.script   Wed Jul  2 00:46:50 2008
@@ -41,7 +41,7 @@
   {
     *(.data)
     *(.data1)
-    *(.data.boot)
+    *(.boot.data)
     *(.sdata)
     *(.sdata2)
     *(.got.plt) *(.got)
--- 0.org/arch/ppc/boot/simple/misc-embedded.c  Wed Jul  2 00:40:41 2008
+++ 1.fixname/arch/ppc/boot/simple/misc-embedded.c      Wed Jul  2 00:46:50 2008
@@ -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);
--- 0.org/arch/ppc/boot/simple/openbios.c       Wed Jul  2 00:40:41 2008
+++ 1.fixname/arch/ppc/boot/simple/openbios.c   Wed Jul  2 00:46:50 2008
@@ -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 {
--- 0.org/arch/ppc/boot/simple/pibs.c   Wed Jul  2 00:40:41 2008
+++ 1.fixname/arch/ppc/boot/simple/pibs.c       Wed Jul  2 00:46:50 2008
@@ -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 */
--- 0.org/arch/ppc/kernel/vmlinux.lds.S Wed Jul  2 00:40:41 2008
+++ 1.fixname/arch/ppc/kernel/vmlinux.lds.S     Wed Jul  2 00:46:03 2008
@@ -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
 
--
To unsubscribe from this list: send the line "unsubscribe linux-embedded" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to