[PATCH v7 0/2] arm64: refactor the rodata=xxx

Huang Shijie posted 2 patches 3 weeks, 2 days ago
Documentation/admin-guide/kernel-parameters.txt |  5 +++--
arch/arm64/Kconfig                              | 14 --------------
arch/arm64/include/asm/setup.h                  |  4 ++--
arch/arm64/mm/pageattr.c                        |  2 +-
4 files changed, 6 insertions(+), 19 deletions(-)
[PATCH v7 0/2] arm64: refactor the rodata=xxx
Posted by Huang Shijie 3 weeks, 2 days ago
From Documentation/admin-guide/kernel-parameters.txt, we know that:
 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]

So the "rodata=on" is the default.

But the current code does not follow the document, it makes "rodata=full"
as the default.

This patch set follows Anshuman Khandual's suggetions.
It makes the "rodata=on" as the default, and removes the CONFIG_RODATA_FULL_DEFAULT_ENABLED.

v7:
  Change the code by following Will's suggestions.
  
v6:
  Fix a small issue pointed by Randy Dunlap.
  https://lists.infradead.org/pipermail/linux-arm-kernel/2025-July/1041488.html
  
v5:
  Rebase this patch set with linux-next20250627
  https://lists.infradead.org/pipermail/linux-arm-kernel/2025-June/1040297.html

v4:
  Follows Anshuman Khandual/Ard Biesheuvel's suggetions:
  - Change commit message format.
  - Change the titile name.
  - others
  https://lists.infradead.org/pipermail/linux-arm-kernel/2024-December/985629.html

v3:
  Follows Anshuman Khandual's suggetions:
  - Merge patch 1 and patch 3 into one patch.
  - Remove patch 4
  - update comments and document.
   https://lists.infradead.org/pipermail/linux-arm-kernel/2024-December/984344.html

v2:
  Follows Will's suggetions.
  Add a new file fine-tuning-tips.rst for the expert users.
   https://lists.infradead.org/pipermail/linux-arm-kernel/2024-November/981190.html

v1:
   https://lists.infradead.org/pipermail/linux-arm-kernel/2024-October/971415.html


Huang Shijie (2):
  arm64: refactor the rodata=xxx
  arm64/Kconfig: Remove CONFIG_RODATA_FULL_DEFAULT_ENABLED

 Documentation/admin-guide/kernel-parameters.txt |  5 +++--
 arch/arm64/Kconfig                              | 14 --------------
 arch/arm64/include/asm/setup.h                  |  4 ++--
 arch/arm64/mm/pageattr.c                        |  2 +-
 4 files changed, 6 insertions(+), 19 deletions(-)

-- 
2.40.1
Re: [PATCH v7 0/2] arm64: refactor the rodata=xxx
Posted by Will Deacon 2 weeks, 2 days ago
On Tue, 09 Sep 2025 11:32:34 +0800, Huang Shijie wrote:
> >From Documentation/admin-guide/kernel-parameters.txt, we know that:
>  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]
> 
> [...]

Applied to arm64 (for-next/mm), thanks!

[1/2] arm64: refactor the rodata=xxx
      (no commit info)
[2/2] arm64/Kconfig: Remove CONFIG_RODATA_FULL_DEFAULT_ENABLED
      https://git.kernel.org/arm64/c/bfbbb0d3215f

Cheers,
-- 
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev