From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [143.182.124.21]) by dpdk.org (Postfix) with ESMTP id 75906307 for ; Fri, 11 Apr 2014 22:07:01 +0200 (CEST) Received: from azsmga001.ch.intel.com ([10.2.17.19]) by azsmga101.ch.intel.com with ESMTP; 11 Apr 2014 13:08:13 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.97,843,1389772800"; d="scan'208";a="417951187" Received: from irsmsx104.ger.corp.intel.com ([163.33.3.159]) by azsmga001.ch.intel.com with ESMTP; 11 Apr 2014 13:08:11 -0700 Received: from irsmsx103.ger.corp.intel.com ([169.254.3.172]) by IRSMSX104.ger.corp.intel.com ([169.254.5.224]) with mapi id 14.03.0123.003; Fri, 11 Apr 2014 21:08:11 +0100 From: "Richardson, Bruce" To: Neil Horman , Thomas Monjalon Thread-Topic: [dpdk-dev] [PATCH v2 07/11 1/2] vdev: new registration API Thread-Index: AQHPVVjuiJJwaskozEGIu87RImbFLZsMK/eAgAAnzQCAACwrgIAAB9sAgAAYPgCAADHjUA== Date: Fri, 11 Apr 2014 20:08:10 +0000 Message-ID: <59AF69C657FD0841A61C55336867B5B01A9FC02F@IRSMSX103.ger.corp.intel.com> References: <1460632.jOzC6OEr8u@xps13> <8367341.P2CbmhJR7D@xps13> <20140411155000.GD911@hmsreliant.think-freely.org> <4074308.XK7oTvuRSP@xps13> <20140411174454.GE911@hmsreliant.think-freely.org> In-Reply-To: <20140411174454.GE911@hmsreliant.think-freely.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.181] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH v2 07/11 1/2] vdev: new registration API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Apr 2014 20:07:02 -0000 > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Neil Horman > Sent: Friday, April 11, 2014 6:45 PM > To: Thomas Monjalon > Cc: dev@dpdk.org > Subject: Re: [dpdk-dev] [PATCH v2 07/11 1/2] vdev: new registration API >=20 > On Fri, Apr 11, 2014 at 06:18:08PM +0200, Thomas Monjalon wrote: > > 2014-04-11 11:50, Neil Horman: > > > > It seems that your patch is not removing > > rte_eth_ring_pair_create/rte_eth_ring_pair_attach so I'm not sure you > > can dynamically change the PMD in this case. > > > Ew, I had missed those calls. Yes, those should be encapsulated as some = driver > ops or some such. I'll look at that when I rebase. Regardless however, = I didn't > mean to state that pmds could be switched while running, only that the pm= d to > use could be specified at run time. Though, you're correct, pmd_ring doe= sn't > seem to hold in line with the other pmds in their isolation. >=20 The ring PMD is probably best treated separately from the other PMDs as it'= s not really a device poll-mode driver. Instead, it's a general library tha= t presents an API to make a ring, or set of rings, appear as a poll-mode dr= iver ethdev. The EAL command to have one created at startup time was just a= n addon after-the-fact in case someone might find it useful :-). However, i= t's primary purpose was to allow applications to be written which could use= physical NICs or rings interchangeably. For example, an app with multiple = stages in a pipeline, where each stage just reads from an ethdev without ca= ring if it's actually reading from a port or from packets sent from another= lcore/function etc. Another example might be where an application wishes t= o sometimes loop packets back to itself, in this case it uses the C API to = create an additional ring ethdev which it uses as output port for any packe= ts it wants looped back - no special handling needed, everything is an ethd= ev to it on which it calls rx_burst or tx_burst. It's also likely that in f= uture we will develop other libraries which wish to present their functiona= lity via rx_burst/tx_burst functions i.e. as an ethdev. Regards, /Bruce