DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] config/ppc: ignore gcc 11 psabi warnings
@ 2021-06-23 16:16 David Christensen
  2021-09-02 23:53 ` [dpdk-dev] [PATCH v2] " David Christensen
  0 siblings, 1 reply; 7+ messages in thread
From: David Christensen @ 2021-06-23 16:16 UTC (permalink / raw)
  To: dev; +Cc: David Christensen

Suppress the gcc warning "note: the layout of aggregates containing
vectors with 4-byte alignment has changed in GCC 5" on POWER systems
by setting "-Wno-psabi".  Warning was originally added to gcc in
commit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9832651 to warn
of the vector alignment changes introduced in GCC 5.  Older gcc
versions forced vector alignment to 16 bytes due to requirements for
POWER 6 and earlier CPUs, but these restrictions don't apply to CPUs
supported by DPDK.

Bugzilla ID: 739

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
---
 config/ppc/meson.build | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/config/ppc/meson.build b/config/ppc/meson.build
index 4f7806bab1..6c2db4a0aa 100644
--- a/config/ppc/meson.build
+++ b/config/ppc/meson.build
@@ -17,6 +17,12 @@ if not power9_supported
     dpdk_conf.set('RTE_MACHINE','power8')
 endif
 
+# Suppress the gcc warning "note: the layout of aggregates containing
+# vectors with 4-byte alignment has changed in GCC 5".
+if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')
+    add_project_arguments('-Wno-psabi', language: 'c')
+endif
+
 # Certain POWER9 systems can scale as high as 1536 LCORES, but setting such a
 # high value can waste memory, cause timeouts in time limited autotests, and is
 # unlikely to be used in many production situations.  Similarly, keeping the
-- 
2.27.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [dpdk-dev] [PATCH v2] config/ppc: ignore gcc 11 psabi warnings
  2021-06-23 16:16 [dpdk-dev] [PATCH] config/ppc: ignore gcc 11 psabi warnings David Christensen
@ 2021-09-02 23:53 ` David Christensen
  2021-09-08 17:11   ` David Christensen
                     ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: David Christensen @ 2021-09-02 23:53 UTC (permalink / raw)
  To: dev, david.marchand; +Cc: stable, David Christensen

Suppress the gcc warning "note: the layout of aggregates containing
vectors with 4-byte alignment has changed in GCC 5" on POWER systems
by setting "-Wno-psabi".  Warning was originally added to gcc in
commit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9832651 to warn
of the vector alignment changes introduced in GCC 5.  Older gcc
versions forced vector alignment to 16 bytes due to requirements for
POWER 6 and earlier CPUs, but these restrictions don't apply to CPUs
supported by DPDK.

Bugzilla ID: 739

Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
---
v2:
- update copyright year
- rebase for 21.11-rc0
---
 config/ppc/meson.build | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/config/ppc/meson.build b/config/ppc/meson.build
index adf49e1f42..5354db4e0a 100644
--- a/config/ppc/meson.build
+++ b/config/ppc/meson.build
@@ -1,5 +1,6 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
+# Copyright(c) 2021 IBM Corporation

 if not dpdk_conf.get('RTE_ARCH_64')
     error('Only 64-bit compiles are supported for this platform type')
@@ -17,6 +18,12 @@ if not power9_supported
     dpdk_conf.set('RTE_MACHINE','power8')
 endif

+# Suppress the gcc warning "note: the layout of aggregates containing
+# vectors with 4-byte alignment has changed in GCC 5".
+if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')
+    add_project_arguments('-Wno-psabi', language: 'c')
+endif
+
 # Certain POWER9 systems can scale as high as 1536 LCORES, but setting such a
 # high value can waste memory, cause timeouts in time limited autotests, and is
 # unlikely to be used in many production situations.  Similarly, keeping the
--
2.27.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v2] config/ppc: ignore gcc 11 psabi warnings
  2021-09-02 23:53 ` [dpdk-dev] [PATCH v2] " David Christensen
