* [PATCH] net: filter: use DEV_STAT_INC()
@ 2024-05-23 3:35 yunshui
2024-05-28 10:10 ` patchwork-bot+netdevbpf
0 siblings, 1 reply; 2+ messages in thread
From: yunshui @ 2024-05-23 3:35 UTC (permalink / raw)
To: bpf, netdev, linux-kernel
Cc: martin.lau, daniel, john.fastabend, edumazet, yunshui, syzbot
syzbot/KCSAN reported that races happen when multiple cpus
updating dev->stats.tx_error concurrently.
Adopt SMP safe DEV_STATS_INC() to update dev->stats fields.
Reported-by: syzbot <syzkaller@googlegroups.com>
Signed-off-by: yunshui <jiangyunshui@kylinos.cn>
---
net/core/filter.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/net/core/filter.c b/net/core/filter.c
index 2510464692af..9968db21a29d 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
@@ -2274,12 +2274,12 @@ static int __bpf_redirect_neigh_v6(struct sk_buff *skb, struct net_device *dev,
err = bpf_out_neigh_v6(net, skb, dev, nh);
if (unlikely(net_xmit_eval(err)))
- dev->stats.tx_errors++;
+ DEV_STATS_INC(dev, tx_errors);
else
ret = NET_XMIT_SUCCESS;
goto out_xmit;
out_drop:
- dev->stats.tx_errors++;
+ DEV_STATS_INC(dev, tx_errors);
kfree_skb(skb);
out_xmit:
return ret;
@@ -2380,12 +2380,12 @@ static int __bpf_redirect_neigh_v4(struct sk_buff *skb, struct net_device *dev,
err = bpf_out_neigh_v4(net, skb, dev, nh);
if (unlikely(net_xmit_eval(err)))
- dev->stats.tx_errors++;
+ DEV_STATS_INC(dev, tx_errors);
else
ret = NET_XMIT_SUCCESS;
goto out_xmit;
out_drop:
- dev->stats.tx_errors++;
+ DEV_STATS_INC(dev, tx_errors);
kfree_skb(skb);
out_xmit:
return ret;
--
2.34.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] net: filter: use DEV_STAT_INC()
2024-05-23 3:35 [PATCH] net: filter: use DEV_STAT_INC() yunshui
@ 2024-05-28 10:10 ` patchwork-bot+netdevbpf
0 siblings, 0 replies; 2+ messages in thread
From: patchwork-bot+netdevbpf @ 2024-05-28 10:10 UTC (permalink / raw)
To: Yunshui Jiang
Cc: bpf, netdev, linux-kernel, martin.lau, daniel, john.fastabend,
edumazet, syzkaller
Hello:
This patch was applied to bpf/bpf-next.git (master)
by Daniel Borkmann <daniel@iogearbox.net>:
On Thu, 23 May 2024 11:35:20 +0800 you wrote:
> syzbot/KCSAN reported that races happen when multiple cpus
> updating dev->stats.tx_error concurrently.
>
> Adopt SMP safe DEV_STATS_INC() to update dev->stats fields.
>
> Reported-by: syzbot <syzkaller@googlegroups.com>
> Signed-off-by: yunshui <jiangyunshui@kylinos.cn>
>
> [...]
Here is the summary with links:
- net: filter: use DEV_STAT_INC()
https://git.kernel.org/bpf/bpf-next/c/d9cbd8343b01
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-05-28 10:10 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-23 3:35 [PATCH] net: filter: use DEV_STAT_INC() yunshui
2024-05-28 10:10 ` patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).