[dpdk-dev] [PATCH v5 04/11] net/iavf: flexible Rx descriptor support in AVX path

Ferruh Yigit ferruh.yigit at intel.com
Fri Apr 17 15:28:45 CEST 2020


On 4/16/2020 9:09 AM, Leyi Rong wrote:
> Support flexible Rx descriptor format in AVX
> path of iAVF PMD.
> 
> Signed-off-by: Leyi Rong <leyi.rong at intel.com>

<...>

> --- a/drivers/net/iavf/iavf_rxtx_vec_avx2.c
> +++ b/drivers/net/iavf/iavf_rxtx_vec_avx2.c
> @@ -11,14 +11,16 @@
>  #endif
>  
>  static inline void
> -iavf_rxq_rearm(struct iavf_rx_queue *rxq)
> +iavf_rxq_rearm(struct iavf_rx_queue *rxq, volatile union iavf_rx_desc *rxdp)
>  {
>  	int i;
>  	uint16_t rx_id;
> -	volatile union iavf_rx_desc *rxdp;
>  	struct rte_mbuf **rxp = &rxq->sw_ring[rxq->rxrearm_start];
>  
> -	rxdp = rxq->rx_ring + rxq->rxrearm_start;
> +	if (rxq->rxdid == IAVF_RXDID_COMMS_OVS_1) {
> +		volatile union iavf_rx_flex_desc *rxdp =
> +			(union iavf_rx_flex_desc *)rxdp;
> +	}

Hi Leyi,

This code is causing a build error in icc [1] but what this code exactly does?
It is creating a local version of the variable 'rxdp', which is confusing, but
that variable's scope is only if block, so it looks like this code really
doesn't do anything at all, am I missing something?

[1]
.../drivers/net/iavf/iavf_rxtx_vec_avx2.c(22): warning #592: variable "rxdp" is
used before its value is set
    (union iavf_rx_flex_desc *)rxdp;


More information about the dev mailing list