aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2013-02-02 09:30:47 +0000
committerGabor Juhos <juhosg@openwrt.org>2013-02-02 09:30:47 +0000
commit668e5292203015b67e4485084d71f6aa6ff6f9f0 (patch)
tree33fca271033352f10873ed450cb8f18949efde35 /target/linux/generic
parent31af0dc18617c4cecf12d18a4d058e6c84dce343 (diff)
downloadupstream-668e5292203015b67e4485084d71f6aa6ff6f9f0.tar.gz
upstream-668e5292203015b67e4485084d71f6aa6ff6f9f0.tar.bz2
upstream-668e5292203015b67e4485084d71f6aa6ff6f9f0.zip
generic: fix gc_sections patch
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> SVN-Revision: 35447
Diffstat (limited to 'target/linux/generic')
-rw-r--r--target/linux/generic/patches-3.7/220-gc_sections.patch2
-rw-r--r--target/linux/generic/patches-3.8/220-gc_sections.patch2
2 files changed, 2 insertions, 2 deletions
diff --git a/target/linux/generic/patches-3.7/220-gc_sections.patch b/target/linux/generic/patches-3.7/220-gc_sections.patch
index 8a52a1eec8..bdafdfe9c6 100644
--- a/target/linux/generic/patches-3.7/220-gc_sections.patch
+++ b/target/linux/generic/patches-3.7/220-gc_sections.patch
@@ -115,7 +115,7 @@
BRANCH_PROFILE() \
- TRACE_PRINTKS()
+ TRACE_PRINTKS() \
-+ *(.data.*)
++ *(.data.[a-zA-Z_]*)
/*
* Data section helpers
diff --git a/target/linux/generic/patches-3.8/220-gc_sections.patch b/target/linux/generic/patches-3.8/220-gc_sections.patch
index 19c0f15923..0edba22757 100644
--- a/target/linux/generic/patches-3.8/220-gc_sections.patch
+++ b/target/linux/generic/patches-3.8/220-gc_sections.patch
@@ -115,7 +115,7 @@
BRANCH_PROFILE() \
- TRACE_PRINTKS()
+ TRACE_PRINTKS() \
-+ *(.data.*)
++ *(.data.[a-zA-Z_]*)
/*
* Data section helpers