From: Roopa Prabhu <ro...@cumulusnetworks.com> Problem: In vxlan_newlink, a default fdb entry is added before register_netdev. The default fdb creation function 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 series fixes the user-space netlink notification ordering issue with the following changes: - decouple fdb notify from fdb create. - Move fdb notify after register_netdev. - modify rtnl_configure_link to allow configuring a link early. - 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 <ro...@cumulusnetworks.com> Roopa Prabhu (4): vxlan: add new fdb alloc and create helpers vxlan: make netlink notify in vxlan_fdb_destroy optional rtnetlink: add rtnl_link_state check in rtnl_configure_link vxlan: fix default fdb netlink notify ordering during netdev create drivers/net/vxlan.c | 130 ++++++++++++++++++++++++++++++++++----------------- net/core/rtnetlink.c | 9 ++-- 2 files changed, 94 insertions(+), 45 deletions(-) -- Dave, I am sending this series against net on your request on my net-next series. https://marc.info/?l=linux-netdev&m=153098151929102&w=2 I did not know how long to wait before i send it to net. So sending it now. As you also noted it is a very old bug. If you have changed your mind about stable or if this is too early for net and you think we should soak it more in net-next, pls feel free to drop. also, i will be happy to do a stable backport if needed. thanks.