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

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 7:23 PM
> To: Jiang, Yunhong
> Cc: xen-devel@xxxxxxxxxxxxxxxxxxx; Yu, Ke
> Subject: Re: [Xen-devel] [Patch] continue_hypercall_on_cpu rework using
> tasklets
> 
> On 15/04/2010 12:06, "Keir Fraser" <keir.fraser@xxxxxxxxxxxxx> wrote:
> 
> >> 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.
> >
> > Well actually pausing any vcpu from within the hypercall continuation is
> > dangerous. The softirq handler running the hypercall continuation may
> have
> > interrupted some running VCPU X. And the VCPU Y that the continuation
> is
> > currently trying to pause may itself be trying to pause X. So we can get a
> > deadlock that way. The freeze_domains() *has* to be pulled outside of the
> > hypercall continuation.
> 
> Changesets 21180 and 21181 in xen-unstable are my attempts to fix this. Yu
> Ke, please let me know if these look and test okay for you guys.
> 

We have a stress S3 test upon the Xen 4.1 unstable. Unfortunately, cset 21181 
cannot pass the stress. It hangs after 48 times S3 suspend/resume.  Another 
round test even shows it hangs after 2 times suspend/resume. But it is too 
early to say cset 21181/21180 is the evil, because even cset 21172 (cset ahead 
of continue_hypercall_on_cpu improvement patch) cannot pass the S3 test either, 
although it has bigger success suspend/resume times than cset 21181 . so 
generally, there must be something wrong with S3 logic since Xen 4.0 release. 
We are still trying to dig it out...

Best Regards
Ke 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.