@ 2021-09-08 17:11   ` David Christensen
  2021-09-13  7:17   ` David Marchand
  2021-09-14  9:18   ` Ferruh Yigit
  2 siblings, 0 replies; 7+ messages in thread
From: David Christensen @ 2021-09-08 17:11 UTC (permalink / raw)
  To: dev, david.marchand; +Cc: stable

> Suppress the gcc warning "note: the layout of aggregates containing
> vectors with 4-byte alignment has changed in GCC 5" on POWER systems
> by setting "-Wno-psabi".  Warning was originally added to gcc in
> commit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9832651 to warn
> of the vector alignment changes introduced in GCC 5.  Older gcc
> versions forced vector alignment to 16 bytes due to requirements for
> POWER 6 and earlier CPUs, but these restrictions don't apply to CPUs
> supported by DPDK.
> 
> Bugzilla ID: 739
> 
> Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
> ---
> v2:
> - update copyright year
> - rebase for 21.11-rc0
> ---

David M,

Any chance of getting this approved in the 21.11 cycle?  Patch was 
originally submitted on 6/23, is only applicable to PPC architecture, 
and has no functional impact because it only disables warnings.  The 
failing test build on Windows reported at

http://mails.dpdk.org/archives/test-report/2021-September/216596.html

cannot in any way be caused by this patch.  We hope to have all changes 
in place to support POWER10 in this DPDK release so we're constantly 
testing with new compiler versions which add P10 support.

Dave

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v2] config/ppc: ignore gcc 11 psabi warnings
  2021-09-02 23:53 ` [dpdk-dev] [PATCH v2] " David Christensen
  2021-09-08 17:11   ` David Christensen
@ 2021-09-13  7:17   ` David Marchand
  2021-09-14  9:18   ` Ferruh Yigit
  2 siblings, 0 replies; 7+ messages in thread
From: David Marchand @ 2021-09-13  7:17 UTC (permalink / raw)
  To: David Christensen; +Cc: dev, dpdk stable

On Fri, Sep 3, 2021 at 1:53 AM David Christensen <drc@linux.vnet.ibm.com> wrote:
>
> Suppress the gcc warning "note: the layout of aggregates containing
> vectors with 4-byte alignment has changed in GCC 5" on POWER systems
> by setting "-Wno-psabi".  Warning was originally added to gcc in
> commit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9832651 to warn
> of the vector alignment changes introduced in GCC 5.  Older gcc
> versions forced vector alignment to 16 bytes due to requirements for
> POWER 6 and earlier CPUs, but these restrictions don't apply to CPUs
> supported by DPDK.
>
> Bugzilla ID: 739

I guess the intent was to have this backported.
So added explicit Cc: stable@dpdk.org

>
> Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
> ---
> v2:
> - update copyright year
> - rebase for 21.11-rc0
> ---
>  config/ppc/meson.build | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/config/ppc/meson.build b/config/ppc/meson.build
> index adf49e1f42..5354db4e0a 100644
> --- a/config/ppc/meson.build
> +++ b/config/ppc/meson.build
> @@ -1,5 +1,6 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
> +# Copyright(c) 2021 IBM Corporation
>
>  if not dpdk_conf.get('RTE_ARCH_64')
>      error('Only 64-bit compiles are supported for this platform type')
> @@ -17,6 +18,12 @@ if not power9_supported
>      dpdk_conf.set('RTE_MACHINE','power8')
>  endif
>
> +# Suppress the gcc warning "note: the layout of aggregates containing
> +# vectors with 4-byte alignment has changed in GCC 5".
> +if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')

Wrapped this to next line.


> +    add_project_arguments('-Wno-psabi', language: 'c')
> +endif
> +
>  # Certain POWER9 systems can scale as high as 1536 LCORES, but setting such a
>  # high value can waste memory, cause timeouts in time limited autotests, and is
>  # unlikely to be used in many production situations.  Similarly, keeping the
> --
> 2.27.0
>

Applied, thanks.


-- 
David Marchand


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v2] config/ppc: ignore gcc 11 psabi warnings
  2021-09-02 23:53 ` [dpdk-dev] [PATCH v2] " David Christensen
  2021-09-08 17:11   ` David Christensen
  2021-09-13  7:17   ` David Marchand
