> >> > @@ -122,10 +124,25 @@ static void vmx_vcpu_block(struct vcpu *v)
> >> > * new vCPU to the list.
> >> > */
> >> > spin_unlock_irqrestore(&v->arch.hvm_vmx.pi_hotplug_lock, flags);
> >> > -return;
> >> > +return 1;
> >> > }
> >> >
> >> > sp
On Tue, May 31, 2016 at 11:31 AM, Wu, Feng wrote:
>
>
>> -Original Message-
>> From: Jan Beulich [mailto:jbeul...@suse.com]
>> Sent: Friday, May 27, 2016 10:57 PM
>> To: Wu, Feng
>> Cc: andrew.coop...@citrix.com; dario.faggi...@citrix.com;
>> george.dun...@eu.citrix.com; Tian, Kevin ; xen
> -Original Message-
> From: Jan Beulich [mailto:jbeul...@suse.com]
> Sent: Friday, May 27, 2016 10:57 PM
> To: Wu, Feng
> Cc: andrew.coop...@citrix.com; dario.faggi...@citrix.com;
> george.dun...@eu.citrix.com; Tian, Kevin ; xen-
> de...@lists.xen.org; konrad.w...@oracle.com; k...@xen.o
>>> On 26.05.16 at 15:39, wrote:
> @@ -102,9 +103,10 @@ void vmx_pi_per_cpu_init(unsigned int cpu)
> {
> INIT_LIST_HEAD(&per_cpu(vmx_pi_blocking, cpu).list);
> spin_lock_init(&per_cpu(vmx_pi_blocking, cpu).lock);
> +per_cpu(vmx_pi_blocking, cpu).down = 0;
This seems pointless - per
When cpu is offline, we need to move all the vcpus in its blocking
list to another online cpu, this patch handles it. And we need to
carefully handle the situation that calling to vmx_vcpu_block() and
cpu offline occur concurrently.
Signed-off-by: Feng Wu
---
xen/arch/x86/hvm/vmx/vmcs.c|