From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roopa Prabhu Subject: [PATCH net-next 0/4] vxlan: fix default fdb entry user-space notify ordering/race Date: Wed, 4 Jul 2018 16:46:28 -0700 Message-ID: <1530747992-15878-1-git-send-email-roopa@cumulusnetworks.com> Cc: netdev@vger.kernel.org, jbenc@redhat.com, mike.rapoport@ravellosystems.com, stephen@networkplumber.org To: davem@davemloft.net Return-path: Received: from mail-pf0-f195.google.com ([209.85.192.195]:38717 "EHLO mail-pf0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752897AbeGDXqg (ORCPT ); Wed, 4 Jul 2018 19:46:36 -0400 Received: by mail-pf0-f195.google.com with SMTP id j17-v6so3709738pfn.5 for ; Wed, 04 Jul 2018 16:46:36 -0700 (PDT) Sender: netdev-owner@vger.kernel.org List-ID: From: Roopa Prabhu 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 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(-) -- 2.1.4