@ 2021-09-14  9:18   ` Ferruh Yigit
  2021-09-14 10:16     ` David Marchand
  2 siblings, 1 reply; 7+ messages in thread
From: Ferruh Yigit @ 2021-09-14  9:18 UTC (permalink / raw)
  To: David Christensen, dev, david.marchand; +Cc: stable

On 9/3/2021 12:53 AM, David Christensen wrote:
> Suppress the gcc warning "note: the layout of aggregates containing
> vectors with 4-byte alignment has changed in GCC 5" on POWER systems
> by setting "-Wno-psabi".  Warning was originally added to gcc in
> commit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9832651 to warn
> of the vector alignment changes introduced in GCC 5.  Older gcc
> versions forced vector alignment to 16 bytes due to requirements for
> POWER 6 and earlier CPUs, but these restrictions don't apply to CPUs
> supported by DPDK.
> 
> Bugzilla ID: 739
> 
> Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
> ---
> v2:
> - update copyright year
> - rebase for 21.11-rc0
> ---
>  config/ppc/meson.build | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/config/ppc/meson.build b/config/ppc/meson.build
> index adf49e1f42..5354db4e0a 100644
> --- a/config/ppc/meson.build
> +++ b/config/ppc/meson.build
> @@ -1,5 +1,6 @@
>  # SPDX-License-Identifier: BSD-3-Clause
>  # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
> +# Copyright(c) 2021 IBM Corporation
> 
>  if not dpdk_conf.get('RTE_ARCH_64')
>      error('Only 64-bit compiles are supported for this platform type')
> @@ -17,6 +18,12 @@ if not power9_supported
>      dpdk_conf.set('RTE_MACHINE','power8')
>  endif
> 
> +# Suppress the gcc warning "note: the layout of aggregates containing
> +# vectors with 4-byte alignment has changed in GCC 5".
> +if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')
> +    add_project_arguments('-Wno-psabi', language: 'c')
> +endif
> +
>  # Certain POWER9 systems can scale as high as 1536 LCORES, but setting such a
>  # high value can waste memory, cause timeouts in time limited autotests, and is
>  # unlikely to be used in many production situations.  Similarly, keeping the
> --

I am getting following build error in my environment:
"config/ppc/meson.build:23:6: ERROR: Unknown statement."

The compiler I have is:
powerpc64le-linux-gcc (gcc 10.2.0 "powerpc64le-linux-gcc.br_real (Buildroot
2020.08-14-ge5a2a90) 10.2.0")

meson version: Version: 0.59.1

Multi-line statements seems need to be merged with '\':

diff --git a/config/ppc/meson.build b/config/ppc/meson.build
index 0b1948fc7cb9..f95009c77e7a 100644
--- a/config/ppc/meson.build
+++ b/config/ppc/meson.build
@@ -20,7 +20,7 @@ endif

 # Suppress the gcc warning "note: the layout of aggregates containing
 # vectors with 4-byte alignment has changed in GCC 5".
