]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
vxlan: fix default fdb entry netlink notify ordering during netdev create
authorRoopa Prabhu <roopa@cumulusnetworks.com>
Fri, 20 Jul 2018 20:21:04 +0000 (13:21 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 28 Jul 2018 05:57:16 +0000 (07:57 +0200)
commit786f9eb0c5de4ac73da92b244d726886ab6414cd
treef7ed2a8fabe861eba9ead0f22d7ee9d7dd251a8d
parentd50a42ed3c12dbc1cc434daf3a54d0337d9ad528
vxlan: fix default fdb entry netlink notify ordering during netdev create

[ Upstream commit e99465b952861533d9ba748fdbecc96d9a36da3e ]

Problem:
In vxlan_newlink, a default fdb entry is added before register_netdev.
The default fdb creation function also notifies user-space of the
fdb entry on the vxlan device which user-space does not know about yet.
(RTM_NEWNEIGH goes before RTM_NEWLINK for the same ifindex).

This patch fixes the user-space netlink notification ordering issue
with the following changes:
- decouple fdb notify from fdb create.
- Move fdb notify after register_netdev.
- Call rtnl_configure_link in vxlan newlink handler to notify
userspace about the newlink before fdb notify and
hence avoiding the user-space race.

Fixes: afbd8bae9c79 ("vxlan: add implicit fdb entry for default destination")
Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/vxlan.c