[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] pv 2.6.31 (kernel.org) and save/migrate fails, domU BUG
On Wed, 2009-11-25 at 19:28 +0000, Jeremy Fitzhardinge wrote: > On 11/25/09 06:12, Ian Campbell wrote: > > tick_resume() is never called on secondary processors. Presumably this > > is because they are offlined for suspend on native and so this is > > normally taken care of in the CPU onlining path. Under Xen we keep all > > CPUs online over a suspend. > > > > This patch papers over the issue for me but I will investigate a more > > generic, less hacky, way of doing to the same. > > > > tick_suspend is also only called on the boot CPU which I presume should > > be fixed too. > > > > Yep. I wonder how it ever worked? There's been a fair amount of change > in the PM code, so that could have changed things. I don't know if > there's a deep reason for not calling tick_resume() on all processors. > > Rafael, tglx: suspend/resume under Xen doesn't need to hot unplug all > the CPUs, so we don't; the hypervisor can manage the context > save/restore for all CPUs. Is there a deep reason why > timekeeping_resume() can't call the CLOCK_EVT_NOTIFY_RESUME notifier on > all online CPUs? Interrupts are disabled at that point where it currently calls the notifier, so none of the SMP function call primitives work. > > void xen_arch_resume(void) > > { > > - /* nothing */ > > + smp_call_function_many(cpu_online_mask, xen_vcpu_notify_restore, > > + (void *)CLOCK_EVT_NOTIFY_RESUME, 1); > > } > > > > This is equivalent to smp_call_function(). Oh yeah. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |