[PATCH 1/3] xtensa: Replace xtensa-specific _f{data,text} by _s{data,text}

From: Geert Uytterhoeven
Date: Sun Jun 10 2012 - 10:40:01 EST


commit a2d063ac216c1618bfc2b4d40b7176adffa63511 ("extable,
core_kernel_data(): Make sure all archs define _sdata") missed xtensa.
Xtensa does have a start of data marker, but calls it _fdata, causing

kernel/built-in.o:(.text+0x964): undefined reference to `_sdata'

_stext was already defined, but it was duplicated by _fdata.

Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>
Cc: Steven Rostedt <rostedt@xxxxxxxxxxx>
---
arch/xtensa/kernel/vmlinux.lds.S | 3 +--
arch/xtensa/mm/init.c | 6 +++---
2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/arch/xtensa/kernel/vmlinux.lds.S b/arch/xtensa/kernel/vmlinux.lds.S
index 88ecea3..ee2e208 100644
--- a/arch/xtensa/kernel/vmlinux.lds.S
+++ b/arch/xtensa/kernel/vmlinux.lds.S
@@ -83,7 +83,6 @@ SECTIONS

_text = .;
_stext = .;
- _ftext = .;

.text :
{
@@ -112,7 +111,7 @@ SECTIONS
EXCEPTION_TABLE(16)
/* Data section */

- _fdata = .;
+ _sdata = .;
RW_DATA_SECTION(XCHAL_ICACHE_LINESIZE, PAGE_SIZE, THREAD_SIZE)
_edata = .;

diff --git a/arch/xtensa/mm/init.c b/arch/xtensa/mm/init.c
index ba150e5..c82af58 100644
--- a/arch/xtensa/mm/init.c
+++ b/arch/xtensa/mm/init.c
@@ -29,7 +29,7 @@

/* References to section boundaries */

-extern char _ftext, _etext, _fdata, _edata, _rodata_end;
+extern char _stext, _etext, _sdata, _edata, _rodata_end;
extern char __init_begin, __init_end;

/*
@@ -197,8 +197,8 @@ void __init mem_init(void)
reservedpages++;
}

- codesize = (unsigned long) &_etext - (unsigned long) &_ftext;
- datasize = (unsigned long) &_edata - (unsigned long) &_fdata;
+ codesize = (unsigned long) &_etext - (unsigned long) &_stext;
+ datasize = (unsigned long) &_edata - (unsigned long) &_sdata;
initsize = (unsigned long) &__init_end - (unsigned long) &__init_begin;

printk("Memory: %luk/%luk available (%ldk kernel code, %ldk reserved, "
--
1.7.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/