csky: Correct position of _stext
authorGuo Ren <guoren@linux.alibaba.com>
Tue, 5 Jul 2022 06:00:15 +0000 (14:00 +0800)
committerGuo Ren <guoren@linux.alibaba.com>
Sat, 23 Jul 2022 01:36:14 +0000 (21:36 -0400)
Correct position of _stext to prevent check_kernel_text_object
warning [1].

[1] https://lore.kernel.org/linux-csky/YfLpNkmlvoR8iPcq@ls3530/

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Signed-off-by: Guo Ren <guoren@kernel.org>
Cc: Helge Deller <deller@gmx.de>
arch/csky/include/asm/sections.h [new file with mode: 0644]
arch/csky/kernel/setup.c
arch/csky/kernel/vmlinux.lds.S

diff --git a/arch/csky/include/asm/sections.h b/arch/csky/include/asm/sections.h
new file mode 100644 (file)
index 0000000..4192cba
--- /dev/null
@@ -0,0 +1,10 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+
+#ifndef __ASM_SECTIONS_H
+#define __ASM_SECTIONS_H
+
+#include <asm-generic/sections.h>
+
+extern char _start[];
+
+#endif /* __ASM_SECTIONS_H */
index c64e7be2045b5d9d6217f4ab443f5d9b50184130..106fbf0b6f3b403f54bf22dc019f5c710e252696 100644 (file)
@@ -31,7 +31,7 @@ static void __init csky_memblock_init(void)
        unsigned long max_zone_pfn[MAX_NR_ZONES] = { 0 };
        signed long size;
 
-       memblock_reserve(__pa(_stext), _end - _stext);
+       memblock_reserve(__pa(_start), _end - _start);
 
        early_init_fdt_reserve_self();
        early_init_fdt_scan_reserved_mem();
@@ -78,7 +78,7 @@ void __init setup_arch(char **cmdline_p)
        pr_info("Phys. mem: %ldMB\n",
                (unsigned long) memblock_phys_mem_size()/1024/1024);
 
-       setup_initial_init_mm(_stext, _etext, _edata, _end);
+       setup_initial_init_mm(_start, _etext, _edata, _end);
 
        parse_early_param();
 
index e8b1a4a497980a2bef01497fa07426267d85b75b..163a8cd8b9a6ff0761e51d1579058fa144c089c6 100644 (file)
@@ -22,7 +22,7 @@ SECTIONS
 {
        . = PAGE_OFFSET + PHYS_OFFSET_OFFSET;
 
-       _stext = .;
+       _start = .;
        __init_begin = .;
        HEAD_TEXT_SECTION
        INIT_TEXT_SECTION(PAGE_SIZE)
@@ -33,6 +33,7 @@ SECTIONS
 
        .text : AT(ADDR(.text) - LOAD_OFFSET) {
                _text = .;
+               _stext = .;
                VBR_BASE
                IRQENTRY_TEXT
                SOFTIRQENTRY_TEXT