On Mon, Feb 07, 2022 at 03:20:51PM +0000, Mark Brown wrote:
diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c index 2242c14a5a05..8b111b7f2006 100644 --- a/arch/arm64/kernel/fpsimd.c +++ b/arch/arm64/kernel/fpsimd.c @@ -645,14 +645,19 @@ static void __fpsimd_to_sve(void *sst, struct user_fpsimd_state const *fst, */ static void fpsimd_to_sve(struct task_struct *task) {
- unsigned int vq;
- unsigned int vq, vl; void *sst = task->thread.sve_state; struct user_fpsimd_state const *fst = &task->thread.uw.fpsimd_state;
if (!system_supports_sve()) return;
- vq = sve_vq_from_vl(task_get_sve_vl(task));
- if (thread_sm_enabled(&task->thread))
vl = task_get_sme_vl(task);
- else
vl = task_get_sve_vl(task);
I saw this construct in the signal patches as well. Can we have a function/macro that checks the SM enabled and returns the proper vl?
Otherwise,
Reviewed-by: Catalin Marinas catalin.marinas@arm.com