1
2
3
4
5
6
7
8 #include <asm-generic/vmlinux.lds.h>
9 #include <asm/thread_info.h>
10 #include <asm/page.h>
11
12 ENTRY(_c_int00)
13
14 #if defined(CONFIG_CPU_BIG_ENDIAN)
15 jiffies = jiffies_64 + 4;
16 #else
17 jiffies = jiffies_64;
18 #endif
19
20 #define READONLY_SEGMENT_START \
21 . = PAGE_OFFSET;
22 #define READWRITE_SEGMENT_START \
23 . = ALIGN(128); \
24 _data_lma = .;
25
26 SECTIONS
27 {
28
29
30
31 READONLY_SEGMENT_START
32
33 .vectors :
34 {
35 _vectors_start = .;
36 *(.vectors)
37 . = ALIGN(0x400);
38 _vectors_end = .;
39 }
40
41
42
43
44
45
46 .virtio_ipc_dev :
47 {
48 *(.virtio_ipc_dev)
49 }
50
51 . = ALIGN(PAGE_SIZE);
52 __init_begin = .;
53 .init :
54 {
55 _sinittext = .;
56 HEAD_TEXT
57 INIT_TEXT
58 _einittext = .;
59 }
60
61 INIT_DATA_SECTION(16)
62
63 PERCPU_SECTION(128)
64
65 . = ALIGN(PAGE_SIZE);
66 __init_end = .;
67
68 .text :
69 {
70 _text = .;
71 _stext = .;
72 TEXT_TEXT
73 SCHED_TEXT
74 CPUIDLE_TEXT
75 LOCK_TEXT
76 IRQENTRY_TEXT
77 SOFTIRQENTRY_TEXT
78 KPROBES_TEXT
79 *(.fixup)
80 *(.gnu.warning)
81 }
82
83 EXCEPTION_TABLE(16)
84 NOTES
85
86 RO_DATA_SECTION(PAGE_SIZE)
87 .const :
88 {
89 *(.const .const.* .gnu.linkonce.r.*)
90 *(.switch)
91 }
92
93 _etext = .;
94
95
96
97
98 READWRITE_SEGMENT_START
99 _sdata = .;
100
101 .fardata : AT(ADDR(.fardata) - LOAD_OFFSET)
102 {
103 INIT_TASK_DATA(THREAD_SIZE)
104 NOSAVE_DATA
105 PAGE_ALIGNED_DATA(PAGE_SIZE)
106 CACHELINE_ALIGNED_DATA(128)
107 READ_MOSTLY_DATA(128)
108 DATA_DATA
109 CONSTRUCTORS
110 *(.data1)
111 *(.fardata .fardata.*)
112 *(.data.debug_bpt)
113 }
114
115 .neardata ALIGN(8) : AT(ADDR(.neardata) - LOAD_OFFSET)
116 {
117 *(.neardata2 .neardata2.* .gnu.linkonce.s2.*)
118 *(.neardata .neardata.* .gnu.linkonce.s.*)
119 . = ALIGN(8);
120 }
121
122 BUG_TABLE
123
124 _edata = .;
125
126 __bss_start = .;
127 SBSS(8)
128 BSS(8)
129 .far :
130 {
131 . = ALIGN(8);
132 *(.dynfar)
133 *(.far .far.* .gnu.linkonce.b.*)
134 . = ALIGN(8);
135 }
136 __bss_stop = .;
137
138 _end = .;
139
140 DWARF_DEBUG
141
142 /DISCARD/ :
143 {
144 EXIT_TEXT
145 EXIT_DATA
146 EXIT_CALL
147 *(.discard)
148 *(.discard.*)
149 *(.interp)
150 }
151 }