[PATCH v3 1/2] arm64: refactor the rodata=xxx
Anshuman Khandual
anshuman.khandual at arm.com
Tue Dec 10 00:38:19 PST 2024
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.
More information about the linux-arm-kernel
mailing list