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.r...@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;