From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-dy1-f201.google.com (mail-dy1-f201.google.com [74.125.82.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 069D83815F0 for ; Tue, 28 Apr 2026 22:44:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777416297; cv=none; b=ahI65ByTDi2sfXDula5Me312MbEpfnzfIpKnyEoeakVPLeD0vhFGVgvl0pq1BBe0jrYBUOR9HxLjP3O/RZZVBa1bl4u3xYet5aQ1J74s4kv2xDMMLxpMYCavXrE3k1tElXKYbXwJ/a1sUBBpOjNlKA7+Pmu3QptHW8riRmxYQZ0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777416297; c=relaxed/simple; bh=ai8QUQpe+eGBNcBYzX5wgc4QtQufT5uTE6GhpsaCC0Y=; h=Date:Mime-Version:Message-ID:Subject:From:To:Cc:Content-Type; b=ghit+WOszhVUGAqNfELp8CNKHU2d98/OQWQmfuW4Hd9OPuE+LJw4Pkr6jD4VoANif0V0uQHFVsWttP0UBZJDlsHjAWIizDaH/fU8ifkHFo9hXknC102ni2/S8sOX1UCoAKpoMuX/lbbH01ncmWJas1eWlvi7obqc5eGizwtafq4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--marcharvey.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=KtUy9M9+; arc=none smtp.client-ip=74.125.82.201 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--marcharvey.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="KtUy9M9+" Received: by mail-dy1-f201.google.com with SMTP id 5a478bee46e88-2bdf6fe90a9so19318728eec.1 for ; Tue, 28 Apr 2026 15:44:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1777416295; x=1778021095; darn=vger.kernel.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=4TUkxWmkceVVg+Z+lQyOtJ2XfCE43FvOGg/yLxop1NU=; b=KtUy9M9+B3xni5dI9gUq6zNtsKaHFeC6cQ/4AOe6tKCbZa1OrIMPu/TORV23hCT73O t4N34CU8YoLuUwuv5sG8UKGA1gkGqr4wMUfN8T9fiY5ZJfZrQ918UJCzKCjeEJdfW/0A Ab/LCF0AMzU1xQ01TKSmz9xhXTxyik2JZxC+CE7dvsucEb5eS13nXKHPzVXEsegOBwwM HShdGQqJxsKEAinIqalGUFQZpnt/9cz489ZMZVsVRNKAyLYVEa0+hYGi1TqbS8ake+2Z nEKdkJ2CDyFicx8Qkt9pxA4awa2QZTBoP4OB0FrpFTPIyNHZ3vfsPmlZErR6aXq9N03A ZVBg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1777416295; x=1778021095; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=4TUkxWmkceVVg+Z+lQyOtJ2XfCE43FvOGg/yLxop1NU=; b=A99VwAfySgkake0K998HPObm1zCJCu3M5z3I4GjXqnj36Y6sTNTnsQrUdwXWHZ4nhT 0NpzuaxVxBXwgIeY6YYHCWWk+59V1QKO94/UMLqXod8VhfxPniqKV7ZMx78tBEmj8JoM 58GJH1rQVX5Mig9nGGKxzTLJJSfAT2sMM76DeZwqnAI0MNLAqtNg7CD52CJUZEmvfVnt y1Hq63rwqGqAQkF9tVpazYi6SAmT7npqL7CIweA9a+Zut8VJoYsTI5xNnnCXqPMyB+Yx WxqDGP0uTAnDszk/D830+1AvQqvuBZUxPQtk+eTJo47zyu7TUmG/aDnGLpR+trkLl1KU ellg== X-Gm-Message-State: AOJu0Ywx4hdCBaR5MBSMq9uyuBVxWN11Vxd9L5vkrcAagKQSfMgt8l/H 1yxrs+AkpBMIrn/badL+PRGDx/SRojOrVM2cpd1cvjun5rK7mSINsrIrXEbMGcSyyiXQGqWuH1l /+tt0hfjrZTVwVxAG91O3mg== X-Received: from dycoh5.prod.google.com ([2002:a05:7301:da05:b0:2d8:4599:1d20]) (user=marcharvey job=prod-delivery.src-stubby-dispatcher) by 2002:a05:7301:d8f:b0:2d8:b814:29af with SMTP id 5a478bee46e88-2ed19716925mr687253eec.3.1777416294853; Tue, 28 Apr 2026 15:44:54 -0700 (PDT) Date: Tue, 28 Apr 2026 22:44:34 +0000 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 X-B4-Tracking: v=1; b=H4sIAFI48WkC/x3MTQqAIBBA4avErBNKsr+rRITWVAM1hUoI4d2Tl t/ivRccWkIHffaCxYccXZxQ5hnMu+YNBS3JIAtZF5VsxHkENT3h0CyaUtVdZ1pjUEMKbosrhX8 2AKMXjMHDGOMHGgZed2YAAAA= X-Change-Id: 20260427-mlx5_vxlan-715699b8bbea X-Developer-Key: i=marcharvey@google.com; a=ed25519; pk=OzOeciadbfF5Bug/4/hyEAwfrruSY4tn0Q0LocyYUL0= X-Developer-Signature: v=1; a=ed25519-sha256; t=1777416293; l=3018; i=marcharvey@google.com; s=20260401; h=from:subject:message-id; bh=ai8QUQpe+eGBNcBYzX5wgc4QtQufT5uTE6GhpsaCC0Y=; b=vg5g7vP2EM46YpgEoKVKKpCPrEdNIlWCVg6lGbsIIfELTu4gk8o+Fa/nww2xQIL96DpvPEsWc eoaHiL67gr0DIzm5DhBIKIZ4TR7fBMGOajPs2Xar5rRs+twXcU0iEgS X-Mailer: b4 0.14.3 Message-ID: <20260428-mlx5_vxlan-v1-1-cf666d042618@google.com> Subject: [PATCH net-next] net/mlx5: Add MLX5_VXLAN config option From: Marc Harvey To: Saeed Mahameed , Leon Romanovsky , Tariq Toukan , Mark Bloch , Andrew Lunn , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: netdev@vger.kernel.org, linux-rdma@vger.kernel.org, linux-kernel@vger.kernel.org, Kuniyuki Iwashima , Marc Harvey Content-Type: text/plain; charset="utf-8" Currently, there is no way to disable mlx5 vxlan offloading if vxlan is enabled. We've (possibly) seen some minor udp rr and udp stream regressions when enabling vxlan, and want a way to disable this offloading. Also coupling vxlan offloading with vxlan enablement generally limits the flexability of vxlan setups. Add a new config option for mlx5 vxlan offloading specifically, so that users can use vxlan without automatically opting in to the offloading. To keep the same behavior as before, the new config option is enabled by default if vxlan is enabled. Signed-off-by: Marc Harvey --- drivers/net/ethernet/mellanox/mlx5/core/Kconfig | 11 +++++++++++ drivers/net/ethernet/mellanox/mlx5/core/Makefile | 2 +- drivers/net/ethernet/mellanox/mlx5/core/lib/vxlan.h | 2 +- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/Kconfig b/drivers/net/ethernet/mellanox/mlx5/core/Kconfig index 3c3e84100d5a..d2e091bdbafc 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/Kconfig +++ b/drivers/net/ethernet/mellanox/mlx5/core/Kconfig @@ -218,3 +218,14 @@ config MLX5_EN_PSP interfaces to PSP Stack which supports PSP crypto offload. If unsure, say Y. + +config MLX5_VXLAN + bool "Mellanox Technologies vxlan offloading" + depends on VXLAN + depends on MLX5_CORE_EN + default y + help + mlx5 device offload support for vxlan. Makes the mlx5 driver always + attempt to initialize device handling of vxlan packets. + + If unsure, say Y. diff --git a/drivers/net/ethernet/mellanox/mlx5/core/Makefile b/drivers/net/ethernet/mellanox/mlx5/core/Makefile index d39fe9c4a87c..6f2cc5414d07 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/Makefile +++ b/drivers/net/ethernet/mellanox/mlx5/core/Makefile @@ -86,7 +86,7 @@ mlx5_core-$(CONFIG_MLX5_BRIDGE) += esw/bridge.o esw/bridge_mcast.o esw/bridge mlx5_core-$(CONFIG_HWMON) += hwmon.o mlx5_core-$(CONFIG_MLX5_MPFS) += lib/mpfs.o -ifneq ($(CONFIG_VXLAN),) +ifneq ($(CONFIG_MLX5_VXLAN),) mlx5_core-y += lib/vxlan.o endif mlx5_core-$(CONFIG_PTP_1588_CLOCK) += lib/clock.o diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lib/vxlan.h b/drivers/net/ethernet/mellanox/mlx5/core/lib/vxlan.h index 34ef662da35e..67d0c126c2ae 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/lib/vxlan.h +++ b/drivers/net/ethernet/mellanox/mlx5/core/lib/vxlan.h @@ -50,7 +50,7 @@ static inline bool mlx5_vxlan_allowed(struct mlx5_vxlan *vxlan) return !IS_ERR_OR_NULL(vxlan); } -#if IS_ENABLED(CONFIG_VXLAN) +#if IS_ENABLED(CONFIG_MLX5_VXLAN) struct mlx5_vxlan *mlx5_vxlan_create(struct mlx5_core_dev *mdev); void mlx5_vxlan_destroy(struct mlx5_vxlan *vxlan); int mlx5_vxlan_add_port(struct mlx5_vxlan *vxlan, u16 port); --- base-commit: 790ead9394860e7d70c5e0e50a35b243e909a618 change-id: 20260427-mlx5_vxlan-715699b8bbea Best regards, -- Marc Harvey