patches for DPDK stable branches
 help / color / mirror / Atom feed
* [dpdk-stable] [PATCH] mempool: fix invalid panic on dump or audit
@ 2021-02-03  9:01 Olivier Matz
  2021-02-04 13:33 ` Andrew Rybchenko
  0 siblings, 1 reply; 3+ messages in thread
From: Olivier Matz @ 2021-02-03  9:01 UTC (permalink / raw)
  To: dev; +Cc: Andrew Rybchenko, stable

When doing a mempool dump or an audit, the application can panic because
the length of the cache is greater than the flush threshold, which is
seen as a fatal error. But this can temporarily happen when the mempool
is in use.

Fix the panic condition to abort only when the cache length is greater
than the array.

Fixes: ea5dd2744b90 ("mempool: cache optimisations")
Cc: stable@dpdk.org

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
---
 lib/librte_mempool/rte_mempool.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_mempool/rte_mempool.c b/lib/librte_mempool/rte_mempool.c
index b9f3fbd614..afb1239c8d 100644
--- a/lib/librte_mempool/rte_mempool.c
+++ b/lib/librte_mempool/rte_mempool.c
@@ -1167,7 +1167,7 @@ mempool_audit_cache(const struct rte_mempool *mp)
 	for (lcore_id = 0; lcore_id < RTE_MAX_LCORE; lcore_id++) {
 		const struct rte_mempool_cache *cache;
 		cache = &mp->local_cache[lcore_id];
-		if (cache->len > cache->flushthresh) {
+		if (cache->len > RTE_DIM(cache->objs)) {
 			RTE_LOG(CRIT, MEMPOOL, "badness on cache[%u]\n",
 				lcore_id);
 			rte_panic("MEMPOOL: invalid cache len\n");
-- 
2.29.2


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-stable] [PATCH] mempool: fix invalid panic on dump or audit
  2021-02-03  9:01 [dpdk-stable] [PATCH] mempool: fix invalid panic on dump or audit Olivier Matz
@ 2021-02-04 13:33 ` Andrew Rybchenko
  2021-02-05 16:42   ` [dpdk-stable] [dpdk-dev] " Thomas Monjalon
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Rybchenko @ 2021-02-04 13:33 UTC (permalink / raw)
  To: Olivier Matz, dev; +Cc: stable

On 2/3/21 12:01 PM, Olivier Matz wrote:
> When doing a mempool dump or an audit, the application can panic because
> the length of the cache is greater than the flush threshold, which is
> seen as a fatal error. But this can temporarily happen when the mempool
> is in use.
> 
> Fix the panic condition to abort only when the cache length is greater
> than the array.
> 
> Fixes: ea5dd2744b90 ("mempool: cache optimisations")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Olivier Matz <olivier.matz@6wind.com>

Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [dpdk-stable] [dpdk-dev] [PATCH] mempool: fix invalid panic on dump or audit
  2021-02-04 13:33 ` Andrew Rybchenko
@ 2021-02-05 16:42   ` Thomas Monjalon
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Monjalon @ 2021-02-05 16:42 UTC (permalink / raw)
  To: Olivier Matz; +Cc: dev, stable, Andrew Rybchenko

04/02/2021 14:33, Andrew Rybchenko:
> On 2/3/21 12:01 PM, Olivier Matz wrote:
> > When doing a mempool dump or an audit, the application can panic because
> > the length of the cache is greater than the flush threshold, which is
> > seen as a fatal error. But this can temporarily happen when the mempool
> > is in use.
> > 
> > Fix the panic condition to abort only when the cache length is greater
> > than the array.
> > 
> > Fixes: ea5dd2744b90 ("mempool: cache optimisations")
> > Cc: stable@dpdk.org
> > 
> > Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
> 
> Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>

Applied, thanks



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-02-05 16:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-03  9:01 [dpdk-stable] [PATCH] mempool: fix invalid panic on dump or audit Olivier Matz
2021-02-04 13:33 ` Andrew Rybchenko
2021-02-05 16:42   ` [dpdk-stable] [dpdk-dev] " Thomas Monjalon

patches for DPDK stable branches

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \
		stable@dpdk.org
	public-inbox-index stable

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.stable


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git