aboutsummaryrefslogtreecommitdiff
path: root/scripts/gdb/linux/utils.py
diff options
context:
space:
mode:
authorPeter Collingbourne <[email protected]>2022-09-15 15:20:53 -0700
committerCatalin Marinas <[email protected]>2022-09-22 18:02:50 +0100
commit973b9e37330656dec719ede508e4dc40e5c2d80c (patch)
tree9ded7f4d8e8995d94052f01a4ffaea87bf7ed23a /scripts/gdb/linux/utils.py
parent739e49e0fc80990a351961c99a3142094822f040 (diff)
arm64: mte: move register initialization to C
If FEAT_MTE2 is disabled via the arm64.nomte command line argument on a CPU that claims to support FEAT_MTE2, the kernel will use Tagged Normal in the MAIR. If we interpret arm64.nomte to mean that the CPU does not in fact implement FEAT_MTE2, setting the system register like this may lead to UNSPECIFIED behavior. Fix it by arranging for MAIR to be set in the C function cpu_enable_mte which is called based on the sanitized version of the system register. There is no need for the rest of the MTE-related system register initialization to happen from assembly, with the exception of TCR_EL1, which must be set to include at least TBI1 because the secondary CPUs access KASan-allocated data structures early. Therefore, make the TCR_EL1 initialization unconditional and move the rest of the initialization to cpu_enable_mte so that we no longer have a dependency on the unsanitized ID register value. Co-developed-by: Evgenii Stepanov <[email protected]> Signed-off-by: Peter Collingbourne <[email protected]> Signed-off-by: Evgenii Stepanov <[email protected]> Suggested-by: Catalin Marinas <[email protected]> Reported-by: kernel test robot <[email protected]> Fixes: 3b714d24ef17 ("arm64: mte: CPU feature detection and initial sysreg configuration") Cc: <[email protected]> # 5.10.x Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Catalin Marinas <[email protected]>
Diffstat (limited to 'scripts/gdb/linux/utils.py')
0 files changed, 0 insertions, 0 deletions