hostap: Revert a toxic part of the conversion to net_device_ops
authorMartin Decky <martin@decky.cz>
Thu, 10 Sep 2009 01:44:47 +0000 (03:44 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 23 Sep 2009 15:35:39 +0000 (11:35 -0400)
As the hostap driver was converted to use net_device_ops, a mistake was
made in hostap_main.c (commit 5ae4efbcd2611562a8b93596be034e63495706a5).
Originally, the tx_queue_len was set to 0 for every other interface than
HOSTAP_INTERFACE_MASTER, but the new fragment of code sets tx_queue_len to
0 only for HOSTAP_INTERFACE_MASTER. The opposite of the previous
behavior makes the driver to drop all packets in AP mode.

Change the way 0 is assigned to tx_queue_len according to the original
logic.

Signed-off-by: Martin Decky <martin@decky.cz>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/hostap/hostap_main.c

index 6fe122f..eb57d1e 100644 (file)
@@ -875,15 +875,16 @@ void hostap_setup_dev(struct net_device *dev, local_info_t *local,
 
        switch(type) {
        case HOSTAP_INTERFACE_AP:
+               dev->tx_queue_len = 0;  /* use main radio device queue */
                dev->netdev_ops = &hostap_mgmt_netdev_ops;
                dev->type = ARPHRD_IEEE80211;
                dev->header_ops = &hostap_80211_ops;
                break;
        case HOSTAP_INTERFACE_MASTER:
-               dev->tx_queue_len = 0;  /* use main radio device queue */
                dev->netdev_ops = &hostap_master_ops;
                break;
        default:
+               dev->tx_queue_len = 0;  /* use main radio device queue */
                dev->netdev_ops = &hostap_netdev_ops;
        }