firewire: net: adjust net_device ops
authorStefan Richter <stefanr@s5r6.in-berlin.de>
Sun, 14 Jun 2009 09:47:44 +0000 (11:47 +0200)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Sun, 14 Jun 2009 12:26:29 +0000 (14:26 +0200)
The .ndo_tx_timeout callback is currently without function; delete it.
Give .watchdog_timeo a proper time value; lower it to 2 seconds.

Decrease the .tx_queue_len from 1000 (as in Ethernet card drivers) to 10
because we have only 64 transaction labels available, and responders
might have further limits of their AR req contexts.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/net.c

index d67e8d9..95e35a3 100644 (file)
@@ -1328,13 +1328,6 @@ static int fwnet_tx(struct sk_buff *skb, struct net_device *net)
        return NETDEV_TX_OK;
 }
 
-static void fwnet_tx_timeout(struct net_device *net)
-{
-       fw_error("%s: timeout\n", net->name);
-
-       /* FIXME: What to do if we timeout? */
-}
-
 static int fwnet_change_mtu(struct net_device *net, int new_mtu)
 {
        if (new_mtu < 68)
@@ -1359,7 +1352,6 @@ static const struct net_device_ops fwnet_netdev_ops = {
        .ndo_open       = fwnet_open,
        .ndo_stop       = fwnet_stop,
        .ndo_start_xmit = fwnet_tx,
-       .ndo_tx_timeout = fwnet_tx_timeout,
        .ndo_change_mtu = fwnet_change_mtu,
 };
 
@@ -1367,13 +1359,13 @@ static void fwnet_init_dev(struct net_device *net)
 {
        net->header_ops         = &fwnet_header_ops;
        net->netdev_ops         = &fwnet_netdev_ops;
-       net->watchdog_timeo     = 100000; /* ? FIXME */
+       net->watchdog_timeo     = 2 * HZ;
        net->flags              = IFF_BROADCAST | IFF_MULTICAST;
        net->features           = NETIF_F_HIGHDMA;
        net->addr_len           = FWNET_ALEN;
        net->hard_header_len    = FWNET_HLEN;
        net->type               = ARPHRD_IEEE1394;
-       net->tx_queue_len       = 1000; /* ? FIXME */
+       net->tx_queue_len       = 10;
        SET_ETHTOOL_OPS(net, &fwnet_ethtool_ops);
 }