-if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and
+if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and \
         cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')
     add_project_arguments('-Wno-psabi', language: 'c')
 endif


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v2] config/ppc: ignore gcc 11 psabi warnings
  2021-09-14  9:18   ` Ferruh Yigit
@ 2021-09-14 10:16     ` David Marchand
  2021-09-14 10:21       ` Bruce Richardson
  0 siblings, 1 reply; 7+ messages in thread
From: David Marchand @ 2021-09-14 10:16 UTC (permalink / raw)
  To: Ferruh Yigit, Bruce Richardson; +Cc: David Christensen, dev, dpdk stable

On Tue, Sep 14, 2021 at 11:18 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
>
> On 9/3/2021 12:53 AM, David Christensen wrote:
> > Suppress the gcc warning "note: the layout of aggregates containing
> > vectors with 4-byte alignment has changed in GCC 5" on POWER systems
> > by setting "-Wno-psabi".  Warning was originally added to gcc in
> > commit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9832651 to warn
> > of the vector alignment changes introduced in GCC 5.  Older gcc
> > versions forced vector alignment to 16 bytes due to requirements for
> > POWER 6 and earlier CPUs, but these restrictions don't apply to CPUs
> > supported by DPDK.
> >
> > Bugzilla ID: 739
> >
> > Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
> > ---
> > v2:
> > - update copyright year
> > - rebase for 21.11-rc0
> > ---
> >  config/ppc/meson.build | 7 +++++++
> >  1 file changed, 7 insertions(+)
> >
> > diff --git a/config/ppc/meson.build b/config/ppc/meson.build
> > index adf49e1f42..5354db4e0a 100644
> > --- a/config/ppc/meson.build
> > +++ b/config/ppc/meson.build
> > @@ -1,5 +1,6 @@
> >  # SPDX-License-Identifier: BSD-3-Clause
> >  # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
> > +# Copyright(c) 2021 IBM Corporation
> >
> >  if not dpdk_conf.get('RTE_ARCH_64')
> >      error('Only 64-bit compiles are supported for this platform type')
> > @@ -17,6 +18,12 @@ if not power9_supported
> >      dpdk_conf.set('RTE_MACHINE','power8')
> >  endif
> >
> > +# Suppress the gcc warning "note: the layout of aggregates containing
> > +# vectors with 4-byte alignment has changed in GCC 5".
> > +if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')
> > +    add_project_arguments('-Wno-psabi', language: 'c')
> > +endif
> > +
> >  # Certain POWER9 systems can scale as high as 1536 LCORES, but setting such a
> >  # high value can waste memory, cause timeouts in time limited autotests, and is
> >  # unlikely to be used in many production situations.  Similarly, keeping the
> > --
>
> I am getting following build error in my environment:
> "config/ppc/meson.build:23:6: ERROR: Unknown statement."
>
> The compiler I have is:
> powerpc64le-linux-gcc (gcc 10.2.0 "powerpc64le-linux-gcc.br_real (Buildroot
> 2020.08-14-ge5a2a90) 10.2.0")
>
> meson version: Version: 0.59.1

Good catch.
My fault, and I did not see it because I was still testing with gcc 9.


>
> Multi-line statements seems need to be merged with '\':
>
> diff --git a/config/ppc/meson.build b/config/ppc/meson.build
> index 0b1948fc7cb9..f95009c77e7a 100644
> --- a/config/ppc/meson.build
> +++ b/config/ppc/meson.build
> @@ -20,7 +20,7 @@ endif
>
>  # Suppress the gcc warning "note: the layout of aggregates containing
>  # vectors with 4-byte alignment has changed in GCC 5".
> -if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and
> +if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and \
>          cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')

I based this update of mine on other existing multiline statements in dpdk.
But I did not notice that all of them are within parens.

So both \ and () are fine.

Bruce, I did not see this described in our meson coding style.
Do you have an opinion for multiline statements in meson?


-- 
David Marchand


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [PATCH v2] config/ppc: ignore gcc 11 psabi warnings
  2021-09-14 10:16     ` David Marchand
