From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCHv4 1/5] ethdev: add new API to retrieve RX/TX queue information Date: Fri, 24 Jul 2015 11:24:28 +0200 Message-ID: <2058063.jaPb6Gx79p@xps13> References: <1437589735-30041-1-git-send-email-konstantin.ananyev@intel.com> <1781257.Eo9CaUGVAh@xps13> <2601191342CEEE43887BDE71AB97725836A671DF@irsmsx105.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev@dpdk.org To: "Ananyev, Konstantin" Return-path: Received: from mail-wi0-f180.google.com (mail-wi0-f180.google.com [209.85.212.180]) by dpdk.org (Postfix) with ESMTP id 7F8B0C418 for ; Fri, 24 Jul 2015 11:25:43 +0200 (CEST) Received: by wibud3 with SMTP id ud3so19434257wib.0 for ; Fri, 24 Jul 2015 02:25:43 -0700 (PDT) In-Reply-To: <2601191342CEEE43887BDE71AB97725836A671DF@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" 2015-07-24 09:15, Ananyev, Konstantin: > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > > 2015-07-22 19:28, Konstantin Ananyev: > > > +struct rte_eth_rxq_info { > > > + struct rte_mempool *mp; /**< mempool used by that queue. */ > > > + struct rte_eth_rxconf conf; /**< queue config parameters. */ > > > + uint8_t scattered_rx; /**< scattered packets RX supported. */ > > > + uint16_t nb_desc; /**< configured number of RXDs. */ > > > > Shouldn't we move nb_desc in rte_eth_rxconf? > > So rte_eth_rx_queue_setup() would have less parameters. > > I thought about that too, but it seems more drawbacks then pluses with that idea: > 1. Right now it is possible to call rte_eth_rx_queue_setup(..., rx_conf=NULL, ...); > In that case rte_eth_rx_queue_setup()will use default for that device rx_conf. > If we'll move mempool into rxconf, will break that ability. > 2. A bit unclear what mempool should be returned as default_rxconf by rte_eth_dev_info_get(). > Should it be just NULL. I was only suggesting to move nb_desc, not mempool. In case rx_conf==NULL, the nb_desc should be the max allowed by the driver. By the way, we should allow nb_desc==0 as it is done in virtio. Users shouldn't have to care about queue parameters (including nb_desc) for a basic usage. > 3. ABI breakage and we (and all customers) will need to modify each and every RX setup/configure code. > > For me it just seems like too much hassle, without any clear advanatage. The advantage is to have a cleaner API. Seems important to me.