Aha, yes, you are right. So do I need create a patch, or you can simply revert
some chunks?
--jyh
>-----Original Message-----
>From: Keir Fraser [mailto:keir.fraser@xxxxxxxxxxxxx]
>Sent: Thursday, April 15, 2010 6:17 PM
>To: Jiang, Yunhong
>Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
>Subject: Re: CPU offlining patch xen-unstable:21049
>
>On 15/04/2010 09:50, "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx> wrote:
>
>> I think the try_lock is not for the cpu_down(). The point is, if another CPU
>> is trying the get the lock.
>>
>> Considering following scnerio:
>> 1) cpu_down() in CPU A, and get the xenpf_lock, then call to
>> stop_machine_run(), trying to bring all CPU to stop_machine_run context.
>> 2) At the same time, another vcpu in CPU B do a xenpf hypercall, and try to
>> get the xenpf_lock. If ther is no retyr for this lock, it can't get
>> xenpf_lock, it will never go to the softirq
>> So the system will hang.
>>
>> Hope this make thing clear.
>
>But CPU A doesn't hold the xenpf_lock when it calls stop_machine_run(). It
>dropped it before cpu_down() got invoked, because that gets executed via
>continue_hypercall_on_cpu().
>
> -- Keir
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|