[v2,1/1] net/af_packet: register supported param fanout mode

Message ID 20250320083707.5594-2-felix.zhang@jaguarmicro.com (mailing list archive)
State Superseded, archived
Delegated to: Stephen Hemminger
Headers
Series net/af_packet: register supported param fanout mode |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation success Compilation OK
ci/loongarch-unit-testing success Unit Testing PASS
ci/Intel-compilation success Compilation OK
ci/intel-Testing success Testing PASS
ci/github-robot: build success github build: passed
ci/intel-Functional success Functional PASS
ci/iol-mellanox-Functional success Functional Testing PASS
ci/iol-marvell-Functional success Functional Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-sample-apps-testing success Testing PASS
ci/iol-unit-arm64-testing success Testing PASS
ci/iol-compile-amd64-testing success Testing PASS
ci/iol-abi-testing success Testing PASS
ci/iol-unit-amd64-testing success Testing PASS
ci/iol-compile-arm64-testing success Testing PASS

Commit Message

Shaokai Zhang March 20, 2025, 8:37 a.m. UTC
Although af_packet PMD supports setting the fanout algorithm, it is not
explicitly declared during registration. Add fanout parameter registration
to facilitate users in quickly obtaining supported fanout algorithms.

Additionally, add configuration parameter printing during initialization.

Fixes: d3bc77ab05a4 ("net/af_packet: allow changing fanout mode")
Cc: stable@dpdk.org

Signed-off-by: Shaokai Zhang <felix.zhang@jaguarmicro.com>
Reviewed-by: Joey Xing <joey.xing@jaguarmicro.com>
---
 drivers/net/af_packet/rte_eth_af_packet.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
  

Comments

Stephen Hemminger March 20, 2025, 5:45 p.m. UTC | #1
On Thu, 20 Mar 2025 16:37:07 +0800
Shaokai Zhang <felix.zhang@jaguarmicro.com> wrote:

> diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c
> index ab34285ed9..55171944cc 100644
> --- a/drivers/net/af_packet/rte_eth_af_packet.c
> +++ b/drivers/net/af_packet/rte_eth_af_packet.c
> @@ -1172,6 +1172,11 @@ rte_eth_from_packet(struct rte_vdev_device *dev,
>  	PMD_LOG(INFO, "%s:\tblock count %d", name, blockcount);
>  	PMD_LOG(INFO, "%s:\tframe size %d", name, framesize);
>  	PMD_LOG(INFO, "%s:\tframe count %d", name, framecount);
> +	PMD_LOG(INFO, "%s:\tqdisc bypass %d", name, qdisc_bypass);
> +	if (fanout_mode)
> +		PMD_LOG(INFO, "%s:\tfanout mode %s", name, fanout_mode);
> +	else
> +		PMD_LOG(INFO, "%s:\tfanout mode %s", name, "default PACKET_FANOUT_HASH")

All these debug messages are too noisy for my taste.
Should all be removed or made DEBUG level.
There is no point in echoing the arguments in a working driver.
  

Patch

diff --git a/drivers/net/af_packet/rte_eth_af_packet.c b/drivers/net/af_packet/rte_eth_af_packet.c
index ab34285ed9..55171944cc 100644
--- a/drivers/net/af_packet/rte_eth_af_packet.c
+++ b/drivers/net/af_packet/rte_eth_af_packet.c
@@ -1172,6 +1172,11 @@  rte_eth_from_packet(struct rte_vdev_device *dev,
 	PMD_LOG(INFO, "%s:\tblock count %d", name, blockcount);
 	PMD_LOG(INFO, "%s:\tframe size %d", name, framesize);
 	PMD_LOG(INFO, "%s:\tframe count %d", name, framecount);
+	PMD_LOG(INFO, "%s:\tqdisc bypass %d", name, qdisc_bypass);
+	if (fanout_mode)
+		PMD_LOG(INFO, "%s:\tfanout mode %s", name, fanout_mode);
+	else
+		PMD_LOG(INFO, "%s:\tfanout mode %s", name, "default PACKET_FANOUT_HASH");
 
 	if (rte_pmd_init_internals(dev, *sockfd, qpairs,
 				   blocksize, blockcount,
@@ -1274,4 +1279,5 @@  RTE_PMD_REGISTER_PARAM_STRING(net_af_packet,
 	"blocksz=<int> "
 	"framesz=<int> "
 	"framecnt=<int> "
-	"qdisc_bypass=<0|1>");
+	"qdisc_bypass=<0|1> "
+	"fanout_mode=<hash|lb|cpu|rollover|rnd|qm>");