ieee1394: eth1394: contain host reset
authorStefan Richter <stefanr@s5r6.in-berlin.de>
Mon, 2 Apr 2007 00:16:40 +0000 (02:16 +0200)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Sun, 29 Apr 2007 22:00:31 +0000 (00:00 +0200)
Call only eth1394's own host reset handler from .tx_timeout, not the
reset hooks of all other IEEE 1394 drivers.

A minor drawback of this patch is that ether1394_host_reset by timeout
is not serialized against ether1394_host_reset by bus reset.

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

index 049f095ddff9003728c7c233abbe15e6e5375655..8f19f5b77a59b0da8fc6c624a5d85d55011e5d44 100644 (file)
@@ -258,10 +258,8 @@ static void ether1394_tx_timeout(struct net_device *dev)
        struct hpsb_host *host =
                        ((struct eth1394_priv *)netdev_priv(dev))->host;
 
-       ETH1394_PRINT(KERN_ERR, dev->name, "Timeout, resetting host %s\n",
-                     host->driver->name);
-       highlevel_host_reset(host);
-       netif_wake_queue(dev);
+       ETH1394_PRINT(KERN_ERR, dev->name, "Timeout, resetting host\n");
+       ether1394_host_reset(host);
 }
 
 static int ether1394_change_mtu(struct net_device *dev, int new_mtu)