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);Please count them, too.
+
+ /* don't count error frames as real packets */
+ if (!(canid & CAN_ERR_FLAG)) {
+ stats->rx_packets++;
+ stats->rx_bytes += cf->can_dlc;
+ }
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.