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

Zhang, Qi Z qi.z.zhang at intel.com
Fri Aug 30 03:06:49 CEST 2019



> -----Original Message-----
> From: Wang, Haiyue
> Sent: Friday, August 30, 2019 9:06 AM
> To: Zhang, Qi Z <qi.z.zhang at intel.com>; Rong, Leyi <leyi.rong at intel.com>;
> Ye, Xiaolong <xiaolong.ye 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: 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. :)

+1 
> 
> > <.......>
> >
> > >  		 * 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