diff options
Diffstat (limited to 'include/asm-generic/vmlinux.lds.h')
-rw-r--r-- | include/asm-generic/vmlinux.lds.h | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index 0c6387d6a6ae..bd69d79208de 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h | |||
@@ -150,16 +150,13 @@ | |||
150 | #define DATA_DATA \ | 150 | #define DATA_DATA \ |
151 | *(.data) \ | 151 | *(.data) \ |
152 | *(.ref.data) \ | 152 | *(.ref.data) \ |
153 | *(.data..shared_aligned) /* percpu related */ \ | ||
153 | DEV_KEEP(init.data) \ | 154 | DEV_KEEP(init.data) \ |
154 | DEV_KEEP(exit.data) \ | 155 | DEV_KEEP(exit.data) \ |
155 | CPU_KEEP(init.data) \ | 156 | CPU_KEEP(init.data) \ |
156 | CPU_KEEP(exit.data) \ | 157 | CPU_KEEP(exit.data) \ |
157 | MEM_KEEP(init.data) \ | 158 | MEM_KEEP(init.data) \ |
158 | MEM_KEEP(exit.data) \ | 159 | MEM_KEEP(exit.data) \ |
159 | . = ALIGN(8); \ | ||
160 | VMLINUX_SYMBOL(__start___markers) = .; \ | ||
161 | *(__markers) \ | ||
162 | VMLINUX_SYMBOL(__stop___markers) = .; \ | ||
163 | . = ALIGN(32); \ | 160 | . = ALIGN(32); \ |
164 | VMLINUX_SYMBOL(__start___tracepoints) = .; \ | 161 | VMLINUX_SYMBOL(__start___tracepoints) = .; \ |
165 | *(__tracepoints) \ | 162 | *(__tracepoints) \ |
@@ -224,6 +221,8 @@ | |||
224 | \ | 221 | \ |
225 | BUG_TABLE \ | 222 | BUG_TABLE \ |
226 | \ | 223 | \ |
224 | JUMP_TABLE \ | ||
225 | \ | ||
227 | /* PCI quirks */ \ | 226 | /* PCI quirks */ \ |
228 | .pci_fixup : AT(ADDR(.pci_fixup) - LOAD_OFFSET) { \ | 227 | .pci_fixup : AT(ADDR(.pci_fixup) - LOAD_OFFSET) { \ |
229 | VMLINUX_SYMBOL(__start_pci_fixups_early) = .; \ | 228 | VMLINUX_SYMBOL(__start_pci_fixups_early) = .; \ |
@@ -567,6 +566,14 @@ | |||
567 | #define BUG_TABLE | 566 | #define BUG_TABLE |
568 | #endif | 567 | #endif |
569 | 568 | ||
569 | #define JUMP_TABLE \ | ||
570 | . = ALIGN(8); \ | ||
571 | __jump_table : AT(ADDR(__jump_table) - LOAD_OFFSET) { \ | ||
572 | VMLINUX_SYMBOL(__start___jump_table) = .; \ | ||
573 | *(__jump_table) \ | ||
574 | VMLINUX_SYMBOL(__stop___jump_table) = .; \ | ||
575 | } | ||
576 | |||
570 | #ifdef CONFIG_PM_TRACE | 577 | #ifdef CONFIG_PM_TRACE |
571 | #define TRACEDATA \ | 578 | #define TRACEDATA \ |
572 | . = ALIGN(4); \ | 579 | . = ALIGN(4); \ |
@@ -630,7 +637,7 @@ | |||
630 | 637 | ||
631 | #ifdef CONFIG_BLK_DEV_INITRD | 638 | #ifdef CONFIG_BLK_DEV_INITRD |
632 | #define INIT_RAM_FS \ | 639 | #define INIT_RAM_FS \ |
633 | . = ALIGN(PAGE_SIZE); \ | 640 | . = ALIGN(4); \ |
634 | VMLINUX_SYMBOL(__initramfs_start) = .; \ | 641 | VMLINUX_SYMBOL(__initramfs_start) = .; \ |
635 | *(.init.ramfs) \ | 642 | *(.init.ramfs) \ |
636 | . = ALIGN(8); \ | 643 | . = ALIGN(8); \ |
@@ -654,6 +661,7 @@ | |||
654 | EXIT_DATA \ | 661 | EXIT_DATA \ |
655 | EXIT_CALL \ | 662 | EXIT_CALL \ |
656 | *(.discard) \ | 663 | *(.discard) \ |
664 | *(.discard.*) \ | ||
657 | } | 665 | } |
658 | 666 | ||
659 | /** | 667 | /** |
@@ -681,7 +689,9 @@ | |||
681 | - LOAD_OFFSET) { \ | 689 | - LOAD_OFFSET) { \ |
682 | VMLINUX_SYMBOL(__per_cpu_start) = .; \ | 690 | VMLINUX_SYMBOL(__per_cpu_start) = .; \ |
683 | *(.data..percpu..first) \ | 691 | *(.data..percpu..first) \ |
692 | . = ALIGN(PAGE_SIZE); \ | ||
684 | *(.data..percpu..page_aligned) \ | 693 | *(.data..percpu..page_aligned) \ |
694 | *(.data..percpu..readmostly) \ | ||
685 | *(.data..percpu) \ | 695 | *(.data..percpu) \ |
686 | *(.data..percpu..shared_aligned) \ | 696 | *(.data..percpu..shared_aligned) \ |
687 | VMLINUX_SYMBOL(__per_cpu_end) = .; \ | 697 | VMLINUX_SYMBOL(__per_cpu_end) = .; \ |
@@ -707,7 +717,9 @@ | |||
707 | VMLINUX_SYMBOL(__per_cpu_load) = .; \ | 717 | VMLINUX_SYMBOL(__per_cpu_load) = .; \ |
708 | VMLINUX_SYMBOL(__per_cpu_start) = .; \ | 718 | VMLINUX_SYMBOL(__per_cpu_start) = .; \ |
709 | *(.data..percpu..first) \ | 719 | *(.data..percpu..first) \ |
720 | . = ALIGN(PAGE_SIZE); \ | ||
710 | *(.data..percpu..page_aligned) \ | 721 | *(.data..percpu..page_aligned) \ |
722 | *(.data..percpu..readmostly) \ | ||
711 | *(.data..percpu) \ | 723 | *(.data..percpu) \ |
712 | *(.data..percpu..shared_aligned) \ | 724 | *(.data..percpu..shared_aligned) \ |
713 | VMLINUX_SYMBOL(__per_cpu_end) = .; \ | 725 | VMLINUX_SYMBOL(__per_cpu_end) = .; \ |