[dpdk-dev] librte_hash: Fix compile errors on IBM POWER

Message ID 1449634307-24075-1-git-send-email-chaozhu@linux.vnet.ibm.com (mailing list archive)
State Accepted, archived
Headers

Commit Message

Chao Zhu Dec. 9, 2015, 4:11 a.m. UTC
  This patch fixes the compile errors caused by lacking of "size_t" definition in rte_hash.h. The
compile error exists on IBM POWER and ARM (see jerin.jacob@caviumnetworks.com's message).

The errors are like:
In file included from /tmp/dpdk/app/test/test_hash_scaling.c:35:0:
/tmp/dpdk/build/include/rte_hash.h:70:70: error: unknown type name ‘size_t’
 typedef int (*rte_hash_cmp_eq_t)(const void *key1, const void *key2, size_t key_len);
                                                                      ^
/tmp/dpdk/build/include/rte_hash.h:120:48: error: unknown type name ‘rte_hash_cmp_eq_t’
 void rte_hash_set_cmp_func(struct rte_hash *h, rte_hash_cmp_eq_t func);

Signed-off-by: Chao Zhu <chaozhu@linux.vnet.ibm.com>
---
 lib/librte_hash/rte_hash.h |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
  

Comments

Jerin Jacob Dec. 9, 2015, 4:40 a.m. UTC | #1
On Wed, Dec 09, 2015 at 12:11:47PM +0800, Chao Zhu wrote:
> This patch fixes the compile errors caused by lacking of "size_t" definition in rte_hash.h. The
> compile error exists on IBM POWER and ARM (see jerin.jacob@caviumnetworks.com's message).

remove relative references from git log,

- compile error exists on IBM POWER and ARM (see jerin.jacob@caviumnetworks.com's message).
+ compile error exists on IBM POWER and ARM64 GCC 5.2


> 
> The errors are like:
> In file included from /tmp/dpdk/app/test/test_hash_scaling.c:35:0:
> /tmp/dpdk/build/include/rte_hash.h:70:70: error: unknown type name ‘size_t’
>  typedef int (*rte_hash_cmp_eq_t)(const void *key1, const void *key2, size_t key_len);
>                                                                       ^
> /tmp/dpdk/build/include/rte_hash.h:120:48: error: unknown type name ‘rte_hash_cmp_eq_t’
>  void rte_hash_set_cmp_func(struct rte_hash *h, rte_hash_cmp_eq_t func);

add fixes:

Fixes: 95da2f8e9c61 ("hash: customize compare function")

with above changes,

Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>

> 
> Signed-off-by: Chao Zhu <chaozhu@linux.vnet.ibm.com>
> ---
>  lib/librte_hash/rte_hash.h |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/lib/librte_hash/rte_hash.h b/lib/librte_hash/rte_hash.h
> index 6494ade..85fc416 100644
> --- a/lib/librte_hash/rte_hash.h
> +++ b/lib/librte_hash/rte_hash.h
> @@ -41,6 +41,7 @@
>   */
>  
>  #include <stdint.h>
> +#include <stddef.h>
>  
>  #ifdef __cplusplus
>  extern "C" {
> -- 
> 1.7.1
>
  
Thomas Monjalon Dec. 9, 2015, 8:22 p.m. UTC | #2
2015-12-09 10:10, Jerin Jacob:
> On Wed, Dec 09, 2015 at 12:11:47PM +0800, Chao Zhu wrote:
> > This patch fixes the compile errors caused by lacking of "size_t" definition in rte_hash.h. The
> > compile error exists on IBM POWER and ARM (see jerin.jacob@caviumnetworks.com's message).
> 
> remove relative references from git log,
> 
> - compile error exists on IBM POWER and ARM (see jerin.jacob@caviumnetworks.com's message).
> + compile error exists on IBM POWER and ARM64 GCC 5.2
> 
> > 
> > The errors are like:
> > In file included from /tmp/dpdk/app/test/test_hash_scaling.c:35:0:
> > /tmp/dpdk/build/include/rte_hash.h:70:70: error: unknown type name ‘size_t’
> >  typedef int (*rte_hash_cmp_eq_t)(const void *key1, const void *key2, size_t key_len);
> >                                                                       ^
> > /tmp/dpdk/build/include/rte_hash.h:120:48: error: unknown type name ‘rte_hash_cmp_eq_t’
> >  void rte_hash_set_cmp_func(struct rte_hash *h, rte_hash_cmp_eq_t func);
> 
> add fixes:
> 
> Fixes: 95da2f8e9c61 ("hash: customize compare function")
> 
> with above changes,
> 
> Acked-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>

Applied, thanks
  

Patch

diff --git a/lib/librte_hash/rte_hash.h b/lib/librte_hash/rte_hash.h
index 6494ade..85fc416 100644
--- a/lib/librte_hash/rte_hash.h
+++ b/lib/librte_hash/rte_hash.h
@@ -41,6 +41,7 @@ 
  */
 
 #include <stdint.h>
+#include <stddef.h>
 
 #ifdef __cplusplus
 extern "C" {