]> nv-tegra.nvidia Code Review - linux-2.6.git/commitdiff
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>
Mon, 14 Sep 2009 18:36:03 +0000 (14:36 -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 6fe122f18c0dcd68f8de72db16cc3310338aaf2b..eb57d1ea361f73738ee22451e29e6b799a82db81 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;
        }