aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/spider_net.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/spider_net.c')
-rw-r--r--drivers/net/spider_net.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/net/spider_net.c b/drivers/net/spider_net.c
index 418138dd6c68..f88fcac0e46a 100644
--- a/drivers/net/spider_net.c
+++ b/drivers/net/spider_net.c
@@ -1945,10 +1945,11 @@ spider_net_stop(struct net_device *netdev)
1945 * called as task when tx hangs, resets interface (if interface is up) 1945 * called as task when tx hangs, resets interface (if interface is up)
1946 */ 1946 */
1947static void 1947static void
1948spider_net_tx_timeout_task(void *data) 1948spider_net_tx_timeout_task(struct work_struct *work)
1949{ 1949{
1950 struct net_device *netdev = data; 1950 struct spider_net_card *card =
1951 struct spider_net_card *card = netdev_priv(netdev); 1951 container_of(work, struct spider_net_card, tx_timeout_task);
1952 struct net_device *netdev = card->netdev;
1952 1953
1953 if (!(netdev->flags & IFF_UP)) 1954 if (!(netdev->flags & IFF_UP))
1954 goto out; 1955 goto out;
@@ -2122,7 +2123,7 @@ spider_net_alloc_card(void)
2122 card = netdev_priv(netdev); 2123 card = netdev_priv(netdev);
2123 card->netdev = netdev; 2124 card->netdev = netdev;
2124 card->msg_enable = SPIDER_NET_DEFAULT_MSG; 2125 card->msg_enable = SPIDER_NET_DEFAULT_MSG;
2125 INIT_WORK(&card->tx_timeout_task, spider_net_tx_timeout_task, netdev); 2126 INIT_WORK(&card->tx_timeout_task, spider_net_tx_timeout_task);
2126 init_waitqueue_head(&card->waitq); 2127 init_waitqueue_head(&card->waitq);
2127 atomic_set(&card->tx_timeout_task_counter, 0); 2128 atomic_set(&card->tx_timeout_task_counter, 0);
2128 2129