DORMANTno replies

[PATCH 2.6 7/14] e1000: Replace schedule_timeout() with msleep()/msleep_interruptible() nacc@us.ibm.com

From: Ganesh Venkatesan <hidden>
Date: 2005-01-07 01:21:33

Signed-off-by: Ganesh Venkatesan <redacted>
diff -up net-drivers-2.6/drivers/net/e1000/e1000_ethtool.c net-drivers-2.6/drivers/net/e1000.new/e1000_ethtool.c
--- net-drivers-2.6/drivers/net/e1000/e1000_ethtool.c	2004-12-03 07:24:37.089623336 -0800
+++ net-drivers-2.6/drivers/net/e1000.new/e1000_ethtool.c	2004-12-03 07:24:38.346432272 -0800
@@ -1566,9 +1566,7 @@ e1000_phys_id(struct net_device *netdev,
 	e1000_setup_led(&adapter->hw);
 	mod_timer(&adapter->blink_timer, jiffies);
 
-	set_current_state(TASK_INTERRUPTIBLE);
-
-	schedule_timeout(data * HZ);
+	msleep_interruptible(data * 1000);
 	del_timer_sync(&adapter->blink_timer);
 	e1000_led_off(&adapter->hw);
 	clear_bit(E1000_LED_ON, &adapter->led_status);
diff -up net-drivers-2.6/drivers/net/e1000/e1000_osdep.h net-drivers-2.6/drivers/net/e1000.new/e1000_osdep.h
--- net-drivers-2.6/drivers/net/e1000/e1000_osdep.h	2004-12-03 07:24:37.090623184 -0800
+++ net-drivers-2.6/drivers/net/e1000.new/e1000_osdep.h	2004-12-03 07:24:38.620390624 -0800
@@ -42,13 +42,8 @@
 #include <linux/sched.h>
 
 #ifndef msec_delay
-#define msec_delay(x)	do { if(in_interrupt()) { \
-				/* Don't mdelay in interrupt context! */ \
-	                	BUG(); \
-			} else { \
-				set_current_state(TASK_UNINTERRUPTIBLE); \
-				schedule_timeout((x * HZ)/1000 + 2); \
-			} } while(0)
+#define msec_delay(x) msleep(x)
+
 /* Some workarounds require millisecond delays and are run during interrupt
  * context.  Most notably, when establishing link, the phy may need tweaking
  * but cannot process phy register reads/writes faster than millisecond
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help