[dpdk-dev] [PATCH 3/3] net/i40e: fix inadvertent override of vector RX allowance

Maxime Coquelin maxime.coquelin at redhat.com
Thu May 16 10:17:59 CEST 2019



On 5/16/19 6:28 AM, Mesut Ali Ergin wrote:
> When i40e_rx_vec_dev_conf_condition_check_default() determines whether
> vector receive functions would be allowed during initialization phase,
> it should honor previously recorded disallowance during configuration
> phase, and not override simply because it is for the first queue.
> 
> Signed-off-by: Mesut Ali Ergin <mesut.a.ergin at intel.com>
> ---
>   drivers/net/i40e/i40e_rxtx_vec_common.h | 4 ++++
>   1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/net/i40e/i40e_rxtx_vec_common.h b/drivers/net/i40e/i40e_rxtx_vec_common.h
> index 0e6ffa0..f30cab4 100644
> --- a/drivers/net/i40e/i40e_rxtx_vec_common.h
> +++ b/drivers/net/i40e/i40e_rxtx_vec_common.h
> @@ -212,6 +212,10 @@ i40e_rx_vec_dev_conf_condition_check_default(struct rte_eth_dev *dev)
>   	if (rxmode->offloads & DEV_RX_OFFLOAD_VLAN_EXTEND)
>   		return -1;
>   
> +	/* Should not override if vector was already disallowed */
> +	if (!ad->rx_vec_allowed)
> +	return -1;

nit: wrong indentation.

> +
>   	/**
>   	 * Vector mode is allowed only when number of Rx queue
>   	 * descriptor is power of 2.
> 


More information about the dev mailing list