blob: cab546d10261c7a5ac0f105d212fdc0bd2fd61cb [file] [log] [blame]
From 06a8fc443a4c773d781959b582eb0bd56e793a1b 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>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
---
drivers/net/8139too.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/drivers/net/8139too.c b/drivers/net/8139too.c
index f0d23de..5bb7407 100644
--- a/drivers/net/8139too.c
+++ b/drivers/net/8139too.c
@@ -2172,7 +2172,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.0.4