[PATCH] orinoco: orinoco_xmit() should only return valid symbolic constants
authorPavel Roskin <proski@gnu.org>
Fri, 7 Apr 2006 08:10:36 +0000 (04:10 -0400)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 24 Apr 2006 20:15:50 +0000 (16:15 -0400)
Don't ever return -errno from orinoco_xmit() - the network layer doesn't
expect it.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/orinoco.c

index ceea494ff5d004a0c856a66d72db89f7b8f209c3..173e9e4523c0031aa2671e2beb95f283cf156d79 100644 (file)
@@ -430,19 +430,19 @@ static int orinoco_xmit(struct sk_buff *skb, struct net_device *dev)
        if (! netif_running(dev)) {
                printk(KERN_ERR "%s: Tx on stopped device!\n",
                       dev->name);
-               return 1;
+               return NETDEV_TX_BUSY;
        }
        
        if (netif_queue_stopped(dev)) {
                printk(KERN_DEBUG "%s: Tx while transmitter busy!\n", 
                       dev->name);
-               return 1;
+               return NETDEV_TX_BUSY;
        }
        
        if (orinoco_lock(priv, &flags) != 0) {
                printk(KERN_ERR "%s: orinoco_xmit() called while hw_unavailable\n",
                       dev->name);
-               return 1;
+               return NETDEV_TX_BUSY;
        }
 
        if (! netif_carrier_ok(dev) || (priv->iw_mode == IW_MODE_MONITOR)) {
@@ -452,7 +452,7 @@ static int orinoco_xmit(struct sk_buff *skb, struct net_device *dev)
                stats->tx_errors++;
                orinoco_unlock(priv, &flags);
                dev_kfree_skb(skb);
-               return 0;
+               return NETDEV_TX_OK;
        }
 
        /* Length of the packet body */
@@ -551,11 +551,11 @@ static int orinoco_xmit(struct sk_buff *skb, struct net_device *dev)
 
        dev_kfree_skb(skb);
 
-       return 0;
+       return NETDEV_TX_OK;
  fail:
 
        orinoco_unlock(priv, &flags);
-       return err;
+       return NETDEV_TX_BUSY;
 }
 
 static void __orinoco_ev_alloc(struct net_device *dev, hermes_t *hw)