From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruce Richardson Subject: Re: [PATCH 06/14] fm10k: add Vector RX function Date: Tue, 29 Sep 2015 15:22:47 +0100 Message-ID: <20150929142246.GC6748@bricha3-MOBL3> References: <1443531824-22767-1-git-send-email-jing.d.chen@intel.com> <1443531824-22767-7-git-send-email-jing.d.chen@intel.com> <2601191342CEEE43887BDE71AB97725836AA15D5@irsmsx105.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: "dev@dpdk.org" To: "Ananyev, Konstantin" Return-path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 31ADDA6A for ; Tue, 29 Sep 2015 16:22:58 +0200 (CEST) Content-Disposition: inline In-Reply-To: <2601191342CEEE43887BDE71AB97725836AA15D5@irsmsx105.ger.corp.intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Tue, Sep 29, 2015 at 01:14:26PM +0000, Ananyev, Konstantin wrote: > > > > -----Original Message----- > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Chen Jing D(Mark) > > Sent: Tuesday, September 29, 2015 2:04 PM > > To: dev@dpdk.org > > Subject: [dpdk-dev] [PATCH 06/14] fm10k: add Vector RX function > > > > From: "Chen Jing D(Mark)" > > > > Add func fm10k_recv_raw_pkts_vec to parse raw packets, in which > > includes possible chained packets. > > Add func fm10k_recv_pkts_vec to receive single mbuf packet. > > > > Signed-off-by: Chen Jing D(Mark) > > --- > > drivers/net/fm10k/fm10k.h | 1 + > > drivers/net/fm10k/fm10k_rxtx_vec.c | 213 ++++++++++++++++++++++++++++++++++++ > > 2 files changed, 214 insertions(+), 0 deletions(-) > > > > diff --git a/drivers/net/fm10k/fm10k.h b/drivers/net/fm10k/fm10k.h > > index d924cae..285254f 100644 > > --- a/drivers/net/fm10k/fm10k.h > > +++ b/drivers/net/fm10k/fm10k.h > > @@ -327,4 +327,5 @@ uint16_t fm10k_xmit_pkts(void *tx_queue, struct rte_mbuf **tx_pkts, > > uint16_t nb_pkts); > > > > int fm10k_rxq_vec_setup(struct fm10k_rx_queue *rxq); > > +uint16_t fm10k_recv_pkts_vec(void *, struct rte_mbuf **, uint16_t); > > #endif > > diff --git a/drivers/net/fm10k/fm10k_rxtx_vec.c b/drivers/net/fm10k/fm10k_rxtx_vec.c > > index 581a309..63b34b5 100644 > > --- a/drivers/net/fm10k/fm10k_rxtx_vec.c > > +++ b/drivers/net/fm10k/fm10k_rxtx_vec.c > > @@ -281,3 +281,216 @@ fm10k_rxq_rearm(struct fm10k_rx_queue *rxq) > > /* Update the tail pointer on the NIC */ > > FM10K_PCI_REG_WRITE(rxq->tail_ptr, rx_id); > > } > > + > > +/* > > + * vPMD receive routine, now only accept (nb_pkts == RTE_IXGBE_VPMD_RX_BURST) > > + * in one loop > > + * > > + * Notice: > > + * - nb_pkts < RTE_IXGBE_VPMD_RX_BURST, just return no packet Why this limitation? I believe this limitation has already been removed for ixgbe, so the same solution should be applicable here /Bruce