Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Mar 2026 01:20:22 +0000
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Subject:   git: fad7cad82c66 - stable/15 - mlx5: report IPSEC offload capabilities whenever IPSEC_OFFLOAD is configured
Message-ID:  <69a788d6.18e48.5da1be8e@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch stable/15 has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=fad7cad82c6691b8c633a595e777fbf00ffa9989

commit fad7cad82c6691b8c633a595e777fbf00ffa9989
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2026-01-28 05:32:53 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2026-03-04 01:15:59 +0000

    mlx5: report IPSEC offload capabilities whenever IPSEC_OFFLOAD is configured
    
    (cherry picked from commit de29fd0322254127c3ebaedbc91ee4f9620f5fdf)
---
 sys/dev/mlx5/mlx5_accel/ipsec.h      |  1 +
 sys/dev/mlx5/mlx5_accel/mlx5_ipsec.c | 19 ++++++++++++++-----
 sys/dev/mlx5/mlx5_en/mlx5_en_main.c  |  3 +++
 3 files changed, 18 insertions(+), 5 deletions(-)

diff --git a/sys/dev/mlx5/mlx5_accel/ipsec.h b/sys/dev/mlx5/mlx5_accel/ipsec.h
index c3f3a2372482..8685c07e84db 100644
--- a/sys/dev/mlx5/mlx5_accel/ipsec.h
+++ b/sys/dev/mlx5/mlx5_accel/ipsec.h
@@ -204,6 +204,7 @@ struct mlx5e_ipsec_pol_entry {
 /* This function doesn't really belong here, but let's put it here for now */
 void mlx5_object_change_event(struct mlx5_core_dev *dev, struct mlx5_eqe *eqe);
 
+void mlx5e_ipsec_report(struct mlx5e_priv *priv);
 int mlx5e_ipsec_init(struct mlx5e_priv *priv);
 void mlx5e_ipsec_cleanup(struct mlx5e_priv *priv);
 
diff --git a/sys/dev/mlx5/mlx5_accel/mlx5_ipsec.c b/sys/dev/mlx5/mlx5_accel/mlx5_ipsec.c
index 3f3c575c9dad..bdbad6a084d9 100644
--- a/sys/dev/mlx5/mlx5_accel/mlx5_ipsec.c
+++ b/sys/dev/mlx5/mlx5_accel/mlx5_ipsec.c
@@ -739,13 +739,14 @@ static const struct if_ipsec_accel_methods  mlx5e_ipsec_funcs = {
 	.if_hwassist = mlx5e_if_ipsec_hwassist,
 };
 
-int mlx5e_ipsec_init(struct mlx5e_priv *priv)
+void
+mlx5e_ipsec_report(struct mlx5e_priv *priv)
 {
-	struct mlx5_core_dev *mdev = priv->mdev;
-	struct mlx5e_ipsec *pipsec;
-	if_t ifp = priv->ifp;
-	int ret;
+	struct mlx5_core_dev *mdev;
 
+	if (!bootverbose)
+		return;
+	mdev = priv->mdev;
 	mlx5_core_info(mdev, "ipsec "
 	    "offload %d log_max_dek %d gen_obj_types %d "
 	    "ipsec_encrypt %d ipsec_decrypt %d "
@@ -775,6 +776,14 @@ int mlx5e_ipsec_init(struct mlx5e_priv *priv)
 	    MLX5_CAP_FLOWTABLE_NIC_RX(mdev,
 		reformat_del_esp_transport_over_udp) != 0,
 	    MLX5_CAP_IPSEC(mdev, ipsec_esn) != 0);
+}
+
+int mlx5e_ipsec_init(struct mlx5e_priv *priv)
+{
+	struct mlx5_core_dev *mdev = priv->mdev;
+	struct mlx5e_ipsec *pipsec;
+	if_t ifp = priv->ifp;
+	int ret;
 
 	if (!(mlx5_ipsec_device_caps(mdev) & MLX5_IPSEC_CAP_PACKET_OFFLOAD)) {
 		mlx5_core_dbg(mdev, "Not an IPSec offload device\n");
diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
index f83506bda1aa..78663e75e2b9 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
@@ -4736,6 +4736,9 @@ mlx5e_create_ifp(struct mlx5_core_dev *mdev)
 		goto err_rl_init;
 	}
 
+#ifdef IPSEC_OFFLOAD
+	mlx5e_ipsec_report(priv);
+#endif
 	if ((if_getcapenable2(ifp) & IFCAP2_BIT(IFCAP2_IPSEC_OFFLOAD)) != 0) {
 		err = mlx5e_ipsec_init(priv);
 		if (err) {


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69a788d6.18e48.5da1be8e>