Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Jul 2021 15:19:44 GMT
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: 14e2413289ae - stable/13 - mlx5en: add ASCII art providing an overview of flow tables organization
Message-ID:  <202107261519.16QFJiHx025764@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch stable/13 has been updated by kib:

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

commit 14e2413289aedabf20b521dcbe5e24b34ca0d34b
Author:     Konstantin Belousov <konstantinb@nvidia.com>
AuthorDate: 2021-04-26 22:38:46 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2021-07-26 13:51:11 +0000

    mlx5en: add ASCII art providing an overview of flow tables organization
    
    (cherry picked from commit b1277d42d718cd42d04d39fa2d61873655e909b3)
---
 sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c b/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c
index cdfe19d910d1..54fbe8e057cc 100644
--- a/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c
+++ b/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c
@@ -31,6 +31,35 @@
 #include <dev/mlx5/fs.h>
 #include <dev/mlx5/mpfs.h>
 
+/*
+ * The flow tables with rules define the packet processing on receive.
+ * Currently, the following structure is set up to handle different offloads
+ * like VLAN decapsulation, packet classification, RSS hashing, VxLAN checksum
+ * offloading:
+ *
+ *
+ *   +=========+       +=========+	+=================+
+ *   |VLAN ft: |       |VxLAN	 |	|VxLAN Main    	  |
+ *   |CTAG/STAG|------>|      VNI|----->|Inner Proto Match|=====> Inner TIR n
+ *   |VID/noVID|/      |Catch-all|\	|		  |
+ *   +=========+       +=========+|	+=================+
+ *     	       	       	     	  |
+ *			     	  |
+ *			     	  |
+ *			     	  v
+ *		       	+=================+
+ *			|Main             |
+ *			|Outer Proto Match|=====> TIR n
+ *			|	          |
+ *     	       	       	+=================+
+ *
+ * The path through flow rules directs each packet into an appropriate TIR,
+ * according to the:
+ * - VLAN encapsulation
+ * - Outer protocol
+ * - Presence of inner protocol
+ */
+
 #define MLX5_SET_CFG(p, f, v) MLX5_SET(create_flow_group_in, p, f, v)
 
 enum {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202107261519.16QFJiHx025764>