net/ark: fix leak on thread termination
authorDavid Marchand <david.marchand@redhat.com>
Tue, 11 May 2021 11:33:57 +0000 (13:33 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 11 May 2021 21:40:22 +0000 (23:40 +0200)
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")
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Ed Czeck <ed.czeck@atomicrules.com>
drivers/net/ark/ark_pktgen.c

index 28a44f7..515bfe4 100644 (file)
@@ -3,6 +3,7 @@
  */
 
 #include <unistd.h>
+#include <pthread.h>
 
 #include <rte_string_fns.h>
 #include <rte_malloc.h>
@@ -474,6 +475,7 @@ ark_pktgen_delay_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(inst);
        return NULL;