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

Ed Czeck ed.czeck at atomicrules.com
Wed Jun 16 03:07:56 CEST 2021


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

On Tue, Jun 15, 2021 at 8:22 AM David Marchand <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>
> ---
>  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