patch 'app/testpmd: validate DSCP and VLAN for meter creation' has been queued to stable release 22.11.11

luca.boccassi at gmail.com luca.boccassi at gmail.com
Mon Oct 27 17:18:54 CET 2025


Hi,

FYI, your patch has been queued to stable release 22.11.11

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 10/29/25. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/bluca/dpdk-stable

This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/def7b6f7e5cabc671b488d6d410cda7f1c8d70ce

Thanks.

Luca Boccassi

---
>From def7b6f7e5cabc671b488d6d410cda7f1c8d70ce Mon Sep 17 00:00:00 2001
From: Khadem Ullah <14pwcse1224 at uetpeshawar.edu.pk>
Date: Thu, 28 Aug 2025 01:29:01 -0400
Subject: [PATCH] app/testpmd: validate DSCP and VLAN for meter creation

[ upstream commit 00092e969aad2fb2a2017b7eec86f033d4527950 ]

Add validation mechanism for meter creation. The maximum
possible entries are
[<dscp_tbl_entry0> <dscp_tbl_entry1> ...<dscp_tbl_entry63>]
[<vlan_tbl_entry0> <vlan_tbl_entry1> ... <vlan_tbl_entry15>].
Currently, testpmd allows any input table entries for DSCP
and VLAN tables.

This patch validates the maximum possible DSCP and VLAN table
entries for meter creation.

Fixes: 9f5488e326d3b ("app/testpmd: support different input color method")

Signed-off-by: Khadem Ullah <14pwcse1224 at uetpeshawar.edu.pk>
---
 app/test-pmd/cmdline_mtr.c | 30 +++++++++++++++++++++++++-----
 1 file changed, 25 insertions(+), 5 deletions(-)

diff --git a/app/test-pmd/cmdline_mtr.c b/app/test-pmd/cmdline_mtr.c
index e16c5b268f..0c5897ada8 100644
--- a/app/test-pmd/cmdline_mtr.c
+++ b/app/test-pmd/cmdline_mtr.c
@@ -85,15 +85,35 @@ parse_uint(uint64_t *value, const char *str)
 	return 0;
 }
 
+static int
+validate_input_color_table_entries(char *str)
+{
+	char *saveptr;
+	char *token = strtok_r(str, PARSE_DELIMITER, &saveptr);
+	for (int i = 0; token != NULL; i++) {
+		if (i > ((MAX_DSCP_TABLE_ENTRIES + MAX_VLAN_TABLE_ENTRIES) - 1))
+			return -1;
+		token = strtok_r(NULL, PARSE_DELIMITER, &saveptr);
+	}
+	return 0;
+}
+
 static int
 parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 	enum rte_color **vlan_table)
 {
 	enum rte_color *vlan, *dscp;
-	char *token;
+	char *token, *saveptr;
+	char *temp_str = strdup(str);
 	int i = 0;
 
-	token = strtok_r(str, PARSE_DELIMITER, &str);
+	if (validate_input_color_table_entries(temp_str)) {
+		free(temp_str);
+		return -1;
+	}
+	free(temp_str);
+
+	token = strtok_r(str, PARSE_DELIMITER, &saveptr);
 	if (token == NULL)
 		return 0;
 
@@ -117,7 +137,7 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 		if (i == MAX_DSCP_TABLE_ENTRIES)
 			break;
 
-		token = strtok_r(str, PARSE_DELIMITER, &str);
+		token = strtok_r(NULL, PARSE_DELIMITER, &saveptr);
 		if (token == NULL) {
 			free(dscp);
 			return -1;
@@ -126,7 +146,7 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 
 	*dscp_table = dscp;
 
-	token = strtok_r(str, PARSE_DELIMITER, &str);
+	token = strtok_r(NULL, PARSE_DELIMITER, &saveptr);
 	if (token == NULL)
 		return 0;
 
@@ -154,7 +174,7 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 		if (i == MAX_VLAN_TABLE_ENTRIES)
 			break;
 
-		token = strtok_r(str, PARSE_DELIMITER, &str);
+		token = strtok_r(NULL, PARSE_DELIMITER, &saveptr);
 		if (token == NULL) {
 			free(vlan);
 			free(*dscp_table);
-- 
2.47.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2025-10-27 15:54:35.428776298 +0000
+++ 0016-app-testpmd-validate-DSCP-and-VLAN-for-meter-creatio.patch	2025-10-27 15:54:34.739948146 +0000
@@ -1 +1 @@
-From 00092e969aad2fb2a2017b7eec86f033d4527950 Mon Sep 17 00:00:00 2001
+From def7b6f7e5cabc671b488d6d410cda7f1c8d70ce Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 00092e969aad2fb2a2017b7eec86f033d4527950 ]
+
@@ -17 +18,0 @@
-Cc: stable at dpdk.org


More information about the stable mailing list