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>