[dpdk-stable] [PATCH] lib/ring: fix the bug of HTS/RTS bulk enqueue

Honnappa Nagarahalli Honnappa.Nagarahalli at arm.com
Wed Jun 10 05:56:35 CEST 2020


Hi Feifei,
	Thanks for the patch. Few nits inline.

> -----Original Message-----
> From: Feifei Wang <feifei.wang2 at arm.com>
> Sent: Tuesday, June 9, 2020 10:39 PM
> To: Honnappa Nagarahalli <Honnappa.Nagarahalli at arm.com>; Konstantin
> Ananyev <konstantin.ananyev at intel.com>
> Cc: dev at dpdk.org; nd <nd at arm.com>; Feifei Wang
> <Feifei.Wang2 at arm.com>; stable at dpdk.org
> Subject: [PATCH] lib/ring: fix the bug of HTS/RTS bulk enqueue
> 
> Directly call "_rte_ring_do_enqueue_elem" function can result in the process
> skips the "switch" order and cannot call the APIs of RTS and HTS mode in
> "rte_ring_enqueue_bulk_elem" function.
may be " lib/ring: fix bulk enqueue API to allow HTS/RTS modes"?

> 
> To fix it, remove the unnecessary function and make
> "_rte_ring_do_enqueue_elem" consistent with
> "_rte_ring_do_dequeue_elem".
How about something like:
Remove the unwanted call to "_rte_ring_do_enqueue_elem" to allow for correct handling of RTS/HTS modes.

> 
> Fixes: e6ba4731c0f3 ("ring: introduce RTS ring mode")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Feifei Wang <feifei.wang2 at arm.com>
> Reviewed-by: Ruifeng Wang <ruifeng.wang at arm.com>
> ---
>  lib/librte_ring/rte_ring_elem.h | 3 ---
>  1 file changed, 3 deletions(-)
> 
> diff --git a/lib/librte_ring/rte_ring_elem.h b/lib/librte_ring/rte_ring_elem.h
> index a5a4c46f9..469aee7da 100644
> --- a/lib/librte_ring/rte_ring_elem.h
> +++ b/lib/librte_ring/rte_ring_elem.h
> @@ -578,9 +578,6 @@ static __rte_always_inline unsigned int
> rte_ring_enqueue_bulk_elem(struct rte_ring *r, const void *obj_table,
>  		unsigned int esize, unsigned int n, unsigned int *free_space)  {
> -	return __rte_ring_do_enqueue_elem(r, obj_table, esize, n,
> -			RTE_RING_QUEUE_FIXED, r->prod.sync_type,
> free_space);
> -
>  	switch (r->prod.sync_type) {
>  	case RTE_RING_SYNC_MT:
>  		return rte_ring_mp_enqueue_bulk_elem(r, obj_table, esize, n,
Otherwise,
Acked-by: Honnappa Nagarahalli <honnappa.nagarahalli at arm.com>

> --
> 2.17.1



More information about the stable mailing list