28/01/2021 21:35, Dmitry Kozlyuk:
> On Tue, 26 Jan 2021 16:51:19 +0000, Ferruh Yigit wrote:
> > On 1/26/2021 4:48 PM, Thomas Monjalon wrote:
> > > 26/01/2021 17:39, Ferruh Yigit:  
> > >> On 1/26/2021 4:22 PM, Thomas Monjalon wrote:  
> > >>> 26/01/2021 17:17, Rong, Leyi:  
> > >>>>>> On 1/20/2021 11:21 PM, Ferruh Yigit wrote:
> > >>>>>>
> > >>>>>> And for the mingw, I have same result with Ali, I can reproduce with 
> > >>>>>> (Fedora  
> > >>>>> MinGW 9.2.1-6.fc32).  
> > >>>>>>
> > >>>>>> But different from the CI, I am getting the error [1] for all 
> > >>>>>> following files:
> > >>>>>> rte_random.c
> > >>>>>> i40e_rxtx_vec_sse.c
> > >>>>>> i40e_rxtx_vec_avx512.c
> > >>>>>> i40e_rxtx_vec_avx2.c
> > >>>>>> rte_ethdev.c  
> > >>> [...]  
> > >>>> Send patch https://patchwork.dpdk.org/patch/87349/ to disable avx512 
> > >>>> on windows as the workaround.
> > >>>> Pallavi also tested with this patch, and passed the mingw and clang 
> > >>>> build. Will try to see if has better way to fix.  
> > >>>
> > >>> Ferruh mentioned errors with other files outside of i40e.
> > >>>  
> > >>
> > >> The patch globally disables the avx512 for windows cross build, not just 
> > >> for
> > >> i40e, so I confirm it fixes the build errors in my environment.
> > >>
> > >> But disabling avx512 like this is not best option.  
> > > 
> > > Some may argue that AVX512 is not the best option ;)
> > >   
> > 
> > flame war mode activated.
> 
> I found the following fix working:
> 
> --- a/drivers/net/i40e/meson.build
> +++ b/drivers/net/i40e/meson.build
> @@ -60,6 +60,9 @@ if arch_subdir == 'x86'
>               if cc.has_argument('-march=skylake-avx512')
>                       avx512_args += '-march=skylake-avx512'
>               endif
> +             if is_windows and cc.get_id() == 'gcc'
> +                     avx512_args += '-fno-asynchronous-unwind-tables'
> +             endif
>               i40e_avx512_lib = static_library('i40e_avx512_lib',
>                               'i40e_rxtx_vec_avx512.c',
>                               dependencies: [static_rte_ethdev,
> 
> It's admittedly from StackOverflow, but after reading about
> -fno-asynchronous-unwind-tables I see no harm disabling it, at least for just
> one file.

Thanks, it will require some tests and approvals.
For now, I take the patch proposing a simple disabling of AVX512 with MinGW.


Reply via email to