riscv: move exception table immediately after RO_DATA
authorZong Li <zong.li@sifive.com>
Mon, 9 Mar 2020 16:55:39 +0000 (00:55 +0800)
committerPalmer Dabbelt <palmerdabbelt@google.com>
Thu, 26 Mar 2020 16:24:39 +0000 (09:24 -0700)
Move EXCEPTION_TABLE immediately after RO_DATA. Make it easy to set the
attribution of the sections which should be read-only at a time.
Add _data to specify the start of data section with write permission.
This patch is prepared for STRICT_KERNEL_RWX support.

Signed-off-by: Zong Li <zong.li@sifive.com>
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
arch/riscv/kernel/vmlinux.lds.S

index a8fb52a..9e8adca 100644 (file)
@@ -58,6 +58,10 @@ SECTIONS
                *(.srodata*)
        }
 
+       EXCEPTION_TABLE(0x10)
+
+       _data = .;
+
        RW_DATA(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE)
        .sdata : {
                __global_pointer$ = . + 0x800;
@@ -68,8 +72,6 @@ SECTIONS
 
        BSS_SECTION(PAGE_SIZE, PAGE_SIZE, 0)
 
-       EXCEPTION_TABLE(0x10)
-
        .rel.dyn : {
                *(.rel.dyn*)
        }