Thread (95 messages) flat view 95 messages, 8 authors, 2015-01-26

Re: [PATCH v3 4/4] can: kvaser_usb: Add support for the Usbcan-II family

From: Marc Kleine-Budde <mkl@pengutronix.de>
Date: 2015-01-09 14:06:10
Also in: linux-can, lkml

On 01/09/2015 04:06 AM, Ahmed S. Darwish wrote:
quoted
quoted
		cf->can_id |= CAN_ERR_CRTL;
		cf->data[1] = CAN_ERR_CRTL_RX_OVERFLOW;

		stats->rx_over_errors++;
		stats->rx_errors++;

		netif_rx(skb);

		stats->rx_packets++;
		stats->rx_bytes += cf->can_dlc;
Another patch would be not to touch cf after netif_rx(), please
move the stats handling before calling netif_rx(). Same applies to
the kvaser_usb_rx_can_msg() function.
BTW, is it guaranteed from the SocketCAN stack that netif_rx()
netif_rx() is the generic networking stack already.
will never return NET_RX_DROPPED? Because if no guarantee
exists, I guess below fragment cannot be completely correct?
No, it's not guaranteed...
        stats->rx_packets++;
        stats->rx_bytes += cf->can_dlc;
        netif_rx(skb);

On the other hand, I don't see evan a single CAN driver checking
netif_rx() return value, so maybe such a check is an overkill...
A quick look shows that almost no ethernet or wireless drivers take care
about the return value. In case of a RX_DROPPED some increase a drop
counter, though.

Marc

-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help