[dpdk-dev] [PATCH v2 1/4] hash: fix unnecessary pause

Honnappa Nagarahalli Honnappa.Nagarahalli at arm.com
Fri Oct 26 02:24:20 CEST 2018


> 
> There is a rte_pause in hash table reset function.
> Since the loop is not a polling loop on shared data structure, the rte_pause
> is not needed.
> 
> Fixes: b26473ff8f4a ("hash: add reset function")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Yipeng Wang <yipeng1.wang at intel.com>
> ---
>  lib/librte_hash/rte_cuckoo_hash.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/lib/librte_hash/rte_cuckoo_hash.c
> b/lib/librte_hash/rte_cuckoo_hash.c
> index 0648a22..4a2647e 100644
> --- a/lib/librte_hash/rte_cuckoo_hash.c
> +++ b/lib/librte_hash/rte_cuckoo_hash.c
> @@ -574,14 +574,14 @@ rte_hash_reset(struct rte_hash *h)
> 
>  	/* clear the free ring */
>  	while (rte_ring_dequeue(h->free_slots, &ptr) == 0)
> -		rte_pause();
> +		continue;
Minor comment: 'continue' can be removed.

> 
>  	/* clear free extendable bucket ring and memory */
>  	if (h->ext_table_support) {
>  		memset(h->buckets_ext, 0, h->num_buckets *
>  						sizeof(struct
> rte_hash_bucket));
>  		while (rte_ring_dequeue(h->free_ext_bkts, &ptr) == 0)
> -			rte_pause();
> +			continue;
>  	}
> 
>  	/* Repopulate the free slots ring. Entry zero is reserved for key
> misses */
> --
> 2.7.4



More information about the dev mailing list