mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 03:44:45 +01:00
arm64: mm: Rework the 'rodata=' options
As per admin guide documentation, "rodata=on" should be the default on
platforms. Documentation/admin-guide/kernel-parameters.txt describes
these options as
rodata= [KNL,EARLY]
on Mark read-only kernel memory as read-only (default).
off Leave read-only kernel memory writable for debugging.
full Mark read-only kernel memory and aliases as read-only
[arm64]
But on arm64 platform, RODATA_FULL_DEFAULT_ENABLED is enabled by default,
so "rodata=full" is the default instead.
For parity with other architectures, namely x86, rework 'rodata=on' to
match the current "full" behaviour and replace 'rodata=full' with a new
'rodata=noalias' option which retains writable aliases in the direct map
for memory regions outside of the kernel image.
Signed-off-by: Huang Shijie <shijie@os.amperecomputing.com>
Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>
Signed-off-by: Will Deacon <will@kernel.org>
This commit is contained in:
parent
b868fff5b1
commit
c0f303d7d4
2 changed files with 5 additions and 4 deletions
|
|
@ -6405,8 +6405,9 @@
|
|||
rodata= [KNL,EARLY]
|
||||
on Mark read-only kernel memory as read-only (default).
|
||||
off Leave read-only kernel memory writable for debugging.
|
||||
full Mark read-only kernel memory and aliases as read-only
|
||||
[arm64]
|
||||
noalias Mark read-only kernel memory as read-only but retain
|
||||
writable aliases in the direct map for regions outside
|
||||
of the kernel image. [arm64]
|
||||
|
||||
rockchip.usb_uart
|
||||
[EARLY]
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ static inline bool arch_parse_debug_rodata(char *arg)
|
|||
if (!arg)
|
||||
return false;
|
||||
|
||||
if (!strcmp(arg, "full")) {
|
||||
if (!strcmp(arg, "on")) {
|
||||
rodata_enabled = rodata_full = true;
|
||||
return true;
|
||||
}
|
||||
|
|
@ -31,7 +31,7 @@ static inline bool arch_parse_debug_rodata(char *arg)
|
|||
return true;
|
||||
}
|
||||
|
||||
if (!strcmp(arg, "on")) {
|
||||
if (!strcmp(arg, "noalias")) {
|
||||
rodata_enabled = true;
|
||||
rodata_full = false;
|
||||
return true;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue