|
@@ -346,7 +346,7 @@ void can_restart(unsigned long data)
|
|
skb = dev_alloc_skb(sizeof(struct can_frame));
|
|
skb = dev_alloc_skb(sizeof(struct can_frame));
|
|
if (skb == NULL) {
|
|
if (skb == NULL) {
|
|
err = -ENOMEM;
|
|
err = -ENOMEM;
|
|
- goto out;
|
|
|
|
|
|
+ goto restart;
|
|
}
|
|
}
|
|
skb->dev = dev;
|
|
skb->dev = dev;
|
|
skb->protocol = htons(ETH_P_CAN);
|
|
skb->protocol = htons(ETH_P_CAN);
|
|
@@ -361,13 +361,13 @@ void can_restart(unsigned long data)
|
|
stats->rx_packets++;
|
|
stats->rx_packets++;
|
|
stats->rx_bytes += cf->can_dlc;
|
|
stats->rx_bytes += cf->can_dlc;
|
|
|
|
|
|
|
|
+restart:
|
|
dev_dbg(dev->dev.parent, "restarted\n");
|
|
dev_dbg(dev->dev.parent, "restarted\n");
|
|
priv->can_stats.restarts++;
|
|
priv->can_stats.restarts++;
|
|
|
|
|
|
/* Now restart the device */
|
|
/* Now restart the device */
|
|
err = priv->do_set_mode(dev, CAN_MODE_START);
|
|
err = priv->do_set_mode(dev, CAN_MODE_START);
|
|
|
|
|
|
-out:
|
|
|
|
netif_carrier_on(dev);
|
|
netif_carrier_on(dev);
|
|
if (err)
|
|
if (err)
|
|
dev_err(dev->dev.parent, "Error %d during restart", err);
|
|
dev_err(dev->dev.parent, "Error %d during restart", err);
|