[v2] eal: ignore alignment warnings for x86 vector

Message ID 20200429064906.11496-1-haiyue.wang@intel.com (mailing list archive)
State Not Applicable, archived
Headers
Series [v2] eal: ignore alignment warnings for x86 vector |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-intel-Performance fail Performance Testing issues
ci/iol-nxp-Performance success Performance Testing PASS
ci/travis-robot success Travis build: passed
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-testing success Testing PASS
ci/Intel-compilation success Compilation OK

Commit Message

Wang, Haiyue April 29, 2020, 6:49 a.m. UTC
  There several alignment warnings when including rte_memcpy header file
externally like OVS for x86.

Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
---
v2: Use __GUNC__ macro to apply for suppressing  the warning.
---
 lib/librte_eal/x86/include/rte_memcpy.h | 4 ++++
 1 file changed, 4 insertions(+)
  

Comments

Wang, Haiyue April 29, 2020, 8:29 a.m. UTC | #1
Dropped this patch, it is better to let the application to decide
the warning level.

BR,
Haiyue

> -----Original Message-----
> From: Wang, Haiyue <haiyue.wang@intel.com>
> Sent: Wednesday, April 29, 2020 14:49
> To: dev@dpdk.org; Richardson, Bruce <bruce.richardson@intel.com>; Ananyev, Konstantin
> <konstantin.ananyev@intel.com>; Stokes, Ian <ian.stokes@intel.com>
> Cc: Wang, Haiyue <haiyue.wang@intel.com>
> Subject: [PATCH v2] eal: ignore alignment warnings for x86 vector
> 
> There several alignment warnings when including rte_memcpy header file
> externally like OVS for x86.
> 
> Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
> ---
> v2: Use __GUNC__ macro to apply for suppressing  the warning.
> ---
>  lib/librte_eal/x86/include/rte_memcpy.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/lib/librte_eal/x86/include/rte_memcpy.h b/lib/librte_eal/x86/include/rte_memcpy.h
> index ba44c4a32..d4cfe8dd5 100644
> --- a/lib/librte_eal/x86/include/rte_memcpy.h
> +++ b/lib/librte_eal/x86/include/rte_memcpy.h
> @@ -22,6 +22,10 @@
>  extern "C" {
>  #endif
> 
> +#ifdef __GNUC__
> +#pragma GCC diagnostic ignored "-Wcast-align"
> +#endif
> +
>  /**
>   * Copy bytes from one location to another. The locations must not overlap.
>   *
> --
> 2.26.2
  
Kevin Traynor April 29, 2020, 8:40 a.m. UTC | #2
On 29/04/2020 07:49, Haiyue Wang wrote:
> There several alignment warnings when including rte_memcpy header file
> externally like OVS for x86.
> 
> Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
> ---
> v2: Use __GUNC__ macro to apply for suppressing  the warning.
> ---
>  lib/librte_eal/x86/include/rte_memcpy.h | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/lib/librte_eal/x86/include/rte_memcpy.h b/lib/librte_eal/x86/include/rte_memcpy.h
> index ba44c4a32..d4cfe8dd5 100644
> --- a/lib/librte_eal/x86/include/rte_memcpy.h
> +++ b/lib/librte_eal/x86/include/rte_memcpy.h
> @@ -22,6 +22,10 @@
>  extern "C" {
>  #endif
>  
> +#ifdef __GNUC__
> +#pragma GCC diagnostic ignored "-Wcast-align"
> +#endif
> +

Hi - have a look at this thread and the comments about a similar topic,
they are relevant here too.
http://inbox.dpdk.org/dev/20200416184549.10747-1-ktraynor@redhat.com/

>  /**
>   * Copy bytes from one location to another. The locations must not overlap.
>   *
>
  
Wang, Haiyue April 29, 2020, 4:17 p.m. UTC | #3
> -----Original Message-----
> From: Kevin Traynor <ktraynor@redhat.com>
> Sent: Wednesday, April 29, 2020 16:41
> To: Wang, Haiyue <haiyue.wang@intel.com>; dev@dpdk.org; Richardson, Bruce <bruce.richardson@intel.com>;
> Ananyev, Konstantin <konstantin.ananyev@intel.com>; Stokes, Ian <ian.stokes@intel.com>
> Subject: Re: [dpdk-dev] [PATCH v2] eal: ignore alignment warnings for x86 vector
> 
> On 29/04/2020 07:49, Haiyue Wang wrote:
> > There several alignment warnings when including rte_memcpy header file
> > externally like OVS for x86.
> >
> > Signed-off-by: Haiyue Wang <haiyue.wang@intel.com>
> > ---
> > v2: Use __GUNC__ macro to apply for suppressing  the warning.
> > ---
> >  lib/librte_eal/x86/include/rte_memcpy.h | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/lib/librte_eal/x86/include/rte_memcpy.h b/lib/librte_eal/x86/include/rte_memcpy.h
> > index ba44c4a32..d4cfe8dd5 100644
> > --- a/lib/librte_eal/x86/include/rte_memcpy.h
> > +++ b/lib/librte_eal/x86/include/rte_memcpy.h
> > @@ -22,6 +22,10 @@
> >  extern "C" {
> >  #endif
> >
> > +#ifdef __GNUC__
> > +#pragma GCC diagnostic ignored "-Wcast-align"
> > +#endif
> > +
> 
> Hi - have a look at this thread and the comments about a similar topic,
> they are relevant here too.
> http://inbox.dpdk.org/dev/20200416184549.10747-1-ktraynor@redhat.com/
> 

This issue happened on GCC 9.3.0 and build DPDK successfully, but compiling
the OVS-DPDK has lot of warnings. Do we need to fix this ?

> >  /**
> >   * Copy bytes from one location to another. The locations must not overlap.
> >   *
> >
  

Patch

diff --git a/lib/librte_eal/x86/include/rte_memcpy.h b/lib/librte_eal/x86/include/rte_memcpy.h
index ba44c4a32..d4cfe8dd5 100644
--- a/lib/librte_eal/x86/include/rte_memcpy.h
+++ b/lib/librte_eal/x86/include/rte_memcpy.h
@@ -22,6 +22,10 @@ 
 extern "C" {
 #endif
 
+#ifdef __GNUC__
+#pragma GCC diagnostic ignored "-Wcast-align"
+#endif
+
 /**
  * Copy bytes from one location to another. The locations must not overlap.
  *