On 03/14/2018 10:09 AM, Jakob Unterwurzacher wrote: > On 14.03.18 08:51, Marc Kleine-Budde wrote: >>> + memcpy(cf->data, m->msg.can_msg.data, cf->can_dlc); >>> + >>> + /* don't count error frames as real packets */ >>> + if (!(canid & CAN_ERR_FLAG)) { >>> + stats->rx_packets++; >>> + stats->rx_bytes += cf->can_dlc; >>> + } >> Please count them, too. > > We do count them, as errors! > > This is what happens when you transmit a single CAN frame with nothing > connected: "TX errors" shoots up but "RX packets" stays zero.
This is handled not consistent in the existing CAN drivers. In flexcan all and c_can (all but rx overflow) are counted as rx_packets and rx_bytes. (I haven't looked at the other drivers.) I tend to count the error frames as ordinary frames. 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 |
signature.asc
Description: OpenPGP digital signature