From: Ciara Power <ciara.po...@intel.com> When choosing a vector path to take, an extra condition must be satisfied to ensure the max SIMD bitwidth allows for the CPU enabled path.
Signed-off-by: Ciara Power <ciara.po...@intel.com> Acked-by: David Hunt <david.h...@intel.com> --- v4: Updated enum name. v3: Moved max SIMD bitwidth check to configure function with other vec support checks. --- lib/librte_distributor/rte_distributor.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/librte_distributor/rte_distributor.c b/lib/librte_distributor/rte_distributor.c index ef34facba6..07e385a259 100644 --- a/lib/librte_distributor/rte_distributor.c +++ b/lib/librte_distributor/rte_distributor.c @@ -14,6 +14,7 @@ #include <rte_eal_memconfig.h> #include <rte_pause.h> #include <rte_tailq.h> +#include <rte_vect.h> #include "rte_distributor.h" #include "rte_distributor_single.h" @@ -762,7 +763,8 @@ rte_distributor_create(const char *name, d->dist_match_fn = RTE_DIST_MATCH_SCALAR; #if defined(RTE_ARCH_X86) - d->dist_match_fn = RTE_DIST_MATCH_VECTOR; + if (rte_vect_get_max_simd_bitwidth() >= RTE_VECT_SIMD_128) + d->dist_match_fn = RTE_DIST_MATCH_VECTOR; #endif /* -- 2.23.0