From: Bruce Richardson <bruce.richardson@intel.com>
To: Ali Alnubani <alialnu@nvidia.com>
Cc: "David Marchand" <david.marchand@redhat.com>,
"Patrick Robb" <probb@iol.unh.edu>,
"Tyler Retzlaff" <roretzla@linux.microsoft.com>,
"dev@dpdk.org" <dev@dpdk.org>,
"Morten Brørup" <mb@smartsharesystems.com>,
"NBU-Contact-Thomas Monjalon (EXTERNAL)" <thomas@monjalon.net>
Subject: Re: [PATCH v3] build: update DPDK to use C11 standard
Date: Tue, 1 Aug 2023 14:03:43 +0100 [thread overview]
Message-ID: <ZMkCr7AYjhtE35kB@bricha3-MOBL.ger.corp.intel.com> (raw)
In-Reply-To: <DM4PR12MB516714CBA9D2B441BCCF6B2DDA0AA@DM4PR12MB5167.namprd12.prod.outlook.com>
On Tue, Aug 01, 2023 at 12:42:36PM +0000, Ali Alnubani wrote:
> > -----Original Message-----
> > From: Bruce Richardson <bruce.richardson@intel.com>
> > Sent: Tuesday, August 1, 2023 1:51 PM
> > To: David Marchand <david.marchand@redhat.com>
> > Cc: Patrick Robb <probb@iol.unh.edu>; Tyler Retzlaff
> > <roretzla@linux.microsoft.com>; dev@dpdk.org; Morten Brørup
> > <mb@smartsharesystems.com>; NBU-Contact-Thomas Monjalon
> > (EXTERNAL) <thomas@monjalon.net>
> > Subject: Re: [PATCH v3] build: update DPDK to use C11 standard
> >
> > On Tue, Aug 01, 2023 at 11:39:06AM +0100, Bruce Richardson wrote:
> > > On Tue, Aug 01, 2023 at 12:35:21PM +0200, David Marchand wrote:
> > > > On Tue, Aug 1, 2023 at 12:19 PM Bruce Richardson
> > > > <bruce.richardson@intel.com> wrote:
> > > > >
> > > > > On Mon, Jul 31, 2023 at 08:39:31PM -0400, Patrick Robb wrote:
> > > > > > Hi Bruce,
> > > > > > I see some failures for this series for our Ubuntu 20.04 containers.
> > > <snip>
> > > > >
> > > > > Hi again,
> > > > >
> > > > > I've attempted to reproduce this on my Ubuntu 20.04 VM and failed,
> > > > > everything seems to build ok.
> > > > >
> > > > > Looking through the logs, though, there does appear to be a difference in
> > > > > the configurations in the two cases. I suspect my Ubuntu has an updated
> > > > > verbs package compared to the image you are using. In the log of the
> > failed
> > > > > build, I see:
> > > > >
> > > > > Checking whether type "struct mlx4_wqe_lso_seg" has member
> > "mss_hdr_size" with dependencies libmlx4, libibverbs: NO
> > > > > Configuring mlx4_autoconf.h using configuration
> > > > >
> > > > > While building in my VM, I have:
> > > > >
> > > > > Checking whether type "struct mlx4_wqe_lso_seg" has member
> > "mss_hdr_size" with dependencies libmlx4, libibverbs: YES (cached)
> > > > > Configuring mlx4_autoconf.h using configuration
> > > > >
> > > > > So my verbs mlx4 header has got a different set of definitions to those in
> > > > > the CI machine. My Ubuntu reports as 20.04.6 with libibverbs-dev
> > package
> > > > > version "28.0-1ubuntu1"
> > > > >
> > > > > Can the CI image be updated to latest 20.04 packages?
> > > > >
> > > > > /Bruce
> > > > >
> > > >
> > > > I can reproduce the issue seen at UNH, with a 20.04.6 container and
> > > > the same libibverbs as you:
> > > > ii libibverbs-dev:amd64 28.0-1ubuntu1
> > > > amd64 Development files for the libibverbs library
> > > >
> > > > So I suspect something is different in container images..
> > > >
> > > > Pasting the (hopefully) relevant meson logs:
> > > >
> > > > Running compile:
> > > > Working directory: /root/dpdk/build/meson-private/tmp0ovvvd9g
> > > > Command line: ccache cc -I/usr/include/libnl3
> > > > /root/dpdk/build/meson-private/tmp0ovvvd9g/testfile.c -o
> > > > /root/dpdk/build/meson-private/tmp0ovvvd9g/output.obj -pipe -c
> > > > -D_FILE_OFFSET_BITS=64 -O0 -std=c11
> > > >
> > > > Code:
> > > > #include <infiniband/mlx4dv.h>
> > > > void bar(void) {
> > > > struct mlx4_wqe_lso_seg foo;
> > > > foo.mss_hdr_size;
> > > >
> > > > };
> > > > Compiler stdout:
> > > >
> > > > Compiler stderr:
> > > > In file included from /root/dpdk/build/meson-
> > private/tmp0ovvvd9g/testfile.c:1:
> > > > /usr/include/infiniband/mlx4dv.h:176:2: error: unknown type name 'off_t'
> > > > 176 | off_t uar_mmap_offset;
> > > > | ^~~~~
> > > >
> > > > Checking whether type "struct mlx4_wqe_lso_seg" has member
> > > > "mss_hdr_size" with dependencies libmlx4, libibverbs: NO
> > > >
> > > Thanks. I'll dig some more.
> >
> > I think the meson version may be the culprit here. In my meson log I don't
> > see the -std=c11 flag appended to the test compilation command.
> >
> > Let me downgrade my meson version and see if I can reproduce.
> >
> > /Bruce
>
> Hello,
>
> I see two other build failures.
>
> On Ubuntu 20.04 with clang 10 and rdma-core v47.0 (built from source), I see errors similar to these:
>
> drivers/common/mlx5/linux/mlx5_glue.h:58:6: error: redefinition of 'mlx5_ib_uapi_flow_action_packet_reformat_type'
> [..]
> drivers/common/mlx5/linux/mlx5_glue.h:59:6: error: redefinition of 'mlx5_ib_uapi_flow_table_type'
> [..]
> drivers/common/mlx5/linux/mlx5_glue.h:121:2: error: redefinition of enumerator 'MLX5DV_DR_ACTION_DEST_REFORMAT'
> [..]
>
I believe I have a fix for these. The checks for the various structure
members need the driver "cflags" passed as args to the check, as the
std=c11 means that some things like off_t type are no longer defined (off_t
is posix)
> On Ubuntu 20.04 while cross compiling for ppc64le with powerpc64le-linux-gnu-gcc 9.4, I see:
>
> [..]
> lib/acl/acl_run_altivec.h:44:16: error: two or more data types in declaration specifiers
> [..]
> lib/acl/acl_run_altivec.h:44:2: error: use of boolean types in AltiVec types is invalid
> [..]
> error: incompatible types when assigning to type '__vector unsigned char' {aka '__vector(16) unsigned char'} from type '__vector __bool int' {aka '__vector(4) __bool int'}
> [..]
> lib/acl/acl_run_altivec.h:66:4: error: invalid parameter combination for AltiVec intrinsic '__builtin_vec_sel'
> [..]
>
This I still need to investigate.
In the meantime, I'll do a new version to see if the Ubuntu 20.04 issues
with the mlx drivers goes away with my fix.
/Bruce
next prev parent reply other threads:[~2023-08-01 13:08 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-07-31 10:38 [PATCH] " Bruce Richardson
2023-07-31 10:51 ` Morten Brørup
2023-07-31 15:58 ` [PATCH v2] " Bruce Richardson
2023-07-31 16:24 ` Tyler Retzlaff
2023-07-31 16:42 ` Tyler Retzlaff
2023-07-31 16:58 ` [PATCH v3] " Bruce Richardson
2023-07-31 17:05 ` Tyler Retzlaff
2023-08-01 0:39 ` Patrick Robb
2023-08-01 9:20 ` Bruce Richardson
2023-08-01 10:19 ` Bruce Richardson
2023-08-01 10:35 ` David Marchand
2023-08-01 10:39 ` Bruce Richardson
2023-08-01 10:50 ` Bruce Richardson
2023-08-01 12:42 ` Ali Alnubani
2023-08-01 13:03 ` Bruce Richardson [this message]
2023-08-01 13:22 ` Bruce Richardson
2023-08-01 13:47 ` Ali Alnubani
2023-08-01 14:00 ` Bruce Richardson
2023-08-02 10:10 ` Bruce Richardson
2023-08-01 10:37 ` Thomas Monjalon
2023-08-01 14:00 ` Ali Alnubani
2023-08-01 13:15 ` [PATCH v4] " Bruce Richardson
2023-08-01 13:24 ` David Marchand
2023-08-01 13:29 ` Bruce Richardson
2023-08-01 13:34 ` David Marchand
2023-08-01 15:47 ` Ali Alnubani
2023-08-01 15:50 ` Bruce Richardson
2023-08-01 16:20 ` Tyler Retzlaff
2023-08-01 20:12 ` Patrick Robb
2023-08-02 6:32 ` David Marchand
2023-08-02 13:40 ` Patrick Robb
2023-08-03 9:21 ` David Marchand
2023-08-02 12:31 ` [PATCH v5] " Bruce Richardson
2023-08-02 12:35 ` Bruce Richardson
2023-08-03 12:38 ` Ali Alnubani
2023-08-03 13:36 ` David Marchand
2023-08-10 13:34 ` Thomas Monjalon
2023-08-10 14:48 ` Stephen Hemminger
2023-08-10 16:35 ` Bruce Richardson
2023-08-10 16:49 ` Thomas Monjalon
2023-08-10 17:02 ` Stephen Hemminger
2023-08-10 18:17 ` Morten Brørup
2023-08-10 22:34 ` Tyler Retzlaff
2023-08-11 8:52 ` Bruce Richardson
2023-08-11 10:12 ` Morten Brørup
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZMkCr7AYjhtE35kB@bricha3-MOBL.ger.corp.intel.com \
--to=bruce.richardson@intel.com \
--cc=alialnu@nvidia.com \
--cc=david.marchand@redhat.com \
--cc=dev@dpdk.org \
--cc=mb@smartsharesystems.com \
--cc=probb@iol.unh.edu \
--cc=roretzla@linux.microsoft.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).