]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
vxlan: vnifilter: fix spurious notification on VNI update
authorAndy Roulin <aroulin@nvidia.com>
Tue, 2 Jun 2026 18:51:37 +0000 (11:51 -0700)
committerJakub Kicinski <kuba@kernel.org>
Thu, 4 Jun 2026 15:47:45 +0000 (08:47 -0700)
commit84683b5b60c7274e2c8f7f413d39d78d3db5540f
tree9a747be88694409c7ca040991cce01d46c784fd3
parentaa6ca1c5c338907817374b59f7551fd855a88754
vxlan: vnifilter: fix spurious notification on VNI update

When a VNI is re-added with the same attributes (e.g. same group or no
group), vxlan_vni_update() sends a spurious RTM_NEWTUNNEL notification
even though nothing changed.

The bug is that 'if (changed)' tests whether the pointer is non-NULL,
not the bool value it points to. Since every caller passes a valid
pointer, the condition is always true and the notification fires
unconditionally.

Fix by dereferencing the pointer: 'if (*changed)'.

Reproducer:

 # ip link add vxlan100 type vxlan dstport 4789 local 10.0.0.1 \
      nolearning external vnifilter
 # ip link set vxlan100 up
 # bridge monitor vni &
 # bridge vni add vni 1000 dev vxlan100
 # bridge vni add vni 1000 dev vxlan100  # spurious notification

Fixes: f9c4bb0b245c ("vxlan: vni filtering support on collect metadata device")
Signed-off-by: Andy Roulin <aroulin@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Link: https://patch.msgid.link/20260602185138.253265-3-aroulin@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/vxlan/vxlan_vnifilter.c