Breno Leitao <lei...@debian.org> writes: > Currently tsk->thread->load_vec and load_fp are not initialized during a > task creation, which set garbage to these variables (non-zero value). > > These variables will be checked later at restore_math() to validate if the > FP and vectors are being utilized. Since these values might be non-zero, > the restore_math() will continue to save the FP and vectors even if they > were never utilized before the userspace application. load_fp and load_vec > counters will then overflow and the FP and Altivec will be finally > disabled, but before that condition is reached (counter overflow) several > context switches restored FP and vector registers without need, causing a > performance degradation. > > Signed-off-by: Breno Leitao <lei...@debian.org> > Signed-off-by: Gustavo Romero <gusbrom...@gmail.com>
Thanks, I tweaked the wording a little and added: Fixes: 70fe3d980f5f ("powerpc: Restore FPU/VEC/VSX if previously used") Cc: sta...@vger.kernel.org # v4.6+ cheers