--- zzzz-none-000/linux-3.10.107/arch/powerpc/lib/vmx-helper.c 2017-06-27 09:49:32.000000000 +0000 +++ scorpion-7490-727/linux-3.10.107/arch/powerpc/lib/vmx-helper.c 2021-02-04 17:41:59.000000000 +0000 @@ -27,11 +27,11 @@ if (in_interrupt()) return 0; - /* This acts as preempt_disable() as well and will make - * enable_kernel_altivec(). We need to disable page faults - * as they can call schedule and thus make us lose the VMX - * context. So on page faults, we just fail which will cause - * a fallback to the normal non-vmx copy. + preempt_disable(); + /* + * We need to disable page faults as they can call schedule and + * thus make us lose the VMX context. So on page faults, we just + * fail which will cause a fallback to the normal non-vmx copy. */ pagefault_disable(); @@ -47,6 +47,7 @@ int exit_vmx_usercopy(void) { pagefault_enable(); + preempt_enable(); return 0; }