[dpdk-dev] [PATCH v2 4/6] eal/arm: fix 64-bit armv8 compilation of rte_cpuflags.h

Jan Viktorin viktorin at rehivetech.com
Fri Oct 30 13:46:40 CET 2015


Much better then the previous...

Reviewed-by: Jan Viktorin <viktorin at rehivetech.com>

On Fri, 30 Oct 2015 11:51:24 +0000
David Hunt <david.hunt at intel.com> wrote:

> Signed-off-by: David Hunt <david.hunt at intel.com>
> ---
>  lib/librte_eal/common/include/arch/arm/rte_cpuflags.h | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> 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..5c5fd6a 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,16 @@ 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);
>  	while (read(auxv_fd, &auxv,
> -		sizeof(Elf32_auxv_t)) == sizeof(Elf32_auxv_t)) {
> +		sizeof(auxv)) == sizeof(auxv)) {
>  		if (auxv.a_type == AT_HWCAP)
>  			out[REG_HWCAP] = auxv.a_un.a_val;
>  		else if (auxv.a_type == AT_HWCAP2)



-- 
   Jan Viktorin                  E-mail: Viktorin at RehiveTech.com
   System Architect              Web:    www.RehiveTech.com
   RehiveTech
   Brno, Czech Republic


More information about the dev mailing list