diff options
author | Peter Collingbourne <pcc@google.com> | 2020-11-18 06:20:51 +0300 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2020-11-18 20:12:11 +0300 |
commit | 739003c6428387432d42b9b80be185cde93978aa (patch) | |
tree | 6c5392781eabb80a17a91ff17ad882d19005acf2 /arch/arm64/mm/proc.S | |
parent | 9f84f39f5515fd412398a1019e3f50ac3ab51a80 (diff) | |
download | linux-739003c6428387432d42b9b80be185cde93978aa.tar.xz |
arm64: mte: optimize asynchronous tag check fault flag check
We don't need to check for MTE support before checking the flag
because it can only be set if the hardware supports MTE. As a result
we can unconditionally check the flag bit which is expected to be in
a register and therefore the check can be done in a single instruction
instead of first needing to load the hwcaps.
On a DragonBoard 845c with a kernel built with CONFIG_ARM64_MTE=y with
the powersave governor this reduces the cost of a kernel entry/exit
(invalid syscall) from 465.1ns to 463.8ns.
Signed-off-by: Peter Collingbourne <pcc@google.com>
Link: https://linux-review.googlesource.com/id/If4dc3501fd4e4f287322f17805509613cfe47d24
Link: https://lore.kernel.org/r/20201118032051.1405907-1-pcc@google.com
[catalin.marinas@arm.com: remove IS_ENABLED(CONFIG_ARM64_MTE)]
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/mm/proc.S')
0 files changed, 0 insertions, 0 deletions