Re: [PATCH 6.1.y] arm64/ptrace: Ensure that SME is set up for target when writing SSVE state

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

 



On Mon, Aug 21, 2023 at 02:58:33PM +0100, Mark Brown wrote:
> When we use NT_ARM_SSVE to either enable streaming mode or change the
> vector length for a process we do not currently do anything to ensure that
> there is storage allocated for the SME specific register state.  If the
> task had not previously used SME or we changed the vector length then
> the task will not have had TIF_SME set or backing storage for ZA/ZT
> allocated, resulting in inconsistent register sizes when saving state
> and spurious traps which flush the newly set register state.
> 
> We should set TIF_SME to disable traps and ensure that storage is
> allocated for ZA and ZT if it is not already allocated.  This requires
> modifying sme_alloc() to make the flush of any existing register state
> optional so we don't disturb existing state for ZA and ZT.
> 
> Fixes: e12310a0d30f ("arm64/sme: Implement ptrace support for streaming mode SVE registers")
> Reported-by: David Spickett <David.Spickett@xxxxxxx>
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
> Cc: <stable@xxxxxxxxxxxxxxx> # 5.19.x
> Link: https://lore.kernel.org/r/20230810-arm64-fix-ptrace-race-v1-1-a5361fad2bd6@xxxxxxxxxx
> Signed-off-by: Catalin Marinas <catalin.marinas@xxxxxxx>
> (cherry picked from commit 5d0a8d2fba50e9c07cde4aad7fba28c008b07a5b)
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

Thanks, now queued up.

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