aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/e1000e/e1000.h
diff options
context:
space:
mode:
authorJesse Brandeburg <jesse.brandeburg@intel.com>2008-10-02 19:33:25 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-02 21:28:12 -0400
commita8f88ff5a5abc2ce9f7d7d2694178b2c617d713a (patch)
treeeb621b61dc32327b52f80911b73956c7515df7ae /drivers/net/e1000e/e1000.h
parent37f40239f49fbc0b489d0327a700fee5b3898ac2 (diff)
e1000e: do not ever sleep in interrupt context
e1000e was apparently calling two functions that attempted to reserve the SWFLAG bit for exclusive (to hardware and firmware) access to the PHY and NVM (aka eeprom). These accesses could possibly call msleep to wait for the resource which is not allowed from interrupt context. Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/net/e1000e/e1000.h')
-rw-r--r--drivers/net/e1000e/e1000.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/e1000e/e1000.h b/drivers/net/e1000e/e1000.h
index f0c48a2a6799..8087bda97218 100644
--- a/drivers/net/e1000e/e1000.h
+++ b/drivers/net/e1000e/e1000.h
@@ -284,6 +284,8 @@ struct e1000_adapter {
284 unsigned long led_status; 284 unsigned long led_status;
285 285
286 unsigned int flags; 286 unsigned int flags;
287 struct work_struct downshift_task;
288 struct work_struct update_phy_task;
287}; 289};
288 290
289struct e1000_info { 291struct e1000_info {