From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Hunt Subject: [PATCH 3/5] eal: fix compilation for armv8 64-bit Date: Thu, 29 Oct 2015 17:29:52 +0000 Message-ID: <1446139794-16071-4-git-send-email-david.hunt@intel.com> References: <1446139794-16071-1-git-send-email-david.hunt@intel.com> To: dev@dpdk.org Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 8F7458E74 for ; Thu, 29 Oct 2015 18:30:39 +0100 (CET) In-Reply-To: <1446139794-16071-1-git-send-email-david.hunt@intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Signed-off-by: David Hunt --- lib/librte_eal/common/include/arch/arm/rte_cpuflags.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/librte_eal/common/include/arch/arm/rte_cpuflags.h b/lib/librte_eal/common/include/arch/arm/rte_cpuflags.h index 7ce9d14..27d49c0 100644 --- a/lib/librte_eal/common/include/arch/arm/rte_cpuflags.h +++ b/lib/librte_eal/common/include/arch/arm/rte_cpuflags.h @@ -141,12 +141,21 @@ rte_cpu_get_features(__attribute__((unused)) uint32_t leaf, __attribute__((unused)) uint32_t subleaf, cpuid_registers_t out) { int auxv_fd; +#ifdef RTE_ARCH_64 + Elf64_auxv_t auxv; +#else Elf32_auxv_t auxv; +#endif auxv_fd = open("/proc/self/auxv", O_RDONLY); assert(auxv_fd); +#ifdef RTE_ARCH_64 + while (read(auxv_fd, &auxv, + sizeof(Elf64_auxv_t)) == sizeof(Elf64_auxv_t)) { +#else while (read(auxv_fd, &auxv, sizeof(Elf32_auxv_t)) == sizeof(Elf32_auxv_t)) { +#endif if (auxv.a_type == AT_HWCAP) out[REG_HWCAP] = auxv.a_un.a_val; else if (auxv.a_type == AT_HWCAP2) -- 1.9.1