Re: [PATCH 6.1.y] arm64/ptrace: Don't enable SVE when setting streaming SVE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 07, 2023 at 08:56:33PM +0100, Mark Brown wrote:
> Systems which implement SME without also implementing SVE are
> architecturally valid but were not initially supported by the kernel,
> unfortunately we missed one issue in the ptrace code.
> 
> The SVE register setting code is shared between SVE and streaming mode
> SVE. When we set full SVE register state we currently enable TIF_SVE
> unconditionally, in the case where streaming SVE is being configured on a
> system that supports vanilla SVE this is not an issue since we always
> initialise enough state for both vector lengths but on a system which only
> support SME it will result in us attempting to restore the SVE vector
> length after having set streaming SVE registers.
> 
> Fix this by making the enabling of SVE conditional on setting SVE vector
> state. If we set streaming SVE state and SVE was not already enabled this
> will result in a SVE access trap on next use of normal SVE, this will cause
> us to flush our register state but this is fine since the only way to
> trigger a SVE access trap would be to exit streaming mode which will cause
> the in register state to be flushed anyway.
> 
> Fixes: e12310a0d30f ("arm64/sme: Implement ptrace support for streaming mode SVE registers")
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx
> Link: https://lore.kernel.org/r/20230803-arm64-fix-ptrace-ssve-no-sve-v1-1-49df214bfb3e@xxxxxxxxxx
> Signed-off-by: Catalin Marinas <catalin.marinas@xxxxxxx>
> (cherry picked from commit 045aecdfcb2e060db142d83a0f4082380c465d2c)
> [Fix up backport -- broonie]
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

Now queued up, thanks.

greg k-h



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux