]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blame - arch/mn10300/kernel/vmlinux.lds.S
MN10300: die_if_no_fixup() shouldn't use get_user() as it doesn't call set_fs()
[mirror_ubuntu-zesty-kernel.git] / arch / mn10300 / kernel / vmlinux.lds.S
CommitLineData
b920de1b
DH
1/* MN10300 Main kernel linker script
2 *
3 * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.
4 * Written by David Howells (dhowells@redhat.com)
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public Licence
8 * as published by the Free Software Foundation; either version
9 * 2 of the Licence, or (at your option) any later version.
10 */
11#define __VMLINUX_LDS__
12#include <asm-generic/vmlinux.lds.h>
13#include <asm/thread_info.h>
cb32898c 14#include <asm/page.h>
b920de1b
DH
15
16OUTPUT_FORMAT("elf32-am33lin", "elf32-am33lin", "elf32-am33lin")
17OUTPUT_ARCH(mn10300)
18ENTRY(_start)
19jiffies = jiffies_64;
20#ifndef CONFIG_MN10300_CURRENT_IN_E2
21current = __current;
22#endif
23SECTIONS
24{
25 . = CONFIG_KERNEL_TEXT_ADDRESS;
26 /* read-only */
27 _stext = .;
28 _text = .; /* Text and read-only data */
29 .text : {
9760f8fc 30 HEAD_TEXT
b920de1b
DH
31 TEXT_TEXT
32 SCHED_TEXT
33 LOCK_TEXT
34 KPROBES_TEXT
35 *(.fixup)
36 *(.gnu.warning)
37 } = 0xcb
38
39 _etext = .; /* End of text section */
40
2e8b5a09 41 EXCEPTION_TABLE(16)
b920de1b
DH
42 BUG_TABLE
43
2e8b5a09 44 RO_DATA(PAGE_SIZE)
b920de1b
DH
45
46 /* writeable */
4295f8b3
TA
47 RW_DATA_SECTION(32, PAGE_SIZE, THREAD_SIZE)
48 _edata = .;
b920de1b
DH
49
50 /* might get freed after init */
cb32898c 51 . = ALIGN(PAGE_SIZE);
b920de1b
DH
52 .smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) {
53 __smp_locks = .;
54 *(.smp_locks)
55 __smp_locks_end = .;
56 }
57
58 /* will be freed after init */
cb32898c 59 . = ALIGN(PAGE_SIZE); /* Init code and data */
b920de1b 60 __init_begin = .;
4295f8b3
TA
61 INIT_TEXT_SECTION(PAGE_SIZE)
62 INIT_DATA_SECTION(16)
b920de1b
DH
63 . = ALIGN(4);
64 __alt_instructions = .;
65 .altinstructions : { *(.altinstructions) }
66 __alt_instructions_end = .;
67 .altinstr_replacement : { *(.altinstr_replacement) }
68 /* .exit.text is discard at runtime, not link time, to deal with references
69 from .altinstructions and .eh_frame */
2e8b5a09
DH
70 .exit.text : { EXIT_TEXT; }
71 .exit.data : { EXIT_DATA; }
b920de1b 72
0415b00d 73 PERCPU_SECTION(32)
cb32898c 74 . = ALIGN(PAGE_SIZE);
b920de1b
DH
75 __init_end = .;
76 /* freed after init ends here */
77
04e448d9 78 BSS_SECTION(0, PAGE_SIZE, 4)
b920de1b
DH
79
80 _end = . ;
81
82 /* This is where the kernel creates the early boot page tables */
cb32898c 83 . = ALIGN(PAGE_SIZE);
b920de1b
DH
84 pg0 = .;
85
b920de1b
DH
86 STABS_DEBUG
87
88 DWARF_DEBUG
023bf6f1
TH
89
90 /* Sections to be discarded */
91 DISCARDS
b920de1b 92}