@ 2021-09-14 10:21       ` Bruce Richardson
  0 siblings, 0 replies; 7+ messages in thread
From: Bruce Richardson @ 2021-09-14 10:21 UTC (permalink / raw)
  To: David Marchand; +Cc: Ferruh Yigit, David Christensen, dev, dpdk stable

On Tue, Sep 14, 2021 at 12:16:36PM +0200, David Marchand wrote:
> On Tue, Sep 14, 2021 at 11:18 AM Ferruh Yigit <ferruh.yigit@intel.com> wrote:
> >
> > On 9/3/2021 12:53 AM, David Christensen wrote:
> > > Suppress the gcc warning "note: the layout of aggregates containing
> > > vectors with 4-byte alignment has changed in GCC 5" on POWER systems
> > > by setting "-Wno-psabi".  Warning was originally added to gcc in
> > > commit https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=9832651 to warn
> > > of the vector alignment changes introduced in GCC 5.  Older gcc
> > > versions forced vector alignment to 16 bytes due to requirements for
> > > POWER 6 and earlier CPUs, but these restrictions don't apply to CPUs
> > > supported by DPDK.
> > >
> > > Bugzilla ID: 739
> > >
> > > Signed-off-by: David Christensen <drc@linux.vnet.ibm.com>
> > > ---
> > > v2:
> > > - update copyright year
> > > - rebase for 21.11-rc0
> > > ---
> > >  config/ppc/meson.build | 7 +++++++
> > >  1 file changed, 7 insertions(+)
> > >
> > > diff --git a/config/ppc/meson.build b/config/ppc/meson.build
> > > index adf49e1f42..5354db4e0a 100644
> > > --- a/config/ppc/meson.build
> > > +++ b/config/ppc/meson.build
> > > @@ -1,5 +1,6 @@
> > >  # SPDX-License-Identifier: BSD-3-Clause
> > >  # Copyright(c) 2018 Luca Boccassi <bluca@debian.org>
> > > +# Copyright(c) 2021 IBM Corporation
> > >
> > >  if not dpdk_conf.get('RTE_ARCH_64')
> > >      error('Only 64-bit compiles are supported for this platform type')
> > > @@ -17,6 +18,12 @@ if not power9_supported
> > >      dpdk_conf.set('RTE_MACHINE','power8')
> > >  endif
> > >
> > > +# Suppress the gcc warning "note: the layout of aggregates containing
> > > +# vectors with 4-byte alignment has changed in GCC 5".
> > > +if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')
> > > +    add_project_arguments('-Wno-psabi', language: 'c')
> > > +endif
> > > +
> > >  # Certain POWER9 systems can scale as high as 1536 LCORES, but setting such a
> > >  # high value can waste memory, cause timeouts in time limited autotests, and is
> > >  # unlikely to be used in many production situations.  Similarly, keeping the
> > > --
> >
> > I am getting following build error in my environment:
> > "config/ppc/meson.build:23:6: ERROR: Unknown statement."
> >
> > The compiler I have is:
> > powerpc64le-linux-gcc (gcc 10.2.0 "powerpc64le-linux-gcc.br_real (Buildroot
> > 2020.08-14-ge5a2a90) 10.2.0")
> >
> > meson version: Version: 0.59.1
> 
> Good catch.
> My fault, and I did not see it because I was still testing with gcc 9.
> 
> 
> >
> > Multi-line statements seems need to be merged with '\':
> >
> > diff --git a/config/ppc/meson.build b/config/ppc/meson.build
> > index 0b1948fc7cb9..f95009c77e7a 100644
> > --- a/config/ppc/meson.build
> > +++ b/config/ppc/meson.build
> > @@ -20,7 +20,7 @@ endif
> >
> >  # Suppress the gcc warning "note: the layout of aggregates containing
> >  # vectors with 4-byte alignment has changed in GCC 5".
> > -if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and
> > +if cc.get_id() == 'gcc' and cc.version().version_compare('>=10.0') and \
> >          cc.version().version_compare('<12.0') and cc.has_argument('-Wno-psabi')
> 
> I based this update of mine on other existing multiline statements in dpdk.
> But I did not notice that all of them are within parens.
> 
> So both \ and () are fine.
> 
> Bruce, I did not see this described in our meson coding style.
> Do you have an opinion for multiline statements in meson?
> 

No, I don't have an opinion either way. If you want, we can pick one to use
in the coding style, but if we do we should also match the style for python
code, as I believe they both share this multi-line approach.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-09-14 10:21 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-23 16:16 [dpdk-dev] [PATCH] config/ppc: ignore gcc 11 psabi warnings David Christensen
2021-09-02 23:53 ` [dpdk-dev] [PATCH v2] " David Christensen
2021-09-08 17:11   ` David Christensen
2021-09-13  7:17   ` David Marchand
2021-09-14  9:18   ` Ferruh Yigit
2021-09-14 10:16     ` David Marchand
2021-09-14 10:21       ` Bruce Richardson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).