Hi Oliver, On. 26 Nov. 2021 at 03:50, Oliver Hartkopp <socketcan@xxxxxxxxxxxx> wrote: > Hi Vincent, > > On 25.11.21 18:20, Vincent Mailhol wrote: > > > diff --git a/drivers/net/can/usb/ucan.c b/drivers/net/can/usb/ucan.c > > index d582c39fc8d0..717d4925fdb0 100644 > > --- a/drivers/net/can/usb/ucan.c > > +++ b/drivers/net/can/usb/ucan.c > > @@ -619,12 +619,13 @@ static void ucan_rx_can_msg(struct ucan_priv *up, struct ucan_message_in *m) > > /* copy the payload of non RTR frames */ > > if (!(cf->can_id & CAN_RTR_FLAG) || (cf->can_id & CAN_ERR_FLAG)) > > memcpy(cf->data, m->msg.can_msg.data, cf->len); > > + /* only frames which are neither RTR nor ERR have a payload */ > > + else > > + stats->rx_bytes += cf->len; > > This 'else' path looks wrong ... Ack. I will send a v3. And thanks a lot for the review! > > > > /* don't count error frames as real packets */ > > - if (!(cf->can_id & CAN_ERR_FLAG)) { > > + if (!(cf->can_id & CAN_ERR_FLAG)) > > stats->rx_packets++; > > - stats->rx_bytes += cf->len; > > - } > > > > /* pass it to Linux */ > > netif_rx(skb); > > Regards, > Oliver