From patchwork Thu Oct 11 19:35:13 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Roopa Prabhu X-Patchwork-Id: 982664 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=cumulusnetworks.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=cumulusnetworks.com header.i=@cumulusnetworks.com header.b="WArHKrJv"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42WLlr1gJxz9s9h for ; Fri, 12 Oct 2018 06:35:20 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727001AbeJLDD6 (ORCPT ); Thu, 11 Oct 2018 23:03:58 -0400 Received: from mail-pg1-f195.google.com ([209.85.215.195]:40823 "EHLO mail-pg1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726071AbeJLDD6 (ORCPT ); Thu, 11 Oct 2018 23:03:58 -0400 Received: by mail-pg1-f195.google.com with SMTP id n31-v6so4643608pgm.7 for ; Thu, 11 Oct 2018 12:35:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cumulusnetworks.com; s=google; h=from:to:cc:subject:date:message-id; bh=NX8vcfjfX5gK56aOzOPp+3tXhmQ2MLuSBCL6p6gFI+E=; b=WArHKrJv/ltzPO587ahpctXcpfoh6eOZQUOZXikc797xd02MriZjfPeH1kUNgTsWJp bypVZT8wRWRsO2OW687WGTSbN80eqy0M+MUQiDXcsHcaTNn/7vg3h9J5I2CaF9rLGLBg nRv45PoEg0psI5q9mlpm9rY0NGS832lldxW20= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=NX8vcfjfX5gK56aOzOPp+3tXhmQ2MLuSBCL6p6gFI+E=; b=aUnEsS90tpizI+Hb8lQ3jrHBUfnPj0GsvHYCo9yjvmfLS/3wbVQ4bqHt40cAXcsoK8 zwMG6FYkg0ljwrQ7VdAvtc1fAraC4Xh5R7GCZS/y0rYh+NBowyij93A9g+XHc+2o40xs X81uku00X32W9St/ioyrenaXwvNTVji1ClNa/nDeQr3o+zh5dVoY9eWqRrevXDBwPXDQ C7FqWX5pLKpAdHtEYFldXZ9KKYT0+iAded/E/RV+owXbubJotzoJqKvOyE1oRbNLN8H7 jmaNHSnYv49Wvsxl+5jDb7cb6z+cbPyoyfwkc717FNtxZe217hoWAqnjcW6SedzwwOhu TbRA== X-Gm-Message-State: ABuFfoh3MIdseW620j+9FsSiVs7AhwM+0vdpxOTy3MwdRqWn7tUghvYf fKRtqrviHSiTV8nCBYjDCUqJFml7IZGKrw== X-Google-Smtp-Source: ACcGV60EUK0380ocVXPJdzOHBRnwsf0sa8ij0eol7aknryJ3r0CPNMZUEL9rbbN/ICtAmyj3lq4eoQ== X-Received: by 2002:a62:5c03:: with SMTP id q3-v6mr2926222pfb.182.1539286517755; Thu, 11 Oct 2018 12:35:17 -0700 (PDT) Received: from monster-08.mvlab.cumulusnetworks.com. (fw.cumulusnetworks.com. [216.129.126.126]) by smtp.googlemail.com with ESMTPSA id v189-v6sm39782520pfb.54.2018.10.11.12.35.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 11 Oct 2018 12:35:16 -0700 (PDT) From: Roopa Prabhu X-Google-Original-From: Roopa Prabhu To: davem@davemloft.net Cc: netdev@vger.kernel.org Subject: [PATCH net-next v2] vxlan: support NTF_USE refresh of fdb entries Date: Thu, 11 Oct 2018 12:35:13 -0700 Message-Id: <1539286513-26165-1-git-send-email-roopa@cumulusnetworks.com> X-Mailer: git-send-email 2.1.4 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Roopa Prabhu This makes use of NTF_USE in vxlan driver consistent with bridge driver. Signed-off-by: Roopa Prabhu Acked-by: Stephen Hemminger --- v2: fix patch prefix drivers/net/vxlan.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c index fb0cdbb..018406c 100644 --- a/drivers/net/vxlan.c +++ b/drivers/net/vxlan.c @@ -697,6 +697,7 @@ static int vxlan_fdb_update(struct vxlan_dev *vxlan, __be16 port, __be32 src_vni, __be32 vni, __u32 ifindex, __u8 ndm_flags) { + __u8 fdb_flags = (ndm_flags & ~NTF_USE); struct vxlan_rdst *rd = NULL; struct vxlan_fdb *f; int notify = 0; @@ -714,8 +715,8 @@ static int vxlan_fdb_update(struct vxlan_dev *vxlan, f->updated = jiffies; notify = 1; } - if (f->flags != ndm_flags) { - f->flags = ndm_flags; + if (f->flags != fdb_flags) { + f->flags = fdb_flags; f->updated = jiffies; notify = 1; } @@ -737,6 +738,9 @@ static int vxlan_fdb_update(struct vxlan_dev *vxlan, return rc; notify |= rc; } + + if (ndm_flags & NTF_USE) + f->used = jiffies; } else { if (!(flags & NLM_F_CREATE)) return -ENOENT; @@ -748,7 +752,7 @@ static int vxlan_fdb_update(struct vxlan_dev *vxlan, netdev_dbg(vxlan->dev, "add %pM -> %pIS\n", mac, ip); rc = vxlan_fdb_create(vxlan, mac, ip, state, port, src_vni, - vni, ifindex, ndm_flags, &f); + vni, ifindex, fdb_flags, &f); if (rc < 0) return rc; notify = 1;