Received: by 2002:a05:7412:da14:b0:e2:908c:2ebd with SMTP id fe20csp1752845rdb; Mon, 9 Oct 2023 01:26:36 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFjJ6UArhIwSe1XBXXKvl5ZJeSqsxd4JWOvErwLNWZLHHJVVbPJGWPZ4y7Tu337+sHqWr9R X-Received: by 2002:a05:6a00:8cc:b0:690:d48a:2acc with SMTP id s12-20020a056a0008cc00b00690d48a2accmr15414542pfu.29.1696839996272; Mon, 09 Oct 2023 01:26:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696839996; cv=none; d=google.com; s=arc-20160816; b=eqSHU6ggG8dzhGKqV3qqx0UzPBxiV3i4Ecgt4gMV1ala8+Fv+5JwCXf7YLH64EVBBn 6KyCL3kKC7Zg86NB45BTVmZQabPqvpDJcmpJFOscglV7JhqjPkWiw7YBd3+t0x0MvYkY rXrBzN18HWsbzRO3AHhpy/iZsaF3JZd1rrfm5SCiONDRuMi+M4TjaTxE7WsO+AEGrE0f kjJAyJFEMOhH+Dd3tYg5C3x2eTryoA58+XSCbMCjdDB9xXEOHRVa03kVqxIYkykj5ACM HalW76DNWDR2djMDY8J2WSqGsatIA/2tLldBF3cZQqCiS160L/HfOFsVcu2CluEZitbB 9Zmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=vjtzaobE14kySBWrJ30dRxeESe/MopqKn+1Th2lCI/M=; fh=frFZuWXGbCZT3TCJW+UDoTRvZGtdRlenvlVvsZZ33IY=; b=eLfdgloSab3jivx8+HGwNbXhX9gFlrg43uP+WH2iThUbCQSnDd5GL5s5/HzDAS1ip2 2x48OsLGcVjZ7O+svlQvmE6KN5IgJKvS0Ol+G9ENuooyKBah8I92WvIm8TIo74qPkp8j +9BmCLs2tXw7k6csvYwNwN/gKPi/d6dhKNTr+WjtGuwfrq6mbwgaqy5dLkB+noZUWWRd W0IOHKv7ce7xz/oNTOTdB/thb2C5La3a+PGOv5HQ8Ma7B9g+u+TrHy/TKNGIPlrwLr7Y cwe+PH6Oi7We1os1rvyM54jwFYXnG4jh17qGOnjbknCoePrlt1LbvxN/EYg7atyIJl3u o2kQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=J8Ry1Omq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id q21-20020a635055000000b00580e32f778csi2381144pgl.506.2023.10.09.01.26.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Oct 2023 01:26:36 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=J8Ry1Omq; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id 41A7780784D5; Mon, 9 Oct 2023 01:26:32 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234435AbjJII0U (ORCPT + 99 others); Mon, 9 Oct 2023 04:26:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56248 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234398AbjJII0R (ORCPT ); Mon, 9 Oct 2023 04:26:17 -0400 Received: from mail-ed1-x52a.google.com (mail-ed1-x52a.google.com [IPv6:2a00:1450:4864:20::52a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 33D619F; Mon, 9 Oct 2023 01:26:15 -0700 (PDT) Received: by mail-ed1-x52a.google.com with SMTP id 4fb4d7f45d1cf-53406799540so7606844a12.1; Mon, 09 Oct 2023 01:26:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696839973; x=1697444773; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=vjtzaobE14kySBWrJ30dRxeESe/MopqKn+1Th2lCI/M=; b=J8Ry1OmqRpVX40U4NfOdGXKBhx4UCINE/DSduntgZb82c2LYklsqt4rPoFl9+qgTXN K8o1IdYD4NrQj2QXGFVkxz6ZBAtACWoK/leCcxHaOqfOcAo/BrfcSA9FcfdLMJFIfPOq bvP4nEkzq96RKpASdjr7M5xnDFI+gYkl83al/YB0Q0AhYwCuplk/6Sh5qfvqCK9uB1ig fY0m6y2K7+UT/tBTsilTO/NeKhpagJj53A5g9nXzB0vK1V+iyovblCL5rXtT+u/R209O FYdnhgw7K3Qi161nqpkfNSK/vju1S7/IhWBvzMN7wiZIURCFs+7QFk3qd8mzVmRsZPSF czUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696839973; x=1697444773; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=vjtzaobE14kySBWrJ30dRxeESe/MopqKn+1Th2lCI/M=; b=f6lXKutJBh8vb134/utpvmUDrmeQdq+moe74xoDZdgKM23JOHbtKwe2Av8jSB47COZ SjaMrAVqCTBQPSnbnqOdN17SJNo2H5mN26HBrQLOfkIM8eGtN+cncFlcCsSWWPNy8apR 5xj689zOJHIk0mHh0n+TtQDIicvk+Bknt7/4ckjSdLP91NvkBMPQ6SA3v0UYjbiYUryO DE2zqkKUtcgIRl4qJaFC7QItny9WsmiV4jWGkcV0zEiIrmyVRGwAm4APSsfZQtdBtyF9 jJbPhN/EMzlWRhXBqt4nE/cClgiBvdib49LX7Xa3jXYLWmjOl5BZgK+S3aLIKS8Aec7Q TbRg== X-Gm-Message-State: AOJu0Yw+AV5krM3trLFRG/FbNvGzp5h97/AUXX3eXPe8m/l1rq3twry7 GjBS2HDR19x1ECwpWbS2IE1DBkYmUYc= X-Received: by 2002:a05:6402:690:b0:533:6379:afaa with SMTP id f16-20020a056402069000b005336379afaamr13271862edy.20.1696839973560; Mon, 09 Oct 2023 01:26:13 -0700 (PDT) Received: from tp.home.arpa (host-79-24-102-58.retail.telecomitalia.it. [79.24.102.58]) by smtp.gmail.com with ESMTPSA id p22-20020a05640210d600b00530a9488623sm5844810edu.46.2023.10.09.01.26.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Oct 2023 01:26:13 -0700 (PDT) From: Beniamino Galvani To: netdev@vger.kernel.org Cc: "David S . Miller" , Jakub Kicinski , Paolo Abeni , David Ahern , Guillaume Nault , linux-kernel@vger.kernel.org Subject: [PATCH net-next 0/7] net: consolidate IPv4 route lookup for UDP tunnels Date: Mon, 9 Oct 2023 10:20:52 +0200 Message-Id: <20231009082059.2500217-1-b.galvani@gmail.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=3.0 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_SBL_CSS, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Mon, 09 Oct 2023 01:26:32 -0700 (PDT) X-Spam-Level: ** At the moment different UDP tunnels rely on different functions for IPv4 route lookup, and those functions all implement the same logic. Only bareudp uses the generic ip_route_output_tunnel(), while geneve and vxlan basically duplicate it slightly differently. This series first extends the generic lookup function so that it is suitable for all UDP tunnel implementations. Then, bareudp, geneve and vxlan are adapted to use them. This results in code with less duplication and hopefully better maintainability. After this series is merged, IPv6 will be converted in a similar way. Beniamino Galvani (7): ipv4: rename and move ip_route_output_tunnel() ipv4: remove "proto" argument from udp_tunnel_dst_lookup() ipv4: add new arguments to udp_tunnel_dst_lookup() ipv4: use tunnel flow flags for tunnel route lookups geneve: add dsfield helper function geneve: use generic function for tunnel IPv4 route lookup vxlan: use generic function for tunnel IPv4 route lookup drivers/net/bareudp.c | 11 ++-- drivers/net/geneve.c | 111 +++++++++++++-------------------- drivers/net/vxlan/vxlan_core.c | 103 +++++++++++------------------- include/net/route.h | 6 -- include/net/udp_tunnel.h | 8 +++ net/ipv4/route.c | 48 -------------- net/ipv4/udp_tunnel_core.c | 49 +++++++++++++++ 7 files changed, 141 insertions(+), 195 deletions(-) -- 2.40.1