mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-13 16:50:05 +00:00
slcan: ldisc generated skbs are received in softirq context
As this discussion pointed out http://marc.info/?l=linux-netdev&m=131257225602375 netdevices that are based on serial line disciplines should use netif_rx_ni() when pushing received socketbuffers into the netdev rx queue. Following commit 614851601c121b1320a35757ab88292d6272f906 ("slip: fix NOHZ local_softirq_pending 08 warning") this patch updates the slcan driver accordingly. Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net> CC: Matvejchikov Ilya <matvejchikov@gmail.com> CC: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e33f7a9f37
commit
174c95d252
@ -197,7 +197,7 @@ static void slc_bump(struct slcan *sl)
|
|||||||
skb->ip_summed = CHECKSUM_UNNECESSARY;
|
skb->ip_summed = CHECKSUM_UNNECESSARY;
|
||||||
memcpy(skb_put(skb, sizeof(struct can_frame)),
|
memcpy(skb_put(skb, sizeof(struct can_frame)),
|
||||||
&cf, sizeof(struct can_frame));
|
&cf, sizeof(struct can_frame));
|
||||||
netif_rx(skb);
|
netif_rx_ni(skb);
|
||||||
|
|
||||||
sl->dev->stats.rx_packets++;
|
sl->dev->stats.rx_packets++;
|
||||||
sl->dev->stats.rx_bytes += cf.can_dlc;
|
sl->dev->stats.rx_bytes += cf.can_dlc;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user