can: rx-offload: add skb queue for use during ISR
authorMarc Kleine-Budde <mkl@pengutronix.de>
Wed, 9 Oct 2019 04:41:08 +0000 (06:41 +0200)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Sun, 25 Jul 2021 09:36:25 +0000 (11:36 +0200)
commitc757096ea1033c46ab768709847f7776b7e92a92
tree4266fd517670b9a1c62c49a8375ee5139470199b
parenta08ec5fe709fe0d9fbd524ca6dcf6c41320d5bf3
can: rx-offload: add skb queue for use during ISR

Adding a skb to the skb_queue in rx-offload requires to take a lock.

This commit avoids this by adding an unlocked skb queue that is
appended at the end of the ISR. Having one lock at the end of the ISR
should be OK as the HW is empty, not about to overflow.

Link: https://lore.kernel.org/r/20210724204745.736053-2-mkl@pengutronix.de
Tested-by: Oleksij Rempel <o.rempel@pengutronix.de>
Co-developed-by: Kurt Van Dijck <dev.kurt@vandijck-laurijssen.be>
Signed-off-by: Kurt Van Dijck <dev.kurt@vandijck-laurijssen.be>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/dev/rx-offload.c
drivers/net/can/flexcan.c
drivers/net/can/m_can/m_can.c
drivers/net/can/spi/mcp251xfd/mcp251xfd-core.c
drivers/net/can/ti_hecc.c
include/linux/can/rx-offload.h