From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Hemminger Subject: Re: [RFC 1/7] net/af_xdp: new PMD driver Date: Wed, 28 Feb 2018 15:45:22 -0800 Message-ID: <20180228154522.2fa43379@xeon-e3> References: <20180227093306.23854-1-qi.z.zhang@intel.com> <20180227093306.23854-2-qi.z.zhang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org, magnus.karlsson@intei.com, bjorn.topel@intel.com To: Qi Zhang Return-path: Received: from mail-pf0-f195.google.com (mail-pf0-f195.google.com [209.85.192.195]) by dpdk.org (Postfix) with ESMTP id 989884C77 for ; Thu, 1 Mar 2018 00:45:25 +0100 (CET) Received: by mail-pf0-f195.google.com with SMTP id z10so1665516pfh.13 for ; Wed, 28 Feb 2018 15:45:25 -0800 (PST) In-Reply-To: <20180227093306.23854-2-qi.z.zhang@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Tue, 27 Feb 2018 17:33:00 +0800 Qi Zhang wrote: > + > +static uint16_t > +eth_af_xdp_rx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts) > +{ > + struct pmd_internals *internals = queue; > + struct xdp_queue *rxq = &internals->rx; > + struct rte_mbuf *mbuf; > + unsigned long dropped = 0; > + unsigned long rx_bytes = 0; > + uint16_t count = 0; > + > + nb_pkts = nb_pkts < ETH_AF_XDP_RX_BATCH_SIZE ? > + nb_pkts : ETH_AF_XDP_RX_BATCH_SIZE; > + Put declarations first. Why not iterate if nb_pkts is huge? > + struct xdp_desc descs[ETH_AF_XDP_RX_BATCH_SIZE]; > + void *indexes[ETH_AF_XDP_RX_BATCH_SIZE]; > + int rcvd, i; > + /* fill rx ring */ > + if (rxq->num_free >= ETH_AF_XDP_RX_BATCH_SIZE) { Blank line after declarations before code please.