On Wednesday 28 February 2007 15:39, Michael Wu wrote: > This prevents drivers from crashing if there is a TX timeout and the reset > callback isn't implemented. > Actually, I don't think we should bother setting the TX timeout callback at all. -- d80211: Remove tx_timeout callback From: Michael Wu This never worked in the first place and we can't use the network watchdog anyway since that checks if the queue is stopped, but wireless devices can have many queues. TX timeouts on virtual interfaces don't really make sense either since they can't stall. Signed-off-by: Michael Wu --- net/mac80211/ieee80211.c | 15 --------------- 1 files changed, 0 insertions(+), 15 deletions(-) diff --git a/net/mac80211/ieee80211.c b/net/mac80211/ieee80211.c index bbdf928..cdc8df4 100644 --- a/net/mac80211/ieee80211.c +++ b/net/mac80211/ieee80211.c @@ -2078,19 +2078,6 @@ static int ieee80211_change_mtu_apdev(st } -static void ieee80211_tx_timeout(struct net_device *dev) -{ - struct ieee80211_local *local = wdev_priv(dev->ieee80211_ptr); - - printk(KERN_WARNING "%s: resetting interface.\n", dev->name); - - if (local->ops->reset(local_to_hw(local))) - printk(KERN_ERR "%s: failed to reset interface.\n", dev->name); - else - netif_wake_queue(dev); -} - - static int ieee80211_set_mac_address(struct net_device *dev, void *addr) { struct sockaddr *a = addr; @@ -4425,7 +4412,6 @@ void ieee80211_if_setup(struct net_devic dev->set_mac_address = ieee80211_set_mac_address; dev->set_multicast_list = ieee80211_set_multicast_list; dev->change_mtu = ieee80211_change_mtu; - dev->tx_timeout = ieee80211_tx_timeout; dev->get_stats = ieee80211_get_stats; dev->open = ieee80211_open; dev->stop = ieee80211_stop; @@ -4593,7 +4579,6 @@ struct ieee80211_hw *ieee80211_alloc_hw( mdev->wireless_handlers = &ieee80211_iw_master_handler_def; mdev->do_ioctl = ieee80211_ioctl; mdev->change_mtu = ieee80211_change_mtu; - mdev->tx_timeout = ieee80211_tx_timeout; mdev->get_stats = ieee80211_get_stats; mdev->open = ieee80211_master_open; mdev->stop = ieee80211_master_stop;