| 
         
xen-devel
RE: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets
 
>-----Original Message-----
>From: Keir Fraser [mailto:keir.fraser@xxxxxxxxxxxxx]
>Sent: Thursday, April 15, 2010 4:22 PM
>To: Juergen Gross
>Cc: xen-devel@xxxxxxxxxxxxxxxxxxx; Jiang, Yunhong
>Subject: Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using 
>tasklets
>
>On 15/04/2010 09:13, "Keir Fraser" <keir.fraser@xxxxxxxxxxxxx> wrote:
>
>> Better hope so or e.g.,
>> acpi_enter_sleep
>> ->continue_hypercall_on_cpu(enter_state_helper)
>> ->enter_state
>> ->freeze_domains
>> ->domain_pause
>> ->vcpu_sleep_sync
>> ->sync_vcpu_execstate
>> Also wouldn't work.
>
>Actually that's a good example because it now won't work, but for other
>reasons! The hypercall continuation can interrupt another vcpu's execution,
>and then try to synchronously pause that vcpu. Which will deadlock.
>
>Luckily I think we can re-jig this code to freeze_domains() before doing the
>continue_hypercall_on_cpu(). I've cc'ed one of the CPU RAS guys. :-)
Hmm, I have cc'ed one of the PM guys because it is enter_state :-)
Can we add check in vcpu_sleep_sync() for current? It is meaningless to 
cpu_relax for current vcpu in that situation, especially if we are not in irq 
context.
I'm not sure why in freeze_domains it only checkes dom0's vcpu for current, 
instead of all domains.
--jyh
>
> -- Keir
>
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 
 |   
 
| <Prev in Thread] | 
Current Thread | 
[Next in Thread>
 |  
- Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, (continued)
- Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework	using	tasklets, Juergen Gross
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework	using	tasklets, Juergen Gross
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework	using	tasklets, Juergen Gross
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework	using	tasklets, Juergen Gross
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - RE: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets,
Jiang, Yunhong <=
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - RE: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Yu, Ke
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - RE: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Yu, Ke
 
- RE: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Wei, Gang
 - Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Keir Fraser
 - RE: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Wei, Gang
 
- RE: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using	tasklets, Wei, Gang
 
    
 
 |  
  
 | 
    |