Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- commit d0ce87e41cdc9094310b05d7f00c1a350cc95673 (tag: t_fail, refs/bisect/bad)
- Author: Timothy McDaniel <[email protected]>
- Date: Mon Jun 13 15:39:11 2022 -0500
- event/dlb2: support single 512B write of 4 QEs
- On Xeon, 512b accesses are available, so movdir64 instruction is able to
- perform 512b read and write to DLB producer port. In order for movdir64
- to be able to pull its data from store buffers (store-buffer-forwarding)
- (before actual write), data should be in single 512b write format.
- This commit add change when code is built for Xeon with 512b AVX support
- to make single 512b write of all 4 QEs instead of 4x64b writes.
- Signed-off-by: Timothy McDaniel <[email protected]>
- Acked-by: Kent Wires <[email protected]>
- Following fixes meson, with command `meson -Dc_args='-Werror' build` ::
- diff --git a/drivers/event/dlb2/meson.build b/drivers/event/dlb2/meson.build
- index 20ef159ab327..c231df83b1a7 100644
- --- a/drivers/event/dlb2/meson.build
- +++ b/drivers/event/dlb2/meson.build
- @@ -23,7 +23,7 @@ sources = files(
- # we are building 64-bit binary (checked above) AND binutils
- # can generate proper code
- -if binutils_ok
- +#if binutils_ok
- # compile AVX512 version if either:
- # a. we have AVX512VL supported in minimum instruction set
- @@ -37,30 +37,30 @@ if binutils_ok
- # linked into main lib.
- # check if all required flags already enabled (variant a).
- - dlb2_avx512_on = false
- - if cc.get_define(f, args: machine_args) == '__AVX512VL__'
- - dlb2_avx512_on = true
- - endif
- +# dlb2_avx512_on = false
- +# if cc.get_define(f, args: machine_args) == '__AVX512VL__'
- +# dlb2_avx512_on = true
- +# endif
- - if dlb2_avx512_on == true
- +# if dlb2_avx512_on == true
- - sources += files('dlb2_avx512.c')
- - cflags += '-DCC_AVX512_SUPPORT'
- +# sources += files('dlb2_avx512.c')
- +# cflags += '-DCC_AVX512_SUPPORT'
- - elif cc.has_multi_arguments('-mavx512vl')
- +# elif cc.has_multi_arguments('-mavx512vl')
- - cflags += '-DCC_AVX512_SUPPORT'
- - avx512_tmplib = static_library('avx512_tmp',
- - 'dlb2_avx512.c',
- - dependencies: [static_rte_eal, static_rte_eventdev],
- - c_args: cflags + ['-mavx512vl'])
- - objs += avx512_tmplib.extract_objects('dlb2_avx512.c')
- - else
- +# cflags += '-DCC_AVX512_SUPPORT'
- +# avx512_tmplib = static_library('avx512_tmp',
- +# 'dlb2_avx512.c',
- +# dependencies: [static_rte_eal, static_rte_eventdev],
- +# c_args: cflags + ['-mavx512vl'])
- +# objs += avx512_tmplib.extract_objects('dlb2_avx512.c')
- +# else
- +# sources += files('dlb2_sse.c')
- +# endif
- +#else
- sources += files('dlb2_sse.c')
- - endif
- -else
- - sources += files('dlb2_sse.c')
- -endif
- +#endif
- headers = files('rte_pmd_dlb2.h')
Advertisement
Add Comment
Please, Sign In to add comment