public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [-next] !irqd_can_balance() WARNINGs at irq_move_masked_irq()
@ 2015-06-19  7:11 Sergey Senozhatsky
  2015-06-19  9:25 ` Thomas Gleixner
  0 siblings, 1 reply; 25+ messages in thread
From: Sergey Senozhatsky @ 2015-06-19  7:11 UTC (permalink / raw)
  To: Thomas Gleixner
  Cc: Jiang Liu, Borislav Petkov, linux-kernel, Sergey Senozhatsky,
	Sergey Senozhatsky

Hi,

next-20150619 is un-bootable (it `drowns` in warnings).

I modified irq_move_masked_irq() to do WARN_ONCE() instead of WARN_ON
every !irqd_can_balance(), and here it is:

[    0.412227] ------------[ cut here ]------------
[    0.412291] WARNING: CPU: 0 PID: 0 at kernel/irq/migration.c:21 irq_move_masked_irq+0x57/0xc4()
[    0.412371] Can't balance irq 0 [edge]
[    0.412428] Modules linked in:
[    0.412524] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 4.1.0-rc8-next-20150619-dbg-00010-g841f367-dirty #228
[    0.412606] Hardware name: SAMSUNG ELECTRONICS CO.,LTD Samsung DeskTop System/Samsung DeskTop System, BIOS 05CC                   04/09/2010
[    0.412693]  0000000000000009 ffff880137c03e18 ffffffff814f2acd ffffffff810851a4
[    0.412920]  ffff880137c03e68 ffff880137c03e58 ffffffff8103d196 0000000000000000
[    0.413146]  ffffffff8108bfe8 ffff880133007c00 0000000000000000 0000000000000000
[    0.413373] Call Trace:
[    0.413428]  <IRQ>  [<ffffffff814f2acd>] dump_stack+0x4c/0x6e
[    0.413532]  [<ffffffff810851a4>] ? console_unlock+0x400/0x42f
[    0.413596]  [<ffffffff8103d196>] warn_slowpath_common+0x9b/0xb5
[    0.413659]  [<ffffffff8108bfe8>] ? irq_move_masked_irq+0x57/0xc4
[    0.413722]  [<ffffffff8103d1f6>] warn_slowpath_fmt+0x46/0x48
[    0.413785]  [<ffffffff8108bfe8>] irq_move_masked_irq+0x57/0xc4
[    0.413847]  [<ffffffff8108c097>] irq_move_irq+0x42/0x56
[    0.413910]  [<ffffffff8102c410>] apic_ack_edge+0x23/0x3b
[    0.413972]  [<ffffffff81089b79>] irq_chip_ack_parent+0x14/0x16
[    0.414034]  [<ffffffff810894cd>] handle_edge_irq+0x90/0xe1
[    0.414096]  [<ffffffff81004aa9>] handle_irq+0x24/0x2a
[    0.414158]  [<ffffffff814fb2ec>] do_IRQ+0x4c/0xcd
[    0.414219]  [<ffffffff814f9c6a>] common_interrupt+0x6a/0x6a
[    0.414280]  <EOI>  [<ffffffff81403266>] ? cpuidle_enter_state+0x195/0x29d
[    0.414386]  [<ffffffff81403262>] ? cpuidle_enter_state+0x191/0x29d
[    0.414450]  [<ffffffff8140339a>] cpuidle_enter+0x17/0x19
[    0.414512]  [<ffffffff81075c30>] call_cpuidle+0x55/0x57
[    0.414573]  [<ffffffff81403381>] ? cpuidle_select+0x13/0x15
[    0.414636]  [<ffffffff81075eac>] cpu_startup_entry+0x27a/0x399
[    0.414700]  [<ffffffff814ef8bd>] rest_init+0x134/0x13a
[    0.414762]  [<ffffffff81b0df2c>] start_kernel+0x41a/0x427
[    0.414825]  [<ffffffff81b0d2fe>] x86_64_start_reservations+0x2a/0x2c
[    0.414889]  [<ffffffff81b0d46b>] x86_64_start_kernel+0x16b/0x17a
[    0.414987] ---[ end trace 082909e0a7e1599a ]---

Do you guys want to replace WAN_ON() with WARN_ONCE(), perhaps? This, of course,
doesn't fix anything; but at least one can boot the system. (not really a patch,
just an idea).

Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>

---

 kernel/irq/migration.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/kernel/irq/migration.c b/kernel/irq/migration.c
index dd203e2..0352b04 100644
--- a/kernel/irq/migration.c
+++ b/kernel/irq/migration.c
@@ -16,7 +16,9 @@ void irq_move_masked_irq(struct irq_data *idata)
 	 * Paranoia: cpu-local interrupts shouldn't be calling in here anyway.
 	 */
 	if (!irqd_can_balance(&desc->irq_data)) {
-		WARN_ON(1);
+		WARN_ONCE(1, "Can't balance irq %d [%s]\n",
+				desc->irq_data.irq,
+				desc->name);
 		return;
 	}
 

^ permalink raw reply related	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2015-06-21 14:44 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-19  7:11 [-next] !irqd_can_balance() WARNINGs at irq_move_masked_irq() Sergey Senozhatsky
2015-06-19  9:25 ` Thomas Gleixner
2015-06-19 12:21   ` Thomas Gleixner
2015-06-19 13:11     ` Sergey Senozhatsky
2015-06-19 16:09     ` Jiang Liu
2015-06-19 16:12       ` Jiang Liu
2015-06-19 16:15         ` Thomas Gleixner
2015-06-19 16:21           ` Jiang Liu
2015-06-19 16:30             ` Thomas Gleixner
2015-06-19 16:47               ` Jiang Liu
2015-06-19 17:14                 ` Sergey Senozhatsky
2015-06-20  4:32                 ` Sergey Senozhatsky
2015-06-20 10:07                 ` [tip:x86/apic] x86/hpet: Check for irq== 0 when allocating hpet MSI interrupts tip-bot for Jiang Liu
2015-06-19 16:23           ` [-next] !irqd_can_balance() WARNINGs at irq_move_masked_irq() Sergey Senozhatsky
2015-06-20  4:31     ` Sergey Senozhatsky
2015-06-20  7:52       ` Thomas Gleixner
2015-06-20  7:57         ` Sergey Senozhatsky
2015-06-20  8:13           ` Thomas Gleixner
2015-06-20  8:27             ` Sergey Senozhatsky
2015-06-20  9:12               ` Thomas Gleixner
2015-06-20 17:53                 ` Sergey Senozhatsky
2015-06-21  4:15                 ` Sergey Senozhatsky
2015-06-21 14:37                   ` Thomas Gleixner
2015-06-21 14:43                     ` [tip:x86/apic] x86/hpet: Use proper hpet device number for MSI allocation tip-bot for Thomas Gleixner
2015-06-20 17:20             ` [tip:irq/core] genirq: Remove bogus restriction in irq_move_mask_irq() tip-bot for Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox