From: Jan Beulich Date: Mon, 18 Mar 2013 16:13:32 +0000 (+0100) Subject: x86/HPET: mask interrupt while changing affinity X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~7098 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=2d8a2823f3d6d2e5fba832e0afe1fab8fbcb3694;p=xen.git x86/HPET: mask interrupt while changing affinity While being unable to reproduce the "No irq handler for vector ..." messages observed on other systems, the change done by 5dc3fd2 ('x86: extend diagnostics for "No irq handler for vector" messages') appears to point at the lack of masking - at least I can't see what else might be wrong with the HPET MSI code that could trigger these warnings. While at it, also adjust the message printed by aforementioned commit to not pointlessly insert spaces - we don't need aligned tabular output here. Signed-off-by: Jan Beulich Acked-by: Keir Fraser --- diff --git a/xen/arch/x86/hpet.c b/xen/arch/x86/hpet.c index 02926b5319..9b3d83b728 100644 --- a/xen/arch/x86/hpet.c +++ b/xen/arch/x86/hpet.c @@ -466,7 +466,9 @@ static void set_channel_irq_affinity(const struct hpet_event_channel *ch) ASSERT(!local_irq_is_enabled()); spin_lock(&desc->lock); + hpet_msi_mask(desc); hpet_msi_set_affinity(desc, cpumask_of(ch->cpu)); + hpet_msi_unmask(desc); spin_unlock(&desc->lock); } diff --git a/xen/arch/x86/irq.c b/xen/arch/x86/irq.c index 8e0b004cd3..5e0f463c38 100644 --- a/xen/arch/x86/irq.c +++ b/xen/arch/x86/irq.c @@ -826,7 +826,7 @@ void do_IRQ(struct cpu_user_regs *regs) if ( ~irq < nr_irqs && irq_desc_initialized(desc) ) { spin_lock(&desc->lock); - printk("IRQ%d a=%04lx[%04lx,%04lx] v=%02x[%02x] t=%-15s s=%08x\n", + printk("IRQ%d a=%04lx[%04lx,%04lx] v=%02x[%02x] t=%s s=%08x\n", ~irq, *cpumask_bits(desc->affinity), *cpumask_bits(desc->arch.cpu_mask), *cpumask_bits(desc->arch.old_cpu_mask),