[dpdk-stable] [dpdk-dev] [PATCH v16 1/8] net/sfc: fix aarch32 build

Andrew Rybchenko andrew.rybchenko at oktetlabs.ru
Wed Apr 21 16:20:04 CEST 2021


On 4/21/21 5:08 PM, Juraj Linkeš wrote:
> 
> 
>> -----Original Message-----
>> From: Ruifeng Wang <Ruifeng.Wang at arm.com>
>> Sent: Wednesday, April 21, 2021 12:06 PM
>> To: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>; Juraj Linkeš
>> <juraj.linkes at pantheon.tech>; thomas at monjalon.net;
>> david.marchand at redhat.com; bruce.richardson at intel.com;
>> aconole at redhat.com; maicolgabriel at hotmail.com
>> Cc: dev at dpdk.org; arybchenko at solarflare.com; stable at dpdk.org; nd
>> <nd at arm.com>
>> Subject: RE: [dpdk-dev] [PATCH v16 1/8] net/sfc: fix aarch32 build
>>
>>> -----Original Message-----
>>> From: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>
>>> Sent: Wednesday, April 21, 2021 5:05 PM
>>> To: Juraj Linkeš <juraj.linkes at pantheon.tech>; thomas at monjalon.net;
>>> david.marchand at redhat.com; bruce.richardson at intel.com;
>>> aconole at redhat.com; maicolgabriel at hotmail.com
>>> Cc: dev at dpdk.org; Ruifeng Wang <Ruifeng.Wang at arm.com>;
>>> arybchenko at solarflare.com; stable at dpdk.org
>>> Subject: Re: [dpdk-dev] [PATCH v16 1/8] net/sfc: fix aarch32 build
>>>
>>> On 4/21/21 11:50 AM, Juraj Linkeš wrote:
>>>> From: Ruifeng Wang <ruifeng.wang at arm.com>
>>>>
>>>> The sfc PMD was enabled for aarch32 which is 32-bit mode but has
>>>> cpu_family set to aarch64.
>>>> As sfc support only 64-bit system, it should be disabled for aarch32.
>>>>
>>>> Updated meson file to disable sfc for aarch32 build.
>>>>
>>>> Fixes: 141d2870675a ("net/sfc: support aarch64 architecture")
>>>> Cc: arybchenko at solarflare.com
>>>> Cc: stable at dpdk.org
>>>>
>>>> Signed-off-by: Ruifeng Wang <ruifeng.wang at arm.com>
>>>> Acked-by: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>
>>>
>>> Withdraw my ack
>>>
>>>> ---
>>>>  drivers/common/sfc_efx/meson.build | 2 +-
>>>>  drivers/net/sfc/meson.build        | 2 +-
>>>>  2 files changed, 2 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/drivers/common/sfc_efx/meson.build
>>>> b/drivers/common/sfc_efx/meson.build
>>>> index 1ca9510733..db5a6a8b42 100644
>>>> --- a/drivers/common/sfc_efx/meson.build
>>>> +++ b/drivers/common/sfc_efx/meson.build
>>>> @@ -10,7 +10,7 @@ if is_windows
>>>>  	reason = 'not supported on Windows'
>>>>  endif
>>>>
>>>> -if (arch_subdir != 'x86' or not dpdk_conf.get('RTE_ARCH_64')) and
>>>> (arch_subdir != 'arm' or not
>>>> host_machine.cpu_family().startswith('aarch64'))
>>>> +if (arch_subdir != 'x86' or arch_subdir != 'arm') and (not
>>>> +dpdk_conf.get('RTE_ARCH_64'))
>>>
>>> Am I missing something or condition in parenthesis is always true? I
>>> think it
>>
> 
> Thanks for catching this.
> 
>> Oops, it should be an 'and' in the parenthesis.
>>
>>> should be:
>>>
>>> if arch_subdir != 'x86' or arch_subdir != 'arm' or not
>>> dpdk_conf.get('RTE_ARCH_64')
>>
>> I assume you meant to use 'and's.
>>
> 
> I believe the actual correct condition is:
> (arch_subdir != 'x86' and arch_subdir != 'arm') or (not dpdk_conf.get('RTE_ARCH_64'))
> 
> This should result in 'only supported on x86_64 and aarch64'.

Yes, many thanks.

Andrew.

> 
>>>
>>>>  	build = false
>>>>  	reason = 'only supported on x86_64 and aarch64'
>>>>  endif
>>>> diff --git a/drivers/net/sfc/meson.build
>>>> b/drivers/net/sfc/meson.build index 0c5cfb9058..0a96235e33 100644
>>>> --- a/drivers/net/sfc/meson.build
>>>> +++ b/drivers/net/sfc/meson.build
>>>> @@ -12,7 +12,7 @@ if is_windows
>>>>  	subdir_done()
>>>>  endif
>>>>
>>>> -if (arch_subdir != 'x86' or not dpdk_conf.get('RTE_ARCH_64')) and
>>>> (arch_subdir != 'arm' or not
>>>> host_machine.cpu_family().startswith('aarch64'))
>>>> +if (arch_subdir != 'x86' or arch_subdir != 'arm') and (not
>>>> +dpdk_conf.get('RTE_ARCH_64'))
>>>
>>> same here.
>>>
>>>>  	build = false
>>>>  	reason = 'only supported on x86_64 and aarch64'
>>>>  endif
>>>>
> 



More information about the stable mailing list