[dpdk-dev,v2,2/2] ring: fix sign conversion warning

Message ID 152749822351.44120.16656625173859188832.stgit@localhost.localdomain (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Andy Green May 28, 2018, 9:03 a.m. UTC
  On gcc 5.4.0 / native aarch64 from Ubuntu 16.04:

/home/agreen/lagopus/src/dpdk/build/include/rte_ring.h:
In function '__rte_ring_do_dequeue':
/home/agreen/lagopus/src/dpdk/build/include/rte_ring.h:
 385:35: warning: conversion to 'int' from 'unsigned int'
may change the sign of the result [-Wsign-conversion]
  n = __rte_ring_move_cons_head(r, is_sc, n, behavior,
                                   ^

Signed-off-by: Andy Green <andy@warmcat.com>
Fixes: e8ed5056c8 ("ring: remove signed type flip-flopping")
                                   ^
---
 lib/librte_ring/rte_ring.h |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Olivier Matz July 16, 2018, 7:16 a.m. UTC | #1
On Mon, May 28, 2018 at 05:03:43PM +0800, Andy Green wrote:
> On gcc 5.4.0 / native aarch64 from Ubuntu 16.04:
> 
> /home/agreen/lagopus/src/dpdk/build/include/rte_ring.h:
> In function '__rte_ring_do_dequeue':
> /home/agreen/lagopus/src/dpdk/build/include/rte_ring.h:
>  385:35: warning: conversion to 'int' from 'unsigned int'
> may change the sign of the result [-Wsign-conversion]
>   n = __rte_ring_move_cons_head(r, is_sc, n, behavior,
>                                    ^
> 
> Signed-off-by: Andy Green <andy@warmcat.com>
> Fixes: e8ed5056c8 ("ring: remove signed type flip-flopping")

Acked-by: Olivier Matz <olivier.matz@6wind.com>
  

Patch

diff --git a/lib/librte_ring/rte_ring.h b/lib/librte_ring/rte_ring.h
index 124582251..de1a5f366 100644
--- a/lib/librte_ring/rte_ring.h
+++ b/lib/librte_ring/rte_ring.h
@@ -382,7 +382,7 @@  __rte_ring_do_dequeue(struct rte_ring *r, void **obj_table,
 	uint32_t cons_head, cons_next;
 	uint32_t entries;
 
-	n = __rte_ring_move_cons_head(r, is_sc, n, behavior,
+	n = __rte_ring_move_cons_head(r, (int)is_sc, n, behavior,
 			&cons_head, &cons_next, &entries);
 	if (n == 0)
 		goto end;