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

RE: [Xen-devel] cpuidle causing Dom0 soft lockups



>>> "Yu, Ke" <ke.yu@xxxxxxxxx> 07.02.10 16:36 >>>
>The attached is the updated patch, it has two changes
>- change the logic from local irq disabled *and* poll event to local irq 
>disabled *or* poll event 

Thanks.

>- Use per-CPU vcpu list to iterate the VCPU, which is more scalable. The 
>original scheduler does not provide such kind of list, so this patch implement 
>the list in scheduler code.

I'm still not really happy with that solution. I'd rather say that e.g.
vcpu_sleep_nosync() should set a flag in the vcpu structure indicating
whether that one is "urgent", and the scheduler should just maintain
a counter of "urgent" vCPU-s per pCPU. Setting the flag when a vCPU
is put to sleep guarantees that it won't be mis-treated if it got woken
by the time acpi_processor_idle() looks at it (or at least the window
would be minimal - not sure if it can be eliminated completely). Plus
not having to traverse a list is certainly better for scalability, not the
least since you're traversing a list (necessarily) including sleeping
vCPU-s (i.e. the ones that shouldn't affect the performance/
responsiveness of the system).

But in the end it would certainly depend much more on Keir's view on
it than on mine...

Jan


_______________________________________________
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®.