xen/timer: Missing IRQF_NO_SUSPEND in timer code broke suspend.
authorIan Campbell <Ian.Campbell@citrix.com>
Tue, 8 Feb 2011 14:03:31 +0000 (14:03 +0000)
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Thu, 3 Mar 2011 17:00:31 +0000 (12:00 -0500)
The patches missed an indirect use of IRQF_NO_SUSPEND pulled in via
IRQF_TIMER. The following patch fixes the issue.

With this fixlet PV guest migration works just fine. I also booted the
entire series as a dom0 kernel and it appeared fine.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
arch/x86/xen/time.c

index 067759e3d6a525b53198673d6029ec4d6328cae7..2e2d370a47b1517bf1caa2503c04a96e1fa3b79a 100644 (file)
@@ -397,7 +397,9 @@ void xen_setup_timer(int cpu)
                name = "<timer kasprintf failed>";
 
        irq = bind_virq_to_irqhandler(VIRQ_TIMER, cpu, xen_timer_interrupt,
-                                     IRQF_DISABLED|IRQF_PERCPU|IRQF_NOBALANCING|IRQF_TIMER,
+                                     IRQF_DISABLED|IRQF_PERCPU|
+                                     IRQF_NOBALANCING|IRQF_TIMER|
+                                     IRQF_FORCE_RESUME,
                                      name, NULL);
 
        evt = &per_cpu(xen_clock_events, cpu);