aboutsummaryrefslogtreecommitdiffstats
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
parente1000e: reset swflag after resetting hardware (diff)
downloadlinux-dev-a8f88ff5a5abc2ce9f7d7d2694178b2c617d713a.tar.xz
linux-dev-a8f88ff5a5abc2ce9f7d7d2694178b2c617d713a.zip
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 {
unsigned long led_status;
unsigned int flags;
+ struct work_struct downshift_task;
+ struct work_struct update_phy_task;
};
struct e1000_info {