KVM: arm/arm64: disable preemption when calling smp_call_function_many
authorEric Auger <eric.auger@linaro.org>
Mon, 7 Mar 2016 16:50:36 +0000 (23:50 +0700)
committerChristoffer Dall <christoffer.dall@linaro.org>
Mon, 21 Mar 2016 09:45:22 +0000 (10:45 +0100)
Preemption must be disabled when calling smp_call_function_many

Reported-by: bartosz.wawrzyniak@tieto.com
Signed-off-by: Eric Auger <eric.auger@linaro.org>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
arch/arm/kvm/arm.c

index 3e0fb66d8e053b5bbd7317d8bbcedf69950833dc..6accd66d26f0edb01a35df2c0628b86266301b62 100644 (file)
@@ -373,7 +373,9 @@ static void exit_vm_noop(void *info)
 
 void force_vm_exit(const cpumask_t *mask)
 {
+       preempt_disable();
        smp_call_function_many(mask, exit_vm_noop, NULL, true);
+       preempt_enable();
 }
 
 /**