Hi Kurt, > -----Original Message----- > From: Kurt Van Dijck <dev.kurt@xxxxxxxxxxxxxxxxxxxxxx> > Sent: Wednesday, April 29, 2020 11:06 AM > Subject: Re: [PATCH] can: c_can: Handle lost bus-off interrupt while IRQs are > disabled > > I have the impression that the recv path is covered, at least the null ptr would > have caused issued earlier already. > Would the problem arise in c_can_do_tx fetching a NULL echo_skb? It really looks like it. Adding a BUG_ON to the loop in c_can_do_tx triggers with a NULL skb returned by __can_get_echo_skb(). For testing I replaced the BUG_ON with a check that skips the skb if that happens (not sure if that would be a valid fix in that place): while ((obj = c_can_ffs64(pend))) { pend &= ~((u64)1 << (obj - 1)); c_can_inval_tx_object(dev, IF_RX, obj); idx = obj - priv->obj.send_frst; skb = __can_get_echo_skb(dev, idx, &len); if(!skb) continue; can_rx_offload_irq_receive_skb(&priv->offload, skb); bytes += len; pkts++; } So far it got through the night without crashing or deadlocking, but I can't really tell if we are missing pakets though. Regards, Felix ___________________________________________________ SMA Solar Technology AG Aufsichtsrat: Uwe Kleinkauf (Vorsitzender) Vorstand: Ulrich Hadding, Dr.-Ing. Juergen Reinert Handelsregister: Amtsgericht Kassel HRB 3972 Sitz der Gesellschaft: 34266 Niestetal USt-ID-Nr. DE 113 08 59 54 WEEE-Reg.-Nr. DE 95881150 ___________________________________________________