aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/can/grcan.c
diff options
context:
space:
mode:
authorMarc Kleine-Budde <mkl@pengutronix.de>2021-03-19 15:21:32 +0100
committerMarc Kleine-Budde <mkl@pengutronix.de>2021-03-30 11:14:28 +0200
commitf318482a1c57315d0efccd2861f153f55c2117c6 (patch)
tree7197d4579a82c7098e3c3af382615138529b7003 /drivers/net/can/grcan.c
parentcan: dev: can_free_echo_skb(): don't crash the kernel if can_priv::echo_skb is accessed out of bounds (diff)
downloadlinux-dev-f318482a1c57315d0efccd2861f153f55c2117c6.tar.xz
linux-dev-f318482a1c57315d0efccd2861f153f55c2117c6.zip
can: dev: can_free_echo_skb(): extend to return can frame length
In order to implement byte queue limits (bql) in CAN drivers, the length of the CAN frame needs to be passed into the networking stack even if the transmission failed for some reason. To avoid to calculate this length twice, extend can_free_echo_skb() to return that value. Convert all users of this function, too. This patch is the natural extension of commit: | 9420e1d495e2 ("can: dev: can_get_echo_skb(): extend to return can | frame length") Link: https://lore.kernel.org/r/20210319142700.305648-3-mkl@pengutronix.de Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'drivers/net/can/grcan.c')
-rw-r--r--drivers/net/can/grcan.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/can/grcan.c b/drivers/net/can/grcan.c
index 4a8453290530..78e27940b2af 100644
--- a/drivers/net/can/grcan.c
+++ b/drivers/net/can/grcan.c
@@ -520,7 +520,7 @@ static int catch_up_echo_skb(struct net_device *dev, int budget, bool echo)
can_get_echo_skb(dev, i, NULL);
} else {
/* For cleanup of untransmitted messages */
- can_free_echo_skb(dev, i);
+ can_free_echo_skb(dev, i, NULL);
}
priv->eskbp = grcan_ring_add(priv->eskbp, GRCAN_MSG_SIZE,