All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Monjalon <thomas@monjalon.net>
To: byron.marohn@intel.com, pablo.de.lara.guarch@intel.com
Cc: stable@dpdk.org, Hari Kumar Vemula <hari.kumarx.vemula@intel.com>,
	dev@dpdk.org, reshma.pattan@intel.com,
	jananeex.m.parthasarathy@intel.com, maxime.coquelin@redhat.com
Subject: Re: [dpdk-stable] [PATCH v3] lib/efd: fix to free tail queue entry after use
Date: Mon, 14 Jan 2019 23:30:18 +0100	[thread overview]
Message-ID: <2704785.Ctf98vYVr8@xps> (raw)
In-Reply-To: <1547207341-22001-1-git-send-email-hari.kumarx.vemula@intel.com>

Any review please?

11/01/2019 12:49, Hari Kumar Vemula:
> In rte_efd_create() allocated memory for tail queue entry but
> not freed.
> Added freeing the tail queue entry.
> 
> Fixes: 56b6ef874f80 ("efd: new Elastic Flow Distributor library")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Hari Kumar Vemula <hari.kumarx.vemula@intel.com>
> Acked-by: Reshma Pattan <reshma.pattan@intel.com>
> 
> ---
> v3: Replaced TAILQ_FOREACH_SAFE with TAILQ_FOREACH
> v2: Updated commit message.
> ---
>  lib/librte_efd/rte_efd.c | 15 +++++++++++++++
>  1 file changed, 15 insertions(+)
> 
> diff --git a/lib/librte_efd/rte_efd.c b/lib/librte_efd/rte_efd.c
> index e6e5cfda2..8b8330e0b 100644
> --- a/lib/librte_efd/rte_efd.c
> +++ b/lib/librte_efd/rte_efd.c
> @@ -740,17 +740,32 @@ void
>  rte_efd_free(struct rte_efd_table *table)
>  {
>  	uint8_t socket_id;
> +	struct rte_efd_list *efd_list;
> +	struct rte_tailq_entry *te, *temp;
>  
>  	if (table == NULL)
>  		return;
>  
> +	efd_list = RTE_TAILQ_CAST(rte_efd_tailq.head, rte_efd_list);
> +
>  	for (socket_id = 0; socket_id < RTE_MAX_NUMA_NODES; socket_id++)
>  		rte_free(table->chunks[socket_id]);
> +	rte_rwlock_write_lock(RTE_EAL_TAILQ_RWLOCK);
>  
> +	TAILQ_FOREACH_SAFE(te, efd_list, next, temp) {
> +		if (te->data == (void *) table) {
> +			TAILQ_REMOVE(efd_list, te, next);
> +			rte_free(te);
> +			te = NULL;
> +		}
> +	}
> +
> +	rte_rwlock_write_unlock(RTE_EAL_TAILQ_RWLOCK);
>  	rte_ring_free(table->free_slots);
>  	rte_free(table->offline_chunks);
>  	rte_free(table->keys);
>  	rte_free(table);
> +
>  }
>  
>  /**
> 

  reply	other threads:[~2019-01-14 22:30 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-13 11:45 [PATCH] lib: fix to free trail queue entry after use Hari Kumar Vemula
2018-11-13 16:43 ` Pattan, Reshma
2018-11-14 11:17 ` [PATCH v2] lib/efd: fix to free tail " Hari Kumar Vemula
2018-11-18 14:57   ` Thomas Monjalon
2018-11-23 13:30   ` Maxime Coquelin
2018-11-23 14:39     ` Maxime Coquelin
2019-01-11 11:49 ` [PATCH v3] " Hari Kumar Vemula
2019-01-14 22:30   ` Thomas Monjalon [this message]
2019-01-14 22:39     ` [dpdk-stable] " Honnappa Nagarahalli
2019-01-17 13:36 ` [PATCH v4] " Hari Kumar Vemula
2019-01-17 16:41   ` De Lara Guarch, Pablo
2019-01-18  7:40 ` [PATCH v5] " Hari Kumar Vemula
2019-01-18 18:21   ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2704785.Ctf98vYVr8@xps \
    --to=thomas@monjalon.net \
    --cc=byron.marohn@intel.com \
    --cc=dev@dpdk.org \
    --cc=hari.kumarx.vemula@intel.com \
    --cc=jananeex.m.parthasarathy@intel.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=pablo.de.lara.guarch@intel.com \
    --cc=reshma.pattan@intel.com \
    --cc=stable@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.