vmlinux.lds.h: allow arch specific handling of ro_after_init data section
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Tue, 7 Jun 2016 10:20:51 +0000 (12:20 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 13 Jun 2016 13:58:22 +0000 (15:58 +0200)
commit32fb2fc5c357fb99616bbe100dbcb27bc7f5d045
tree81e8a21e7687debcaf46d1af635f64c863262aeb
parent64f31d5802af11fd87872b4bae07b35cf0acb358
vmlinux.lds.h: allow arch specific handling of ro_after_init data section

commit c74ba8b3480d ("arch: Introduce post-init read-only memory")
introduced the __ro_after_init attribute which allows to add variables
to the ro_after_init data section.

This new section was added to rodata, even though it contains writable
data. This in turn causes problems on architectures which mark the
page table entries read-only that point to rodata very early.

This patch allows architectures to implement an own handling of the
.data..ro_after_init section.
Usually that would be:
- mark the rodata section read-only very early
- mark the ro_after_init section read-only within mark_rodata_ro

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Reviewed-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
include/asm-generic/vmlinux.lds.h