generic: fix gc_sections patch
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 2 Feb 2013 09:30:47 +0000 (09:30 +0000)
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 2 Feb 2013 09:30:47 +0000 (09:30 +0000)
Due to the patch, essential '.data..*' sections are merged
into the '.data' section:

  --- vmlinux.good.sect   2013-02-01 23:49:16.000000000 +0100
  +++ vmlinux.bad.sect    2013-02-01 23:49:02.000000000 +0100
  @@ -1,5 +1,5 @@

  -vmlinux.good:     file format elf32-powerpc
  +vmlinux.bad:     file format elf32-powerpc

   Sections:
   Idx Name          Size      VMA       LMA       File off  Algn
  @@ -53,43 +53,35 @@
                     CONTENTS, ALLOC, LOAD, READONLY, DATA
    24 .machine.desc 00000460  c04e1000  004e1000  004f1000  2**2
                     CONTENTS, ALLOC, LOAD, DATA
  - 25 .data         0000f6a0  c04e2000  004e2000  004f2000  2**12
  + 25 .data         0001635c  c04e2000  004e2000  004f2000  2**12
                     CONTENTS, ALLOC, LOAD, DATA
  - 26 .data..init_task 00002000  c04f2000  004f2000  00502000  2**3
  -                  CONTENTS, ALLOC, LOAD, DATA
  - 27 .data..page_aligned 00002000  c04f4000  004f4000  00504000  2**12
  -                  CONTENTS, ALLOC, LOAD, DATA
  - 28 .data..cacheline_aligned 00000c00  c04f6000  004f6000  00506000
    2**5
  -                  CONTENTS, ALLOC, LOAD, DATA
  - 29 .data..read_mostly 000015e0  c04f6c00  004f6c00  00506c00  2**3
  -                  CONTENTS, ALLOC, LOAD, DATA
  - 30 .sbss         000002e0  c04f9000  004f9000  005081e0  2**3
  + 26 .sbss         000002e0  c04fa000  004fa000  0050835c  2**3
  <...>

This causes boot hang on powerpc. Modify the patch to
ensure that the kernel specific '.data..*' sections
remain separate.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35447 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/generic/patches-3.7/220-gc_sections.patch
target/linux/generic/patches-3.8/220-gc_sections.patch

index 8a52a1e..bdafdfe 100644 (file)
        BRANCH_PROFILE()                                                \
 -      TRACE_PRINTKS()
 +      TRACE_PRINTKS()                                                 \
-+      *(.data.*)
++      *(.data.[a-zA-Z_]*)
  
  /*
   * Data section helpers
index 19c0f15..0edba22 100644 (file)
        BRANCH_PROFILE()                                                \
 -      TRACE_PRINTKS()
 +      TRACE_PRINTKS()                                                 \
-+      *(.data.*)
++      *(.data.[a-zA-Z_]*)
  
  /*
   * Data section helpers