From patchwork Wed Jul 22 01:27:09 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jakub Kicinski X-Patchwork-Id: 1333404 Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org (client-ip=23.128.96.18; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=kernel.org Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.a=rsa-sha256 header.s=default header.b=2rO3RATV; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by ozlabs.org (Postfix) with ESMTP id 4BBHrd0rzPz9sPB for ; Wed, 22 Jul 2020 11:27:29 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731610AbgGVB1Z (ORCPT ); Tue, 21 Jul 2020 21:27:25 -0400 Received: from mail.kernel.org ([198.145.29.99]:39964 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727953AbgGVB1Z (ORCPT ); Tue, 21 Jul 2020 21:27:25 -0400 Received: from kicinski-fedora-PC1C0HJN.thefacebook.com (unknown [163.114.132.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 778CB206F5; Wed, 22 Jul 2020 01:27:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1595381244; bh=Y2FzO6aj9jA/LhJ9UgZUS/x9jrhjcynfaaP92O4pl3c=; h=From:To:Cc:Subject:Date:From; b=2rO3RATVNaY5/Rs5ylrab/so+rFusIXKd1Sz8IIqWOuVL2vL2Z3ZCeyePSutihPEz mFKiTfT3Tj/LyFPTqU36j7ttpYDhysXfMcVOelWMHiBbEmfcYhmHTwqt+jOuNexkor y+gIAxtYoHU2LPFks0t0xBnu8ZcnOaBO5L2hbQYs= From: Jakub Kicinski To: davem@davemloft.net Cc: netdev@vger.kernel.org, anthony.l.nguyen@intel.com, jeffrey.t.kirsher@intel.com, intel-wired-lan@lists.osuosl.org, Jakub Kicinski Subject: [PATCH net-next v1 0/7] udp_tunnel: convert Intel drivers with shared tables Date: Tue, 21 Jul 2020 18:27:09 -0700 Message-Id: <20200722012716.2814777-1-kuba@kernel.org> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This set converts Intel drivers which have the ability to spawn multiple netdevs, but have only one UDP tunnel port table. Appropriate support is added to the core infra in patch 1, followed by netdevsim support and a selftest. The table sharing works by core attaching the same table structure to all devices sharing the table. This means the reference count has to accommodate potentially large values. Once core is ready i40e and ice are converted. These are complex drivers, and I don't have HW to test so please review.. Jakub Kicinski (7): udp_tunnel: add the ability to share port tables netdevsim: add warnings on unexpected UDP tunnel port errors netdevsim: shared UDP tunnel port table support selftests: net: add a test for shared UDP tunnel info tables i40e: convert to new udp_tunnel infrastructure ice: remove unused args from ice_get_open_tunnel_port() ice: convert to new udp_tunnel infrastructure drivers/net/ethernet/intel/i40e/i40e.h | 6 +- drivers/net/ethernet/intel/i40e/i40e_main.c | 264 ++++-------------- .../net/ethernet/intel/ice/ice_ethtool_fdir.c | 6 +- drivers/net/ethernet/intel/ice/ice_fdir.c | 2 +- .../net/ethernet/intel/ice/ice_flex_pipe.c | 231 +++++++-------- .../net/ethernet/intel/ice/ice_flex_pipe.h | 11 +- .../net/ethernet/intel/ice/ice_flex_type.h | 5 +- drivers/net/ethernet/intel/ice/ice_main.c | 97 ++----- drivers/net/ethernet/intel/ice/ice_type.h | 3 + drivers/net/netdevsim/netdevsim.h | 7 +- drivers/net/netdevsim/udp_tunnels.c | 30 +- include/net/udp_tunnel.h | 24 ++ net/ipv4/udp_tunnel_nic.c | 96 ++++++- .../drivers/net/netdevsim/udp_tunnel_nic.sh | 109 ++++++++ 14 files changed, 440 insertions(+), 451 deletions(-) Acked-by: David S. Miller