[dpdk-stable] [PATCH 20.11] net/ark: fix leak on thread termination

Xueming(Steven) Li xuemingl at nvidia.com
Wed Jun 16 04:57:24 CEST 2021


Thanks, merged.

From: Ed Czeck <ed.czeck at atomicrules.com>
Sent: Wednesday, June 16, 2021 9:08 AM
To: David Marchand <david.marchand at redhat.com>
Cc: stable at dpdk.org; Xueming(Steven) Li <xuemingl at nvidia.com>; Shepard Siegel <shepard.siegel at atomicrules.com>; John Miller <john.miller at atomicrules.com>
Subject: Re: [PATCH 20.11] net/ark: fix leak on thread termination

Thanks,
Acked-by: Ed Czeck <ed.czeck at atomicrules.com<mailto:ed.czeck at atomicrules.com>>

On Tue, Jun 15, 2021 at 8:22 AM David Marchand <david.marchand at redhat.com<mailto:david.marchand at redhat.com>> wrote:
[ upstream commit b8b5dc6b9596a07cbeed03192b41a4befb75acc6 ]

A terminated pthread should be joined or detached so that its associated
resources are released.

The "ark-delay-pg" thread is just used to delay some task but it is never
joined by the thread that created it.
The easiest solution is to detach the new thread.

Fixes: 727b3fe292bc ("net/ark: integrate PMD")

Signed-off-by: David Marchand <david.marchand at redhat.com<mailto:david.marchand at redhat.com>>
---
 drivers/net/ark/ark_ethdev.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/ark/ark_ethdev.c b/drivers/net/ark/ark_ethdev.c
index 0156eeb66e..c307880ec1 100644
--- a/drivers/net/ark/ark_ethdev.c
+++ b/drivers/net/ark/ark_ethdev.c
@@ -2,6 +2,7 @@
  * Copyright (c) 2015-2018 Atomic Rules LLC
  */

+#include <pthread.h>
 #include <unistd.h>
 #include <sys/stat.h>
 #include <dlfcn.h>
@@ -585,6 +586,7 @@ delay_pg_start(void *arg)
         * perform a blind sleep here to ensure that the external test
         * application has time to setup the test before we generate packets
         */
+       pthread_detach(pthread_self());
        usleep(100000);
        ark_pktgen_run(ark->pg);
        return NULL;
--
2.23.0


More information about the stable mailing list