summaryrefslogtreecommitdiff
path: root/drivers/net/e1000e/e1000.h
diff options
context:
space:
mode:
authorJesse Brandeburg <jesse.brandeburg@intel.com>2008-10-02 16:33:25 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2008-10-02 18:28:12 -0700
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 f0c48a2a679..8087bda9721 100644
--- a/drivers/net/e1000e/e1000.h
+++ b/drivers/net/e1000e/e1000.h
@@ -284,6 +284,8 @@ struct e1000_adapter {
unsigned long led_status;
unsigned int flags;
+ struct work_struct downshift_task;
+ struct work_struct update_phy_task;
};
struct e1000_info {