[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250829084747.55c6386f@kernel.org>
Date: Fri, 29 Aug 2025 08:47:47 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Linus Lüssing <linus.luessing@...3.blue>
Cc: bridge@...ts.linux.dev, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, Nikolay Aleksandrov <razor@...ckwall.org>,
Ido Schimmel <idosch@...dia.com>, Andrew Lunn <andrew+netdev@...n.ch>,
Simon Horman <horms@...nel.org>, Paolo Abeni <pabeni@...hat.com>, Eric
Dumazet <edumazet@...gle.com>, "David S . Miller" <davem@...emloft.net>,
Kuniyuki Iwashima <kuniyu@...gle.com>, Stanislav Fomichev
<sdf@...ichev.me>, Xiao Liang <shaw.leon@...il.com>
Subject: Re: [PATCH 0/9] net: bridge: reduce multicast checks in fast path
On Fri, 29 Aug 2025 10:53:41 +0200 Linus Lüssing wrote:
> This patchset introduces new state variables to combine and reduce the
> number of checks we would otherwise perform on every multicast packet
> in fast/data path.
>
> The second reason for introducing these new, internal multicast active
> variables is to later propagate a safety mechanism which was introduced
> in b00589af3b04 ("bridge: disable snooping if there is no querier") to
> switchdev/DSA, too. That is to notify switchdev/DSA if multicast
> snooping can safely be applied without potential packet loss.
Please leave the git-generated diff stat in the cover letter.
Please include tree designation in the subject, per:
https://www.kernel.org/doc/html/next/process/maintainer-netdev.html
I'll leave the real review to the experts but this series appears
to make kselftests unhappy:
[ 106.423894] WARNING: CPU: 3 PID: 1121 at net/bridge/br_multicast.c:1388 __br_multicast_stop+0xa0/0xc0 [bridge]
[ 106.424022] Modules linked in: sch_ingress 8021q act_mirred cls_matchall sch_red dummy bridge stp llc sch_tbf vrf veth
[ 106.424144] CPU: 3 UID: 0 PID: 1121 Comm: ip Not tainted 6.17.0-rc2-virtme #1 PREEMPT(voluntary)
[ 106.424235] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 106.424301] RIP: 0010:__br_multicast_stop+0xa0/0xc0 [bridge]
[ 106.424371] Code: 89 df e8 f3 fd ff ff 80 bb 2c 01 00 00 00 75 19 80 bb 0c 02 00 00 00 75 1d 48 8b 3b 5b 48 81 c7 4c 03 00 00 e9 b1 c2 0b f8 90 <0f> 0b 90 80 bb 0c 02 00 00 00 74 e3 90 0f 0b 90 48 8b 3b 5b 48 81
[ 106.424544] RSP: 0018:ffffb78500283888 EFLAGS: 00010202
[ 106.424586] RAX: 0000000000000000 RBX: ffff979907d81af0 RCX: 0000000000000000
[ 106.424665] RDX: ffff979907d81c50 RSI: 0000000000000001 RDI: ffff979907d819c0
[ 106.424753] RBP: ffff979907d819c0 R08: ffffffffb94f0180 R09: ffffb78500283b40
[ 106.424836] R10: ffff97990342d250 R11: ffff979907d81000 R12: ffff979907d819c0
[ 106.424913] R13: 0000000000000002 R14: 0000000000000001 R15: 0000000000000001
[ 106.424992] FS: 00007f7e9de78800(0000) GS:ffff979985967000(0000) knlGS:0000000000000000
[ 106.425073] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 106.425144] CR2: 0000000000447b60 CR3: 0000000004d3b003 CR4: 0000000000772ef0
[ 106.425226] PKRU: 55555554
[ 106.425250] Call Trace:
[ 106.425278] <TASK>
[ 106.425305] br_multicast_toggle_vlan_snooping+0x1a9/0x1e0 [bridge]
[ 106.425383] br_boolopt_multi_toggle+0x54/0x90 [bridge]
[ 106.425443] br_changelink+0x4be/0x510 [bridge]
[ 106.425510] ? ns_capable+0x2d/0x60
[ 106.425557] rtnl_newlink+0x73f/0xbc0
[ 106.425605] ? rtnl_setlink+0x2c0/0x2c0
[ 106.425633] rtnetlink_rcv_msg+0x358/0x400
[ 106.425676] ? update_load_avg+0x6f/0x350
[ 106.425726] ? rtnl_calcit.isra.0+0x110/0x110
[ 106.425778] netlink_rcv_skb+0x57/0x100
[ 106.425819] netlink_unicast+0x252/0x380
[ 106.425858] ? __alloc_skb+0xdb/0x190
[ 106.425904] netlink_sendmsg+0x1be/0x3e0
[ 106.425945] ____sys_sendmsg+0x132/0x260
[ 106.425984] ? copy_msghdr_from_user+0x6c/0xa0
[ 106.426039] ___sys_sendmsg+0x87/0xd0
[ 106.426083] ? __handle_mm_fault+0xa41/0xe50
[ 106.426144] __sys_sendmsg+0x71/0xd0
[ 106.426184] do_syscall_64+0xa4/0x260
[ 106.426224] entry_SYSCALL_64_after_hwframe+0x4b/0x53
[ 106.426279] RIP: 0033:0x7f7e9e0451e7
Powered by blists - more mailing lists