aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2013-11-12 14:42:20 -0500
committerChris Metcalf <cmetcalf@tilera.com>2014-10-02 10:19:33 -0400
commit454ac3ec3fb7e855c274b26252c9a43a191bffaf (patch)
treefc250549f02d97c7cfc08fa76b2145357e6c3fba /arch/tile
parent367b9380b1717dc53ea7e1f05da58c99e0ae54a3 (diff)
tile: Remove tile-specific _sinitdata and _einitdata
Use standard __init_begin and __init_end instead. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Cc: Chris Metcalf <cmetcalf@tilera.com> Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Diffstat (limited to 'arch/tile')
-rw-r--r--arch/tile/include/asm/sections.h3
-rw-r--r--arch/tile/kernel/vmlinux.lds.S2
-rw-r--r--arch/tile/mm/init.c12
3 files changed, 6 insertions, 11 deletions
diff --git a/arch/tile/include/asm/sections.h b/arch/tile/include/asm/sections.h
index 5d5d3b739a6b..86a746243dc8 100644
--- a/arch/tile/include/asm/sections.h
+++ b/arch/tile/include/asm/sections.h
@@ -19,9 +19,6 @@
19 19
20#include <asm-generic/sections.h> 20#include <asm-generic/sections.h>
21 21
22/* Text and data are at different areas in the kernel VA space. */
23extern char _sinitdata[], _einitdata[];
24
25/* Write-once data is writable only till the end of initialization. */ 22/* Write-once data is writable only till the end of initialization. */
26extern char __w1data_begin[], __w1data_end[]; 23extern char __w1data_begin[], __w1data_end[];
27 24
diff --git a/arch/tile/kernel/vmlinux.lds.S b/arch/tile/kernel/vmlinux.lds.S
index f1819423ffc9..0e059a0101ea 100644
--- a/arch/tile/kernel/vmlinux.lds.S
+++ b/arch/tile/kernel/vmlinux.lds.S
@@ -66,11 +66,9 @@ SECTIONS
66 66
67 . = ALIGN(PAGE_SIZE); 67 . = ALIGN(PAGE_SIZE);
68 __init_begin = .; 68 __init_begin = .;
69 VMLINUX_SYMBOL(_sinitdata) = .;
70 INIT_DATA_SECTION(16) :data =0 69 INIT_DATA_SECTION(16) :data =0
71 PERCPU_SECTION(L2_CACHE_BYTES) 70 PERCPU_SECTION(L2_CACHE_BYTES)
72 . = ALIGN(PAGE_SIZE); 71 . = ALIGN(PAGE_SIZE);
73 VMLINUX_SYMBOL(_einitdata) = .;
74 __init_end = .; 72 __init_end = .;
75 73
76 _sdata = .; /* Start of data section */ 74 _sdata = .; /* Start of data section */
diff --git a/arch/tile/mm/init.c b/arch/tile/mm/init.c
index bfb3127b4df9..a092e393bd20 100644
--- a/arch/tile/mm/init.c
+++ b/arch/tile/mm/init.c
@@ -254,8 +254,8 @@ static pgprot_t __init init_pgprot(ulong address)
254 * Everything else that isn't data or bss is heap, so mark it 254 * Everything else that isn't data or bss is heap, so mark it
255 * with the initial heap home (hash-for-home, or this cpu). This 255 * with the initial heap home (hash-for-home, or this cpu). This
256 * includes any addresses after the loaded image and any address before 256 * includes any addresses after the loaded image and any address before
257 * _einitdata, since we already captured the case of text before 257 * __init_end, since we already captured the case of text before
258 * _sinittext, and __pa(einittext) is approximately __pa(sinitdata). 258 * _sinittext, and __pa(einittext) is approximately __pa(__init_begin).
259 * 259 *
260 * All the LOWMEM pages that we mark this way will get their 260 * All the LOWMEM pages that we mark this way will get their
261 * struct page homecache properly marked later, in set_page_homes(). 261 * struct page homecache properly marked later, in set_page_homes().
@@ -263,7 +263,7 @@ static pgprot_t __init init_pgprot(ulong address)
263 * homes, but with a zero free_time we don't have to actually 263 * homes, but with a zero free_time we don't have to actually
264 * do a flush action the first time we use them, either. 264 * do a flush action the first time we use them, either.
265 */ 265 */
266 if (address >= (ulong) _end || address < (ulong) _einitdata) 266 if (address >= (ulong) _end || address < (ulong) __init_end)
267 return construct_pgprot(PAGE_KERNEL, initial_heap_home()); 267 return construct_pgprot(PAGE_KERNEL, initial_heap_home());
268 268
269 /* Use hash-for-home if requested for data/bss. */ 269 /* Use hash-for-home if requested for data/bss. */
@@ -632,7 +632,7 @@ int devmem_is_allowed(unsigned long pagenr)
632{ 632{
633 return pagenr < kaddr_to_pfn(_end) && 633 return pagenr < kaddr_to_pfn(_end) &&
634 !(pagenr >= kaddr_to_pfn(&init_thread_union) || 634 !(pagenr >= kaddr_to_pfn(&init_thread_union) ||
635 pagenr < kaddr_to_pfn(_einitdata)) && 635 pagenr < kaddr_to_pfn(__init_end)) &&
636 !(pagenr >= kaddr_to_pfn(_sinittext) || 636 !(pagenr >= kaddr_to_pfn(_sinittext) ||
637 pagenr <= kaddr_to_pfn(_einittext-1)); 637 pagenr <= kaddr_to_pfn(_einittext-1));
638} 638}
@@ -975,8 +975,8 @@ void free_initmem(void)
975 975
976 /* Free the data pages that we won't use again after init. */ 976 /* Free the data pages that we won't use again after init. */
977 free_init_pages("unused kernel data", 977 free_init_pages("unused kernel data",
978 (unsigned long)_sinitdata, 978 (unsigned long)__init_begin,
979 (unsigned long)_einitdata); 979 (unsigned long)__init_end);
980 980
981 /* 981 /*
982 * Free the pages mapped from 0xc0000000 that correspond to code 982 * Free the pages mapped from 0xc0000000 that correspond to code