blob: 97f16602637a49e8c091b95c878ea0ccb7229ac0 [file] [log] [blame]
From 3948aaad6a3b33e3a11f1c7b9b9b99b458c23b2d Mon Sep 17 00:00:00 2001
From: Ingo Molnar <mingo@elte.hu>
Date: Fri, 3 Jul 2009 08:29:24 -0500
Subject: [PATCH] drivers/net: Use disable_irq_nosync() in 8139too
commit 6c8bc0117209ae448ca6eb3e82caee6340be6254 in tip.
Use disable_irq_nosync() instead of disable_irq() as this might be
called in atomic context with netpoll.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
diff --git a/drivers/net/8139too.c b/drivers/net/8139too.c
index 25f7339..3b8ff0d 100644
--- a/drivers/net/8139too.c
+++ b/drivers/net/8139too.c
@@ -2195,7 +2195,11 @@ static irqreturn_t rtl8139_interrupt (int irq, void *dev_instance)
*/
static void rtl8139_poll_controller(struct net_device *dev)
{
- disable_irq(dev->irq);
+ /*
+ * use _nosync() variant - might be used by netconsole
+ * from atomic contexts:
+ */
+ disable_irq_nosync(dev->irq);
rtl8139_interrupt(dev->irq, dev);
enable_irq(dev->irq);
}
--
1.7.1.1