[dpdk-dev] [PATCH 22/22] virtio: Use soft vlan strip in mergeable Rx path

Ouyang, Changchun changchun.ouyang at intel.com
Fri Jan 16 01:56:52 CET 2015



> -----Original Message-----
> From: Stephen Hemminger [mailto:stephen at networkplumber.org]
> Sent: Friday, January 16, 2015 12:56 AM
> To: Ouyang, Changchun
> Cc: dev at dpdk.org; Doherty, Declan; Cao, Waterman
> Subject: Re: [PATCH 22/22] virtio: Use soft vlan strip in mergeable Rx path
> 
> On Thu, 15 Jan 2015 13:15:30 +0800
> Ouyang Changchun <changchun.ouyang at intel.com> wrote:
> 
> > To keep the consistent logic with normal Rx path, the mergeable Rx
> > path also needs software vlan strip/decap if it is enabled.
> >
> > Signed-off-by: Changchun Ouyang <changchun.ouyang at intel.com>
> > ---
> >  lib/librte_pmd_virtio/virtio_rxtx.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> >
> > diff --git a/lib/librte_pmd_virtio/virtio_rxtx.c
> > b/lib/librte_pmd_virtio/virtio_rxtx.c
> > index 2529dc4..9090613 100644
> > --- a/lib/librte_pmd_virtio/virtio_rxtx.c
> > +++ b/lib/librte_pmd_virtio/virtio_rxtx.c
> > @@ -568,6 +568,7 @@ virtio_recv_mergeable_pkts(void *rx_queue,
> >  			uint16_t nb_pkts)
> >  {
> >  	struct virtqueue *rxvq = rx_queue;
> > +	struct virtio_hw *hw = rxvq->hw;
> >  	struct rte_mbuf *rxm, *new_mbuf;
> >  	uint16_t nb_used, num, nb_rx = 0;
> >  	uint32_t len[VIRTIO_MBUF_BURST_SZ];
> > @@ -674,6 +675,9 @@ virtio_recv_mergeable_pkts(void *rx_queue,
> >  			seg_res -= rcv_cnt;
> >  		}
> >
> > +		if (hw->vlan_strip)
> > +			rte_vlan_strip(rx_pkts[nb_rx]);
> > +
> >  		VIRTIO_DUMP_PACKET(rx_pkts[nb_rx],
> >  			rx_pkts[nb_rx]->data_len);
> >
> 
> If you resubmit, just combine this with earlier patch that does vlan strip

I think just keeping it as a separate a patch may be a good way.
Thanks
Changchun



More information about the dev mailing list