eal/arm: enable FreeBSD build

Message ID 20210604054851.425452-1-ruifeng.wang@arm.com (mailing list archive)
State Superseded, archived
Delegated to: David Marchand
Headers
Series eal/arm: enable FreeBSD build |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK
ci/iol-intel-Functional success Functional Testing PASS
ci/intel-Testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-abi-testing warning Testing issues
ci/iol-testing success Testing PASS

Commit Message

Ruifeng Wang June 4, 2021, 5:48 a.m. UTC
  Build on FreeBSD on aarch64 failed with error:
lib/eal/arm/rte_cpuflags.c:86:9: error: unknown type name 'Elf64_auxv_t'

The data type is used by OS Linux auxiliary vector read, and not used by
arch specific cpu flag API implementations. Hence remove it from Arm file.

Reported-by: James Grant <j.grant@qub.ac.uk>
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
---
 lib/eal/arm/rte_cpuflags.c | 2 --
 1 file changed, 2 deletions(-)
  

Comments

James Grant June 4, 2021, 9:32 a.m. UTC | #1
Hi Everyone,

Thanks for the help . I was able to build DPDK using this patch on a physical machine.

Best regards,
James Grant 

Senior Embedded Software Engineer | CSIT | QUB.

-----Original Message-----
From: Ruifeng Wang <ruifeng.wang@arm.com> 
Sent: 04 June 2021 06:49
To: viktorin@rehivetech.com; jerinj@marvell.com; bruce.richardson@intel.com
Cc: dev@dpdk.org; nd@arm.com; James Grant <J.Grant@qub.ac.uk>; david.marchand@redhat.com; thomas@monjalon.net; Ruifeng Wang <ruifeng.wang@arm.com>; James Grant <J.Grant@qub.ac.uk>; Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
Subject: [PATCH] eal/arm: enable FreeBSD build

This message is from an external sender. Please take care when responding, clicking links or opening attachments.

Build on FreeBSD on aarch64 failed with error:
lib/eal/arm/rte_cpuflags.c:86:9: error: unknown type name 'Elf64_auxv_t'

The data type is used by OS Linux auxiliary vector read, and not used by arch specific cpu flag API implementations. Hence remove it from Arm file.

Reported-by: James Grant <j.grant@qub.ac.uk>
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
---
 lib/eal/arm/rte_cpuflags.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/lib/eal/arm/rte_cpuflags.c b/lib/eal/arm/rte_cpuflags.c index 845770f1e5..d84c9fc09f 100644
--- a/lib/eal/arm/rte_cpuflags.c
+++ b/lib/eal/arm/rte_cpuflags.c
@@ -48,7 +48,6 @@ struct feature_entry {

 #ifdef RTE_ARCH_ARMv7
 #define PLATFORM_STR "v7l"
-typedef Elf32_auxv_t _Elfx_auxv_t;

 const struct feature_entry rte_cpu_feature_table[] = {
        FEAT_DEF(SWP,       REG_HWCAP,    0)
@@ -83,7 +82,6 @@ const struct feature_entry rte_cpu_feature_table[] = {

 #elif defined RTE_ARCH_ARM64
 #define PLATFORM_STR "aarch64"
-typedef Elf64_auxv_t _Elfx_auxv_t;

 const struct feature_entry rte_cpu_feature_table[] = {
        FEAT_DEF(FP,            REG_HWCAP,    0)
--
2.25.1
  
David Marchand June 11, 2021, 8:58 a.m. UTC | #2
On Fri, Jun 4, 2021 at 7:49 AM Ruifeng Wang <ruifeng.wang@arm.com> wrote:
>
> Build on FreeBSD on aarch64 failed with error:
> lib/eal/arm/rte_cpuflags.c:86:9: error: unknown type name 'Elf64_auxv_t'
>
> The data type is used by OS Linux auxiliary vector read, and not used by
> arch specific cpu flag API implementations. Hence remove it from Arm file.
>
> Reported-by: James Grant <j.grant@qub.ac.uk>
> Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
> Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>

This never worked, so this patch counts as enabling a new supported OS/arch.

If we want FreeBSD support on ARM, we will need non regression tests in some CI.
A release notes update is also needed.
  
Ruifeng Wang June 11, 2021, 10:49 a.m. UTC | #3
> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Friday, June 11, 2021 4:59 PM
> To: Ruifeng Wang <Ruifeng.Wang@arm.com>
> Cc: Jan Viktorin <viktorin@rehivetech.com>; jerinj@marvell.com; Bruce
> Richardson <bruce.richardson@intel.com>; dev <dev@dpdk.org>; nd
> <nd@arm.com>; J.Grant@qub.ac.uk; thomas@monjalon.net; Honnappa
> Nagarahalli <Honnappa.Nagarahalli@arm.com>
> Subject: Re: [PATCH] eal/arm: enable FreeBSD build
> 
> On Fri, Jun 4, 2021 at 7:49 AM Ruifeng Wang <ruifeng.wang@arm.com>
> wrote:
> >
> > Build on FreeBSD on aarch64 failed with error:
> > lib/eal/arm/rte_cpuflags.c:86:9: error: unknown type name 'Elf64_auxv_t'
> >
> > The data type is used by OS Linux auxiliary vector read, and not used
> > by arch specific cpu flag API implementations. Hence remove it from Arm
> file.
> >
> > Reported-by: James Grant <j.grant@qub.ac.uk>
> > Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
> > Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
> 
> This never worked, so this patch counts as enabling a new supported OS/arch.
> 
> If we want FreeBSD support on ARM, we will need non regression tests in
> some CI.
Currently no plan to claim FreeBSD support on Arm.
I'll update commit message to treat it as removal of useless code.

> A release notes update is also needed.
> 
> 
> --
> David Marchand
  

Patch

diff --git a/lib/eal/arm/rte_cpuflags.c b/lib/eal/arm/rte_cpuflags.c
index 845770f1e5..d84c9fc09f 100644
--- a/lib/eal/arm/rte_cpuflags.c
+++ b/lib/eal/arm/rte_cpuflags.c
@@ -48,7 +48,6 @@  struct feature_entry {
 
 #ifdef RTE_ARCH_ARMv7
 #define PLATFORM_STR "v7l"
-typedef Elf32_auxv_t _Elfx_auxv_t;
 
 const struct feature_entry rte_cpu_feature_table[] = {
 	FEAT_DEF(SWP,       REG_HWCAP,    0)
@@ -83,7 +82,6 @@  const struct feature_entry rte_cpu_feature_table[] = {
 
 #elif defined RTE_ARCH_ARM64
 #define PLATFORM_STR "aarch64"
-typedef Elf64_auxv_t _Elfx_auxv_t;
 
 const struct feature_entry rte_cpu_feature_table[] = {
 	FEAT_DEF(FP,		REG_HWCAP,    0)