xen: register timer interrupt with IRQF_TIMER
Otherwise the timer is disabled by dpm_suspend_noirq() which in turn prevents correct operation of stop_machine on multi-processor systems and breaks suspend. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Cc: Stable Kernel <stable@kernel.org>
This commit is contained in:

committed by
Jeremy Fitzhardinge

parent
fa24ba62ea
commit
f350c7922f
@@ -434,7 +434,7 @@ void xen_setup_timer(int cpu)
|
|||||||
name = "<timer kasprintf failed>";
|
name = "<timer kasprintf failed>";
|
||||||
|
|
||||||
irq = bind_virq_to_irqhandler(VIRQ_TIMER, cpu, xen_timer_interrupt,
|
irq = bind_virq_to_irqhandler(VIRQ_TIMER, cpu, xen_timer_interrupt,
|
||||||
IRQF_DISABLED|IRQF_PERCPU|IRQF_NOBALANCING,
|
IRQF_DISABLED|IRQF_PERCPU|IRQF_NOBALANCING|IRQF_TIMER,
|
||||||
name, NULL);
|
name, NULL);
|
||||||
|
|
||||||
evt = &per_cpu(xen_clock_events, cpu);
|
evt = &per_cpu(xen_clock_events, cpu);
|
||||||
|
Reference in New Issue
Block a user