patch 'app/testpmd: validate DSCP and VLAN for meter creation' has been queued to stable release 24.11.4
    Kevin Traynor 
    ktraynor at redhat.com
       
    Fri Oct 31 15:32:32 CET 2025
    
    
  
Hi,
FYI, your patch has been queued to stable release 24.11.4
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 11/05/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/kevintraynor/dpdk-stable
This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/4c3c8dad45bf7f1a745e33d7e1f3b3bb7a94773b
Thanks.
Kevin
---
>From 4c3c8dad45bf7f1a745e33d7e1f3b3bb7a94773b 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
@@ -86,4 +86,17 @@ parse_uint(uint64_t *value, const char *str)
 }
 
+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,
@@ -91,8 +104,15 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_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;
@@ -118,5 +138,5 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 			break;
 
-		token = strtok_r(str, PARSE_DELIMITER, &str);
+		token = strtok_r(NULL, PARSE_DELIMITER, &saveptr);
 		if (token == NULL) {
 			free(dscp);
@@ -127,5 +147,5 @@ 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;
@@ -155,5 +175,5 @@ parse_input_color_table_entries(char *str, enum rte_color **dscp_table,
 			break;
 
-		token = strtok_r(str, PARSE_DELIMITER, &str);
+		token = strtok_r(NULL, PARSE_DELIMITER, &saveptr);
 		if (token == NULL) {
 			free(vlan);
-- 
2.51.0
---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2025-10-31 13:53:53.175783592 +0000
+++ 0030-app-testpmd-validate-DSCP-and-VLAN-for-meter-creatio.patch	2025-10-31 13:53:52.058523437 +0000
@@ -1 +1 @@
-From 00092e969aad2fb2a2017b7eec86f033d4527950 Mon Sep 17 00:00:00 2001
+From 4c3c8dad45bf7f1a745e33d7e1f3b3bb7a94773b 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