[dpdk-dev] [PATCH v2 6/6] net/ice: switch to Rx flexible descriptor in AVX path

Wang, Haiyue haiyue.wang at intel.com
Fri Aug 30 03:05:36 CEST 2019


> -----Original Message-----
> From: Zhang, Qi Z
> Sent: Friday, August 30, 2019 07:32
> To: Rong, Leyi <leyi.rong at intel.com>; Ye, Xiaolong <xiaolong.ye at intel.com>; Wang, Haiyue
> <haiyue.wang at intel.com>; Lu, Wenzhuo <wenzhuo.lu at intel.com>
> Cc: dev at dpdk.org
> Subject: RE: [PATCH v2 6/6] net/ice: switch to Rx flexible descriptor in AVX path
> 
> 
> 
> > -----Original Message-----
> > From: Rong, Leyi
> > Sent: Thursday, August 29, 2019 4:05 PM
> > To: Zhang, Qi Z <qi.z.zhang at intel.com>; Ye, Xiaolong
> > <xiaolong.ye at intel.com>; Wang, Haiyue <haiyue.wang at intel.com>; Lu,
> > Wenzhuo <wenzhuo.lu at intel.com>
> > Cc: dev at dpdk.org; Rong, Leyi <leyi.rong at intel.com>
> > Subject: [PATCH v2 6/6] net/ice: switch to Rx flexible descriptor in AVX path
> >
> > Switch to Rx flexible descriptor format instead of legacy descriptor format.
> >
> > Signed-off-by: Leyi Rong <leyi.rong at intel.com>
> > ---
> >  drivers/net/ice/ice_rxtx_vec_avx2.c | 232 ++++++++++++++--------------
> >  1 file changed, 118 insertions(+), 114 deletions(-)
> >
> > diff --git a/drivers/net/ice/ice_rxtx_vec_avx2.c
> > b/drivers/net/ice/ice_rxtx_vec_avx2.c
> > index 5ce29c2a2..158f17d80 100644
> > --- a/drivers/net/ice/ice_rxtx_vec_avx2.c
> > +++ b/drivers/net/ice/ice_rxtx_vec_avx2.c
> > @@ -15,10 +15,10 @@ ice_rxq_rearm(struct ice_rx_queue *rxq)  {
> >  	int i;
> >  	uint16_t rx_id;
> > -	volatile union ice_rx_desc *rxdp;
> > +	volatile union ice_rx_flex_desc *rxdp;
> >  	struct ice_rx_entry *rxep = &rxq->sw_ring[rxq->rxrearm_start];
> >
> > -	rxdp = rxq->rx_ring + rxq->rxrearm_start;
> > +	rxdp = (union ice_rx_flex_desc *)rxq->rx_ring + rxq->rxrearm_start;
> 
> Since after this patch, all data paths (normal, sse, avx2) are moved to flex desc,
> Ice_rx_desc is not used anymore, so can replace all of them with ice_rx_flex_desc,
> then above convention can be avoid.
> 

I think we can submit another minimal patch set to clean up ice_rx_desc
and fix this kind of convention. Since for developing in parallel, Reyi
and I have to use this kind of convention. :)

> <.......>
> 
> >  		 * take the two sets of status bits and merge to one @@ -450,20
> 
> >
> >  		/* merge flags */
> >  		const __m256i mbuf_flags = _mm256_or_si256(l3_l4_flags,
> > --
> > 2.17.1



More information about the dev mailing list