]> git.baikalelectronics.ru Git - kernel.git/commit
arm64/sme: Don't flush SVE register state when handling SME traps
authorMark Brown <broonie@kernel.org>
Wed, 17 Aug 2022 18:23:24 +0000 (19:23 +0100)
committerWill Deacon <will@kernel.org>
Tue, 23 Aug 2022 10:29:12 +0000 (11:29 +0100)
commit20a868f254adc38f884a4fc29a9f734ffb466e62
tree97f0517eab1531c5065a2ebe3d60eaebc3ef8dbd
parent2ac6b96ca76e511bb9fd349c475ff036f2c5af30
arm64/sme: Don't flush SVE register state when handling SME traps

Currently as part of handling a SME access trap we flush the SVE register
state. This is not needed and would corrupt register state if the task has
access to the SVE registers already. For non-streaming mode accesses the
required flushing will be done in the SVE access trap. For streaming
mode SVE register accesses the architecture guarantees that the register
state will be flushed when streaming mode is entered or exited so there is
no need for us to do so. Simply remove the register initialisation.

Fixes: 34097d351fdb ("arm64/sme: Implement traps and syscall handling for SME")
Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220817182324.638214-5-broonie@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/kernel/fpsimd.c