From be38a6f9f4093b0f1fa9e7d8cb47d588bc117c21 Mon Sep 17 00:00:00 2001 From: Andri Yngvason Date: Fri, 16 Jan 2015 14:30:28 +0000 Subject: can: move can_stats.bus_off++ from can_bus_off into can_change_state In order to be able to move the stats increment from can_bus_off() into can_change_state(), the increment had to be moved back into code that was using can_bus_off() but not can_change_state(). As a side-effect, this patch fixes the following bugs: * Redundant call to can_bus_off() in c_can. * Bus-off counted twice in xilinx_can. Signed-off-by: Andri Yngvason Signed-off-by: Marc Kleine-Budde --- drivers/net/can/dev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'drivers/net/can/dev.c') diff --git a/drivers/net/can/dev.c b/drivers/net/can/dev.c index 3ec8f6f..e54dbc1a 100644 --- a/drivers/net/can/dev.c +++ b/drivers/net/can/dev.c @@ -289,6 +289,8 @@ static void can_update_state_error_stats(struct net_device *dev, priv->can_stats.error_passive++; break; case CAN_STATE_BUS_OFF: + priv->can_stats.bus_off++; + break; default: break; }; @@ -544,7 +546,6 @@ void can_bus_off(struct net_device *dev) netdev_dbg(dev, "bus-off\n"); netif_carrier_off(dev); - priv->can_stats.bus_off++; if (priv->restart_ms) mod_timer(&priv->restart_timer, -- cgit v1.1