[dpdk-dev] [PATCH v2] enicpmd: replace the type u_int* with uint* to remove compilation errors on a few platforms

2014-11-28 Thread Thomas Monjalon
> > ENIC PMD was giving compilation errors on ppc_64-power8-linuxapp-gcc because
> > of types such as u_int32_t.  This patch replaces all those with uint32_t and
> > similar ones.
> > 
> > Reported-by: David Marchand 
> > Signed-off-by: Sujith Sankar 
> 
> Acked-by: Bruce Richardson 
> 
> This patch helps out with getting a clang compile on BSD. However, one error
> and a number of warnings remain that should be looked at in another patch.

Applied

Thanks
-- 
Thomas


[dpdk-dev] [PATCH v2] enicpmd: replace the type u_int* with uint* to remove compilation errors on a few platforms

2014-11-28 Thread David Marchand
On Fri, Nov 28, 2014 at 10:38 AM, Sujith Sankar  wrote:

> ENIC PMD was giving compilation errors on ppc_64-power8-linuxapp-gcc
> because
> of types such as u_int32_t.  This patch replaces all those with uint32_t
> and
> similar ones.
>
> Reported-by: David Marchand 
> Signed-off-by: Sujith Sankar 
> ---
>  lib/librte_pmd_enic/enic.h |  2 +-
>  lib/librte_pmd_enic/enic_compat.h  | 24 
>  lib/librte_pmd_enic/enic_main.c| 18 +-
>  lib/librte_pmd_enic/vnic/vnic_devcmd.h |  6 +++---
>  4 files changed, 25 insertions(+), 25 deletions(-)
>
> diff --git a/lib/librte_pmd_enic/enic.h b/lib/librte_pmd_enic/enic.h
> index 9f80fc0..6400d24 100644
> --- a/lib/librte_pmd_enic/enic.h
> +++ b/lib/librte_pmd_enic/enic.h
> @@ -106,7 +106,7 @@ struct enic {
> int iommu_group_fd;
> int iommu_groupid;
> int eventfd;
> -   u_int8_t mac_addr[ETH_ALEN];
> +   uint8_t mac_addr[ETH_ALEN];
> pthread_t err_intr_thread;
> int promisc;
> int allmulti;
> diff --git a/lib/librte_pmd_enic/enic_compat.h
> b/lib/librte_pmd_enic/enic_compat.h
> index d22578e..b3738ee 100644
> --- a/lib/librte_pmd_enic/enic_compat.h
> +++ b/lib/librte_pmd_enic/enic_compat.h
> @@ -89,34 +89,34 @@ typedef unsigned intu32;
>  typedef unsigned long long  u64;
>  typedef unsigned long long  dma_addr_t;
>
> -static inline u_int32_t ioread32(volatile void *addr)
> +static inline uint32_t ioread32(volatile void *addr)
>  {
> -   return *(volatile u_int32_t *)addr;
> +   return *(volatile uint32_t *)addr;
>  }
>
> -static inline u16 ioread16(volatile void *addr)
> +static inline uint16_t ioread16(volatile void *addr)
>  {
> -   return *(volatile u16 *)addr;
> +   return *(volatile uint16_t *)addr;
>  }
>
> -static inline u_int8_t ioread8(volatile void *addr)
> +static inline uint8_t ioread8(volatile void *addr)
>  {
> -   return *(volatile u_int8_t *)addr;
> +   return *(volatile uint8_t *)addr;
>  }
>
> -static inline void iowrite32(u_int32_t val, volatile void *addr)
> +static inline void iowrite32(uint32_t val, volatile void *addr)
>  {
> -   *(volatile u_int32_t *)addr = val;
> +   *(volatile uint32_t *)addr = val;
>  }
>
> -static inline void iowrite16(u16 val, volatile void *addr)
> +static inline void iowrite16(uint16_t val, volatile void *addr)
>  {
> -   *(volatile u16 *)addr = val;
> +   *(volatile uint16_t *)addr = val;
>  }
>
> -static inline void iowrite8(u_int8_t val, volatile void *addr)
> +static inline void iowrite8(uint8_t val, volatile void *addr)
>  {
> -   *(volatile u_int8_t *)addr = val;
> +   *(volatile uint8_t *)addr = val;
>  }
>
>  static inline unsigned int readl(volatile void __iomem *addr)
> diff --git a/lib/librte_pmd_enic/enic_main.c
> b/lib/librte_pmd_enic/enic_main.c
> index f6f00d3..853dd04 100644
> --- a/lib/librte_pmd_enic/enic_main.c
> +++ b/lib/librte_pmd_enic/enic_main.c
> @@ -172,17 +172,17 @@ unsigned int enic_cleanup_wq(struct enic *enic,
> struct vnic_wq *wq)
>
>  int enic_send_pkt(struct enic *enic, struct vnic_wq *wq,
> struct rte_mbuf *tx_pkt, unsigned short len,
> -   u_int8_t sop, u_int8_t eop,
> -   u_int16_t ol_flags, u_int16_t vlan_tag)
> +   uint8_t sop, uint8_t eop,
> +   uint16_t ol_flags, uint16_t vlan_tag)
>  {
> struct wq_enet_desc *desc = vnic_wq_next_desc(wq);
> -   u_int16_t mss = 0;
> -   u_int16_t header_length = 0;
> -   u_int8_t cq_entry = eop;
> -   u_int8_t vlan_tag_insert = 0;
> +   uint16_t mss = 0;
> +   uint16_t header_length = 0;
> +   uint8_t cq_entry = eop;
> +   uint8_t vlan_tag_insert = 0;
> unsigned char *buf = (unsigned char *)(tx_pkt->buf_addr) +
> RTE_PKTMBUF_HEADROOM;
> -   u_int64_t bus_addr = (dma_addr_t)
> +   uint64_t bus_addr = (dma_addr_t)
> (tx_pkt->buf_physaddr + RTE_PKTMBUF_HEADROOM);
>
> if (sop) {
> @@ -342,8 +342,8 @@ static int enic_rq_alloc_buf(struct vnic_rq *rq)
> void *buf;
> dma_addr_t dma_addr;
> struct rq_enet_desc *desc = vnic_rq_next_desc(rq);
> -   u_int8_t type = RQ_ENET_TYPE_ONLY_SOP;
> -   u_int16_t len = ENIC_MAX_MTU + VLAN_ETH_HLEN;
> +   uint8_t type = RQ_ENET_TYPE_ONLY_SOP;
> +   uint16_t len = ENIC_MAX_MTU + VLAN_ETH_HLEN;
> u16 split_hdr_size = vnic_get_hdr_split_size(enic->vdev);
> struct rte_mbuf *mbuf = enic_rxmbuf_alloc(rq->mp);
> struct rte_mbuf *hdr_mbuf = NULL;
> diff --git a/lib/librte_pmd_enic/vnic/vnic_devcmd.h
> b/lib/librte_pmd_enic/vnic/vnic_devcmd.h
> index b4c87c1..e7ecf31 100644
> --- a/lib/librte_pmd_enic/vnic/vnic_devcmd.h
> +++ b/lib/librte_pmd_enic/vnic/vnic_devcmd.h
> @@ -691,9 +691,9 @@ enum {
>  #define FILTER_MAX_BUF_SIZE 100  /* Maximum size of buffer to
> CMD_ADD_FILTER */
>
>  struct filter_tlv {
> -   u_int32_t type;
> -   u_int32_t length;
> - 

[dpdk-dev] [PATCH v2] enicpmd: replace the type u_int* with uint* to remove compilation errors on a few platforms

2014-11-28 Thread Sujith Sankar (ssujith)


On 28/11/14 9:36 pm, "Bruce Richardson"  wrote:

>On Fri, Nov 28, 2014 at 04:01:00PM +, Sujith Sankar (ssujith) wrote:
>> 
>> 
>> On 28/11/14 9:22 pm, "Bruce Richardson" 
>>wrote:
>> 
>> >On Fri, Nov 28, 2014 at 03:08:19PM +0530, Sujith Sankar wrote:
>> >> ENIC PMD was giving compilation errors on ppc_64-power8-linuxapp-gcc
>> >>because
>> >> of types such as u_int32_t.  This patch replaces all those with
>> >>uint32_t and
>> >> similar ones.
>> >> 
>> >> Reported-by: David Marchand 
>> >> Signed-off-by: Sujith Sankar 
>> >
>> >Acked-by: Bruce Richardson 
>> >
>> >This patch helps out with getting a clang compile on BSD. However, one
>> >error
>> >and a number of warnings remain that should be looked at in another
>>patch.
>> >The error is:
>> >
>> >dpdk.org/lib/librte_pmd_enic/enic_main.c:435:3: fatal error: non-void
>> >function 'enic_rq_indicate_buf' should return a value [-Wreturn-type]
>> >return;
>> 
>> Bruce, thanks for the comment.  I?ve not built enicpmd using clang
>> compiler.
>> I shall setup a BSD build with clang compiler and send a patch with
>> necessary fixes.
>> Could you please let me know the versions and flavours that you are
>>using?
>> 
>> Thanks,
>> -Sujith
>>
>Clang on a linux install gives the same errors, as far as I can see. What
>I'm using is clang 3.4 on Fedora 20, and clang 3.3 on FreeBSD 10.
>
>If you like, if you just fix clang on Linux compilation, I can check for
>any
>additional errors on FreeBSD and get back to you on them, rather than you
>having
>to install a FreeBSD system right away.

Thank you Bruce.
I shall start with Clang on Linux and send the patch soon.

>
>/Bruce



[dpdk-dev] [PATCH v2] enicpmd: replace the type u_int* with uint* to remove compilation errors on a few platforms

2014-11-28 Thread Bruce Richardson
On Fri, Nov 28, 2014 at 04:01:00PM +, Sujith Sankar (ssujith) wrote:
> 
> 
> On 28/11/14 9:22 pm, "Bruce Richardson"  wrote:
> 
> >On Fri, Nov 28, 2014 at 03:08:19PM +0530, Sujith Sankar wrote:
> >> ENIC PMD was giving compilation errors on ppc_64-power8-linuxapp-gcc
> >>because
> >> of types such as u_int32_t.  This patch replaces all those with
> >>uint32_t and
> >> similar ones.
> >> 
> >> Reported-by: David Marchand 
> >> Signed-off-by: Sujith Sankar 
> >
> >Acked-by: Bruce Richardson 
> >
> >This patch helps out with getting a clang compile on BSD. However, one
> >error
> >and a number of warnings remain that should be looked at in another patch.
> >The error is:
> >
> >dpdk.org/lib/librte_pmd_enic/enic_main.c:435:3: fatal error: non-void
> >function 'enic_rq_indicate_buf' should return a value [-Wreturn-type]
> >return;
> 
> Bruce, thanks for the comment.  I?ve not built enicpmd using clang
> compiler.
> I shall setup a BSD build with clang compiler and send a patch with
> necessary fixes.
> Could you please let me know the versions and flavours that you are using?
> 
> Thanks,
> -Sujith
>
Clang on a linux install gives the same errors, as far as I can see. What
I'm using is clang 3.4 on Fedora 20, and clang 3.3 on FreeBSD 10. 

If you like, if you just fix clang on Linux compilation, I can check for any
additional errors on FreeBSD and get back to you on them, rather than you having
to install a FreeBSD system right away.

/Bruce


[dpdk-dev] [PATCH v2] enicpmd: replace the type u_int* with uint* to remove compilation errors on a few platforms

2014-11-28 Thread Sujith Sankar (ssujith)


On 28/11/14 9:22 pm, "Bruce Richardson"  wrote:

>On Fri, Nov 28, 2014 at 03:08:19PM +0530, Sujith Sankar wrote:
>> ENIC PMD was giving compilation errors on ppc_64-power8-linuxapp-gcc
>>because
>> of types such as u_int32_t.  This patch replaces all those with
>>uint32_t and
>> similar ones.
>> 
>> Reported-by: David Marchand 
>> Signed-off-by: Sujith Sankar 
>
>Acked-by: Bruce Richardson 
>
>This patch helps out with getting a clang compile on BSD. However, one
>error
>and a number of warnings remain that should be looked at in another patch.
>The error is:
>
>dpdk.org/lib/librte_pmd_enic/enic_main.c:435:3: fatal error: non-void
>function 'enic_rq_indicate_buf' should return a value [-Wreturn-type]
>return;

Bruce, thanks for the comment.  I?ve not built enicpmd using clang
compiler.
I shall setup a BSD build with clang compiler and send a patch with
necessary fixes.
Could you please let me know the versions and flavours that you are using?

Thanks,
-Sujith

>
>> ---
>>  lib/librte_pmd_enic/enic.h |  2 +-
>>  lib/librte_pmd_enic/enic_compat.h  | 24 
>>  lib/librte_pmd_enic/enic_main.c| 18 +-
>>  lib/librte_pmd_enic/vnic/vnic_devcmd.h |  6 +++---
>>  4 files changed, 25 insertions(+), 25 deletions(-)
>> 
>> diff --git a/lib/librte_pmd_enic/enic.h b/lib/librte_pmd_enic/enic.h
>> index 9f80fc0..6400d24 100644
>> --- a/lib/librte_pmd_enic/enic.h
>> +++ b/lib/librte_pmd_enic/enic.h
>> @@ -106,7 +106,7 @@ struct enic {
>>  int iommu_group_fd;
>>  int iommu_groupid;
>>  int eventfd;
>> -u_int8_t mac_addr[ETH_ALEN];
>> +uint8_t mac_addr[ETH_ALEN];
>>  pthread_t err_intr_thread;
>>  int promisc;
>>  int allmulti;
>> diff --git a/lib/librte_pmd_enic/enic_compat.h
>>b/lib/librte_pmd_enic/enic_compat.h
>> index d22578e..b3738ee 100644
>> --- a/lib/librte_pmd_enic/enic_compat.h
>> +++ b/lib/librte_pmd_enic/enic_compat.h
>> @@ -89,34 +89,34 @@ typedef  unsigned intu32;
>>  typedef unsigned long long  u64;
>>  typedef unsigned long long  dma_addr_t;
>>  
>> -static inline u_int32_t ioread32(volatile void *addr)
>> +static inline uint32_t ioread32(volatile void *addr)
>>  {
>> -return *(volatile u_int32_t *)addr;
>> +return *(volatile uint32_t *)addr;
>>  }
>>  
>> -static inline u16 ioread16(volatile void *addr)
>> +static inline uint16_t ioread16(volatile void *addr)
>>  {
>> -return *(volatile u16 *)addr;
>> +return *(volatile uint16_t *)addr;
>>  }
>>  
>> -static inline u_int8_t ioread8(volatile void *addr)
>> +static inline uint8_t ioread8(volatile void *addr)
>>  {
>> -return *(volatile u_int8_t *)addr;
>> +return *(volatile uint8_t *)addr;
>>  }
>>  
>> -static inline void iowrite32(u_int32_t val, volatile void *addr)
>> +static inline void iowrite32(uint32_t val, volatile void *addr)
>>  {
>> -*(volatile u_int32_t *)addr = val;
>> +*(volatile uint32_t *)addr = val;
>>  }
>>  
>> -static inline void iowrite16(u16 val, volatile void *addr)
>> +static inline void iowrite16(uint16_t val, volatile void *addr)
>>  {
>> -*(volatile u16 *)addr = val;
>> +*(volatile uint16_t *)addr = val;
>>  }
>>  
>> -static inline void iowrite8(u_int8_t val, volatile void *addr)
>> +static inline void iowrite8(uint8_t val, volatile void *addr)
>>  {
>> -*(volatile u_int8_t *)addr = val;
>> +*(volatile uint8_t *)addr = val;
>>  }
>>  
>>  static inline unsigned int readl(volatile void __iomem *addr)
>> diff --git a/lib/librte_pmd_enic/enic_main.c
>>b/lib/librte_pmd_enic/enic_main.c
>> index f6f00d3..853dd04 100644
>> --- a/lib/librte_pmd_enic/enic_main.c
>> +++ b/lib/librte_pmd_enic/enic_main.c
>> @@ -172,17 +172,17 @@ unsigned int enic_cleanup_wq(struct enic *enic,
>>struct vnic_wq *wq)
>>  
>>  int enic_send_pkt(struct enic *enic, struct vnic_wq *wq,
>>  struct rte_mbuf *tx_pkt, unsigned short len,
>> -u_int8_t sop, u_int8_t eop,
>> -u_int16_t ol_flags, u_int16_t vlan_tag)
>> +uint8_t sop, uint8_t eop,
>> +uint16_t ol_flags, uint16_t vlan_tag)
>>  {
>>  struct wq_enet_desc *desc = vnic_wq_next_desc(wq);
>> -u_int16_t mss = 0;
>> -u_int16_t header_length = 0;
>> -u_int8_t cq_entry = eop;
>> -u_int8_t vlan_tag_insert = 0;
>> +uint16_t mss = 0;
>> +uint16_t header_length = 0;
>> +uint8_t cq_entry = eop;
>> +uint8_t vlan_tag_insert = 0;
>>  unsigned char *buf = (unsigned char *)(tx_pkt->buf_addr) +
>>  RTE_PKTMBUF_HEADROOM;
>> -u_int64_t bus_addr = (dma_addr_t)
>> +uint64_t bus_addr = (dma_addr_t)
>>  (tx_pkt->buf_physaddr + RTE_PKTMBUF_HEADROOM);
>>  
>>  if (sop) {
>> @@ -342,8 +342,8 @@ static int enic_rq_alloc_buf(struct vnic_rq *rq)
>>  void *buf;
>>  dma_addr_t dma_addr;
>>  struct rq_enet_desc *desc = vnic_rq_next_desc(rq);
>> -u_int8_t type = RQ_ENET_TYPE_ONLY_SOP;
>> -u_int16_t len = ENIC_MAX_MTU + VLAN_ETH_HLEN;
>> +uint8_t 

[dpdk-dev] [PATCH v2] enicpmd: replace the type u_int* with uint* to remove compilation errors on a few platforms

2014-11-28 Thread Bruce Richardson
On Fri, Nov 28, 2014 at 03:08:19PM +0530, Sujith Sankar wrote:
> ENIC PMD was giving compilation errors on ppc_64-power8-linuxapp-gcc because
> of types such as u_int32_t.  This patch replaces all those with uint32_t and
> similar ones.
> 
> Reported-by: David Marchand 
> Signed-off-by: Sujith Sankar 

Acked-by: Bruce Richardson 

This patch helps out with getting a clang compile on BSD. However, one error
and a number of warnings remain that should be looked at in another patch.
The error is:

dpdk.org/lib/librte_pmd_enic/enic_main.c:435:3: fatal error: non-void function 
'enic_rq_indicate_buf' should return a value [-Wreturn-type]
return;

> ---
>  lib/librte_pmd_enic/enic.h |  2 +-
>  lib/librte_pmd_enic/enic_compat.h  | 24 
>  lib/librte_pmd_enic/enic_main.c| 18 +-
>  lib/librte_pmd_enic/vnic/vnic_devcmd.h |  6 +++---
>  4 files changed, 25 insertions(+), 25 deletions(-)
> 
> diff --git a/lib/librte_pmd_enic/enic.h b/lib/librte_pmd_enic/enic.h
> index 9f80fc0..6400d24 100644
> --- a/lib/librte_pmd_enic/enic.h
> +++ b/lib/librte_pmd_enic/enic.h
> @@ -106,7 +106,7 @@ struct enic {
>   int iommu_group_fd;
>   int iommu_groupid;
>   int eventfd;
> - u_int8_t mac_addr[ETH_ALEN];
> + uint8_t mac_addr[ETH_ALEN];
>   pthread_t err_intr_thread;
>   int promisc;
>   int allmulti;
> diff --git a/lib/librte_pmd_enic/enic_compat.h 
> b/lib/librte_pmd_enic/enic_compat.h
> index d22578e..b3738ee 100644
> --- a/lib/librte_pmd_enic/enic_compat.h
> +++ b/lib/librte_pmd_enic/enic_compat.h
> @@ -89,34 +89,34 @@ typedef   unsigned intu32;
>  typedef unsigned long long  u64;
>  typedef unsigned long long  dma_addr_t;
>  
> -static inline u_int32_t ioread32(volatile void *addr)
> +static inline uint32_t ioread32(volatile void *addr)
>  {
> - return *(volatile u_int32_t *)addr;
> + return *(volatile uint32_t *)addr;
>  }
>  
> -static inline u16 ioread16(volatile void *addr)
> +static inline uint16_t ioread16(volatile void *addr)
>  {
> - return *(volatile u16 *)addr;
> + return *(volatile uint16_t *)addr;
>  }
>  
> -static inline u_int8_t ioread8(volatile void *addr)
> +static inline uint8_t ioread8(volatile void *addr)
>  {
> - return *(volatile u_int8_t *)addr;
> + return *(volatile uint8_t *)addr;
>  }
>  
> -static inline void iowrite32(u_int32_t val, volatile void *addr)
> +static inline void iowrite32(uint32_t val, volatile void *addr)
>  {
> - *(volatile u_int32_t *)addr = val;
> + *(volatile uint32_t *)addr = val;
>  }
>  
> -static inline void iowrite16(u16 val, volatile void *addr)
> +static inline void iowrite16(uint16_t val, volatile void *addr)
>  {
> - *(volatile u16 *)addr = val;
> + *(volatile uint16_t *)addr = val;
>  }
>  
> -static inline void iowrite8(u_int8_t val, volatile void *addr)
> +static inline void iowrite8(uint8_t val, volatile void *addr)
>  {
> - *(volatile u_int8_t *)addr = val;
> + *(volatile uint8_t *)addr = val;
>  }
>  
>  static inline unsigned int readl(volatile void __iomem *addr)
> diff --git a/lib/librte_pmd_enic/enic_main.c b/lib/librte_pmd_enic/enic_main.c
> index f6f00d3..853dd04 100644
> --- a/lib/librte_pmd_enic/enic_main.c
> +++ b/lib/librte_pmd_enic/enic_main.c
> @@ -172,17 +172,17 @@ unsigned int enic_cleanup_wq(struct enic *enic, struct 
> vnic_wq *wq)
>  
>  int enic_send_pkt(struct enic *enic, struct vnic_wq *wq,
>   struct rte_mbuf *tx_pkt, unsigned short len,
> - u_int8_t sop, u_int8_t eop,
> - u_int16_t ol_flags, u_int16_t vlan_tag)
> + uint8_t sop, uint8_t eop,
> + uint16_t ol_flags, uint16_t vlan_tag)
>  {
>   struct wq_enet_desc *desc = vnic_wq_next_desc(wq);
> - u_int16_t mss = 0;
> - u_int16_t header_length = 0;
> - u_int8_t cq_entry = eop;
> - u_int8_t vlan_tag_insert = 0;
> + uint16_t mss = 0;
> + uint16_t header_length = 0;
> + uint8_t cq_entry = eop;
> + uint8_t vlan_tag_insert = 0;
>   unsigned char *buf = (unsigned char *)(tx_pkt->buf_addr) +
>   RTE_PKTMBUF_HEADROOM;
> - u_int64_t bus_addr = (dma_addr_t)
> + uint64_t bus_addr = (dma_addr_t)
>   (tx_pkt->buf_physaddr + RTE_PKTMBUF_HEADROOM);
>  
>   if (sop) {
> @@ -342,8 +342,8 @@ static int enic_rq_alloc_buf(struct vnic_rq *rq)
>   void *buf;
>   dma_addr_t dma_addr;
>   struct rq_enet_desc *desc = vnic_rq_next_desc(rq);
> - u_int8_t type = RQ_ENET_TYPE_ONLY_SOP;
> - u_int16_t len = ENIC_MAX_MTU + VLAN_ETH_HLEN;
> + uint8_t type = RQ_ENET_TYPE_ONLY_SOP;
> + uint16_t len = ENIC_MAX_MTU + VLAN_ETH_HLEN;
>   u16 split_hdr_size = vnic_get_hdr_split_size(enic->vdev);
>   struct rte_mbuf *mbuf = enic_rxmbuf_alloc(rq->mp);
>   struct rte_mbuf *hdr_mbuf = NULL;
> diff --git a/lib/librte_pmd_enic/vnic/vnic_devcmd.h 
> b/lib/librte_pmd_enic/vnic/vnic_devcmd.h
> index b4c87c1..e7ecf31 100644
> --- 

[dpdk-dev] [PATCH v2] enicpmd: replace the type u_int* with uint* to remove compilation errors on a few platforms

2014-11-28 Thread Thomas Monjalon
Hi Sujith,

Some tips when sending a v2:
- use --in-reply-to to keep all the versions in the same thread
- use --annotate to write a changelog

These guidelines are explained in this page:
http://dpdk.org/dev#send

Thanks
-- 
Thomas