[ Sasha's backport helper bot ] Hi, The upstream commit SHA1 provided is correct: 9ad86d377ef4a19c75a9c639964879a5b25a433b WARNING: Author mismatch between patch and upstream commit: Backport author: Vasiliy Kovalev<kovalev@xxxxxxxxxxxx> Commit author: Dario Binacchi<dario.binacchi@xxxxxxxxxxxxxxxxxxxx> Status in newer kernel trees: 6.12.y | Present (different SHA1: bc30b2fe8c54) 6.6.y | Present (different SHA1: 112802200944) 6.1.y | Present (different SHA1: 4ad77eb8f2e0) 5.15.y | Not found Note: The patch differs from the upstream commit: --- 1: 9ad86d377ef4 ! 1: 6ca160114ff4 can: hi311x: hi3110_can_ist(): fix potential use-after-free @@ Metadata ## Commit message ## can: hi311x: hi3110_can_ist(): fix potential use-after-free + [ Upstream commit 9ad86d377ef4a19c75a9c639964879a5b25a433b ] + The commit a22bd630cfff ("can: hi311x: do not report txerr and rxerr during bus-off") removed the reporting of rxerr and txerr even in case of correct operation (i. e. not bus-off). @@ Commit message Signed-off-by: Dario Binacchi <dario.binacchi@xxxxxxxxxxxxxxxxxxxx> Link: https://patch.msgid.link/20241122221650.633981-5-dario.binacchi@xxxxxxxxxxxxxxxxxxxx Signed-off-by: Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx> + [kovalev: changed the call order of netif_rx_ni() + according to netif_rx() of the upstream patch] + Signed-off-by: Vasiliy Kovalev <kovalev@xxxxxxxxxxxx> ## drivers/net/can/spi/hi311x.c ## @@ drivers/net/can/spi/hi311x.c: static irqreturn_t hi3110_can_ist(int irq, void *dev_id) tx_state = txerr >= rxerr ? new_state : 0; rx_state = txerr <= rxerr ? new_state : 0; can_change_state(net, cf, tx_state, rx_state); -- netif_rx(skb); +- netif_rx_ni(skb); if (new_state == CAN_STATE_BUS_OFF) { -+ netif_rx(skb); ++ netif_rx_ni(skb); can_bus_off(net); if (priv->can.restart_ms == 0) { priv->force_quit = 1; @@ drivers/net/can/spi/hi311x.c: static irqreturn_t hi3110_can_ist(int irq, void *dev_id) - cf->can_id |= CAN_ERR_CNT; + } else { cf->data[6] = txerr; cf->data[7] = rxerr; -+ netif_rx(skb); ++ netif_rx_ni(skb); } } --- Results of testing on various branches: | Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | stable/linux-5.15.y | Success | Success | | stable/linux-5.10.y | Success | Success |