Ali Alnubani <[email protected]> writes: >> -----Original Message----- >> From: Aaron Conole <[email protected]> >> Sent: Wednesday, April 21, 2021 3:57 PM >> To: Ali Alnubani <[email protected]> >> Cc: NBU-Contact-Thomas Monjalon <[email protected]>; Cristian >> Dumitrescu <[email protected]>; [email protected] >> Subject: Re: [dpdk-dev] [PATCH 2/2] pipeline: autodetect endianness of >> action args >> >> Ali Alnubani <[email protected]> writes: >> >> > Hi, >> > >> >> -----Original Message----- >> >> From: dev <[email protected]> On Behalf Of Thomas Monjalon >> >> Sent: Tuesday, April 20, 2021 10:58 PM >> >> To: Cristian Dumitrescu <[email protected]> >> >> Cc: [email protected] >> >> Subject: Re: [dpdk-dev] [PATCH 2/2] pipeline: autodetect endianness of >> >> action args >> >> >> >> 12/04/2021 01:23, Cristian Dumitrescu: >> >> > Each table entry is made up of match fields and action data, with the >> >> > latter made up of the action ID and the action arguments. The approach >> >> > of having the user specify explicitly the endianness of the action >> >> > arguments is difficult to be picked up by P4 compilers, as the P4 >> >> > compiler is generally unaware about this aspect. >> >> > >> >> > This commit introduces the auto-detection of the endianness of the >> >> > action arguments by examining the endianness of the their destination: >> >> > network byte order (NBO) when they get copied to headers and host >> byte >> >> > order (HBO) when they get copied to packet meta-data or mailboxes. >> >> > >> >> > The endianness specification of each action argument as part of the >> >> > rule specification, e.g. H(...) and N(...) is removed from the rule >> >> > file and auto-detected based on their destination. The DMA instruction >> >> > scope is made internal, so mov instructions need to be used. The >> >> > pattern of transferring complete headers from table entry action args >> >> > to headers is detected, and the associated set of mov instructions >> >> > plus header validate is internally detected and replaced with the >> >> > internal-only DMA instruction to preserve performance. >> >> > >> >> > Signed-off-by: Cristian Dumitrescu <[email protected]> >> >> >> >> Series applied, thanks >> >> >> >> >> > >> > I believe this patchset is causing the build failures in >> https://bugs.dpdk.org/show_bug.cgi?id=683. >> >> Where do you see those build errors? Compiler version, etc? For example: >> >> https://github.com/ovsrobot/dpdk/actions/runs/767327010 >> >> This build was successful after rerunning with the prerequisite patch >> applied to mainline. I am concerned why the CI didn't catch this. >> > > From the ticket: >> OS: CentOS 7.9.2009 >> gcc: 4.8.5 >> meson: 0.55.1 >> ninja-build: 1.10.2 > > The build errors don't reproduce in Ubuntu 18.04.
Thanks. > - Ali

