Re: [PATCH v12 20/40] arm64/sme: Implement streaming SVE signal handling

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

 



On Fri, Feb 25, 2022 at 04:59:03PM +0000, Mark Brown wrote:
> When in streaming mode we have the same set of SVE registers as we do in
> regular SVE mode with the exception of FFR and the use of the SME vector
> length. Provide signal handling for these registers by taking one of the
> reserved words in the SVE signal context as a flags field and defining a
> flag which is set for streaming mode. When the flag is set the vector
> length is set to the streaming mode vector length and we save and
> restore streaming mode data. We support entering or leaving streaming
> mode based on the value of the flag but do not support changing the
> vector length, this is not currently supported SVE signal handling.
> 
> We could instead allocate a separate record in the signal frame for the
> streaming mode SVE context but this inflates the size of the maximal signal
> frame required and adds complication when validating signal frames from
> userspace, especially given the current structure of the code.
> 
> Any implementation of support for streaming mode vectors in signals will
> have some potential for causing issues for applications that attempt to
> handle SVE vectors in signals, use streaming mode but do not understand
> streaming mode in their signal handling code, it is hard to identify a
> case that is clearly better than any other - they all have cases where
> they could cause unexpected register corruption or faults.
> 
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>

Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>



[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux