From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH] net/vhost: Add function to retreive the 'vid' for a given port id Date: Wed, 14 Sep 2016 09:10:48 +0200 Message-ID: <1934917.EiaaJTRqAq@xps13> References: <1473774463-26966-1-git-send-email-ciara.loftus@intel.com> <28342659.xFrdpVFeBf@xps13> <20160914044329.GX23158@yliu-dev.sh.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev@dpdk.org To: Yuanhan Liu , Ciara Loftus Return-path: Received: from mail-wm0-f48.google.com (mail-wm0-f48.google.com [74.125.82.48]) by dpdk.org (Postfix) with ESMTP id 96D4B8D3B for ; Wed, 14 Sep 2016 09:10:50 +0200 (CEST) Received: by mail-wm0-f48.google.com with SMTP id i130so31842744wmf.0 for ; Wed, 14 Sep 2016 00:10:50 -0700 (PDT) In-Reply-To: <20160914044329.GX23158@yliu-dev.sh.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" 2016-09-14 12:43, Yuanhan Liu: > On Tue, Sep 13, 2016 at 05:10:09PM +0200, Thomas Monjalon wrote: > > 2016-09-13 14:47, Ciara Loftus: > > > In some cases when using the vHost PMD, certain vHost library functions > > > may still need to be accessed. One such example is the > > > rte_vhost_get_queue_num function which returns the number of virtqueues > > > reported by the guest - information which is not exposed by the PMD. > > > > > > This commit introduces a new rte_eth_vhost function that returns the > > > 'vid' associated with a given port id. This allows the PMD user to call > > > vHost library functions which require the 'vid' value. > > > > I think we should not add any API to the PMDs. > > In general, I agree with you. > > > Maybe you are looking for a generic API in ethdev. > > But maybe it's a bit hard to define a "right" generic API here. For this > case, the generic API I can think of could be: > > - an API to get queue num, like rte_eth_get_queue_enabled_num > I barely know NIC pmd drivers, but I doubt it's useful/meaningful for them. > > - an API to get a PMD driver private (or specific) data. > For vhost-pmd, it's vid. Again, I don't know what it could be for other nic > drivers. > > This one may be a better option here, because it expose a key field to > the application, vid, with which the application can invoke more vhost > APIs. And apparently, it's not feasible to try to define a generic API > for some (if not each) vhost APIs. There could be a similar need in other PMD. If we can get an opaque identifier of the device which is not the port id, we could call some specific functions of the driver not implemented in the generic ethdev API.