[PATCH v3 1/2] arm64: refactor the rodata=xxx
Shijie Huang
shijie at amperemail.onmicrosoft.com
Tue Dec 10 01:47:05 PST 2024
On 2024/12/10 16:38, Anshuman Khandual wrote:
>
> On 12/10/24 12:51, Ard Biesheuvel wrote:
>> On Tue, 10 Dec 2024 at 08:17, Anshuman Khandual
>> <anshuman.khandual at arm.com> wrote:
>> ...
>>> Reformatted and cleaned up the above comment a bit but feel free to
>>> improve it further.
>>>
>>> /*
>>> * rodata=on (default)
>>> *
>>> * This applies read-only attributes to VM areas and to the linear
>>> * alias of the backing pages as well. This prevents code or read-
>>> * only data from being modified (inadvertently or intentionally),
>>> * via another mapping for the same memory page.
>>> *
>>> * But this might cause linear map region to be mapped down to base
>>> * pages, which may adversely affect performance in some cases.
>>> *
>>> * rodata=off
>>> *
>>> * This provides more block mappings and contiguous hints for linear
>>> * map region which would minimize TLB footprint. This also leaves
>>> * read-only kernel memory writable for debugging.
>>> *
>>> * rodata=noalias
>>> *
>>> * This provides more block mappings and contiguous hints for linear
>>> * map region which would minimize TLB footprint. Linear aliases of
>>> * pages belonging to read-only mappings in vmalloc region are also
>>> * marked as read-only.
>>>
>> If linear aliases are marked as read-only, how does 'noalias' differ from 'on'?
> Right, the last sentence can be can dropped.
Okay, no problem.
Thanks
Huang Shijie
More information about the linux-arm-kernel
mailing list