Cortex-A715: 2645198: Workaround possible [ESR|FAR]_ELx corruption
configname: CONFIG_ARM64_ERRATUM_2645198
Linux Kernel Configuration
└─>
Kernel Features
└─>
ARM errata workarounds via the alternatives framework
└─>
Cortex-A715: 2645198: Workaround possible [ESR|FAR]_ELx corruption
This option adds the workaround for ARM Cortex-A715 erratum 2645198.
If a Cortex-A715 cpu sees a page mapping permissions change from executable
to non-executable, it may corrupt the ESR_ELx and FAR_ELx registers on the
next instruction abort caused by permission fault.
Only user-space does executable to non-executable permission transition via
mprotect() system call. Workaround the problem by doing a break-before-make
TLB invalidation, for all changes to executable user space mappings.
If a Cortex-A715 cpu sees a page mapping permissions change from executable
to non-executable, it may corrupt the ESR_ELx and FAR_ELx registers on the
next instruction abort caused by permission fault.
Only user-space does executable to non-executable permission transition via
mprotect() system call. Workaround the problem by doing a break-before-make
TLB invalidation, for all changes to executable user space mappings.
If unsure, say Y.