patch 'app/testpmd: terminate process on second signal' has been queued to stable release 24.11.7

luca.boccassi at gmail.com luca.boccassi at gmail.com
Thu Jun 11 15:19:29 CEST 2026


Hi,

FYI, your patch has been queued to stable release 24.11.7

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 06/13/26. 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/4228791c90c23bfb1f95e536101fb0628009a69e

Thanks.

Luca Boccassi

---
>From 4228791c90c23bfb1f95e536101fb0628009a69e Mon Sep 17 00:00:00 2001
From: Stephen Hemminger <stephen at networkplumber.org>
Date: Tue, 28 Apr 2026 06:52:48 -0700
Subject: [PATCH] app/testpmd: terminate process on second signal

[ upstream commit f5a19980e9fb51125ce6a2b81d784b7540b26eb8 ]

The SIGINT/SIGTERM handler starts a graceful shutdown via
prompt_exit(), after which prompt() frees the cmdline object with
cmdline_stdin_exit(). A second signal delivered during or after
that free re-enters prompt_exit() and dereferences testpmd_cl,
producing a use-after-free.

Reset both signals to SIG_DFL so the process will immediately
exit if second signal arrives.

Fixes: f1d0993e034e ("app/testpmd: fix interactive mode on Windows")

Reported-by: Sunyang Wu <sunyang.wu at jaguarmicro.com>
Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>
---
 app/test-pmd/testpmd.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index 86fb0a9006..8f2f3f5386 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -4379,6 +4379,8 @@ print_stats(void)
 static void
 signal_handler(int signum __rte_unused)
 {
+	signal(SIGINT, SIG_DFL);
+	signal(SIGTERM, SIG_DFL);
 	f_quit = 1;
 	prompt_exit();
 }
-- 
2.47.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2026-06-11 14:20:02.150387352 +0100
+++ 0020-app-testpmd-terminate-process-on-second-signal.patch	2026-06-11 14:20:01.186745302 +0100
@@ -1 +1 @@
-From f5a19980e9fb51125ce6a2b81d784b7540b26eb8 Mon Sep 17 00:00:00 2001
+From 4228791c90c23bfb1f95e536101fb0628009a69e Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit f5a19980e9fb51125ce6a2b81d784b7540b26eb8 ]
+
@@ -16 +17,0 @@
-Cc: stable at dpdk.org
@@ -26 +27 @@
-index 23a27322f8..a9b35f530a 100644
+index 86fb0a9006..8f2f3f5386 100644
@@ -29 +30 @@
-@@ -4558,6 +4558,8 @@ print_stats(void)
+@@ -4379,6 +4379,8 @@ print_stats(void)


More information about the stable mailing list