diff options
author | Stephen Hemminger <shemminger@osdl.org> | 2006-06-13 10:17:29 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-06-13 22:16:41 +0200 |
commit | 26ec43f132d1cf282124a020b2bb5310496c9132 (patch) | |
tree | df15d8e8be20cde5f02db5546affb77fdd0cfbc4 | |
parent | [PATCH] sky2: don't hard code number of ports (diff) | |
download | linux-26ec43f132d1cf282124a020b2bb5310496c9132.tar.xz linux-26ec43f132d1cf282124a020b2bb5310496c9132.zip |
[PATCH] sky2: fix hotplug detect during poll
If the poll routine detects no hardware available, it needs to dequeue
it self from the network poll list. Linus didn't understand NAPI.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r-- | drivers/net/sky2.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/sky2.c b/drivers/net/sky2.c index 6ad676d2cbc1..b680e64ad2ca 100644 --- a/drivers/net/sky2.c +++ b/drivers/net/sky2.c @@ -2181,7 +2181,7 @@ static int sky2_poll(struct net_device *dev0, int *budget) u32 status = sky2_read32(hw, B0_Y2_SP_EISR); if (!~status) - return 0; + goto out; if (status & Y2_IS_HW_ERR) sky2_hw_intr(hw); @@ -2219,7 +2219,7 @@ static int sky2_poll(struct net_device *dev0, int *budget) if (sky2_more_work(hw)) return 1; - +out: netif_rx_complete(dev0); sky2_read32(hw, B0_Y2_SP_LISR); |