Re: KVM: protect concurrent make_all_cpus_request

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jun 17, 2009 at 10:53:47AM -0300, Marcelo Tosatti wrote:
> 
> 
> make_all_cpus_request contains a race condition which can 
> trigger false request completed status, as follows:
> 
> CPU0                                              CPU1
> 
> if (test_and_set_bit(req,&vcpu->requests))
>    ....                                        	   if (test_and_set_bit(req,&vcpu->requests))
>    ..                                                  return
> proceed to smp_call_function_many(wait=1)
> 
> Use a spinlock to serialize concurrent CPUs.

Agreed, this is the safest...
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux