From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mohammad Abdul Awal Subject: Re: [DPDK 0/5] lib: add Port Representors Date: Wed, 3 Jan 2018 12:14:02 +0000 Message-ID: <1968374b-69bf-5abe-2901-7d0cb1a8b2f8@intel.com> References: <1510929733-7225-1-git-send-email-mohammad.abdul.awal@intel.com> <20171222144121.10041-1-remy.horton@intel.com> <20171222163704.GB1222@hmswarspite.think-freely.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org, Wenzhuo Lu , Jingjing Wu To: Neil Horman , Remy Horton Return-path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id EF8441B1D6 for ; Wed, 3 Jan 2018 13:14:04 +0100 (CET) In-Reply-To: <20171222163704.GB1222@hmswarspite.think-freely.org> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Neil, On 22/12/2017 16:37, Neil Horman wrote: > On Fri, Dec 22, 2017 at 02:41:16PM +0000, Remy Horton wrote: >> Port Representors provide a logical presentation in DPDK of VF (virtual >> function) ports for the purposes of control and monitoring. Each port >> representor device represents a single VF and is associated with it's >> parent physical function (PF) PMD which provides the back-end hooks for >> the representor device ops and defines the control domain to which that >> port belongs. This allows to use existing DPDK APIs to monitor and control >> the port without the need to create and maintain VF specific APIs. >> >> +-----------------------------+ +---------------+ +---------------+ >> | Control Plane | | Data Plane | | Data Plane | >> | Application | | Application | | Application | >> +-----------------------------+ +---------------+ +---------------+ >> | eth dev api | | eth dev api | | eth dev api | >> +-----------------------------+ +---------------+ +---------------+ >> +-------+ +-------+ +-------+ +---------------+ +---------------+ >> | PF0 | | Port | | Port | | VF0 PMD | | VF0 PMD | >> | PMD <--+ Rep 0 | | Rep 1 | +---------------+ +------+--------+ >> | | | PMD | | PMD | | >> +---+--^+ +-------+ +-+-----+ | >> | | | | | >> | +----------------+ | | >> | | | >> | | | >> +--------------------------------+ | >> | | HW (logical view) | | | >> | --+------+ +-------+ +---+---+ | | >> | | PF | | VF0 | | VF1 | | | >> | | | | | | +----------------------------+ >> | +--------+ +-------+ +-------+ | >> | +----------------------------+ | >> | | VEB | | >> | +----------------------------+ | >> | +--------+ | >> | | Port | | >> | | 0 | | >> | +--------+ | >> +--------------------------------+ >> > How does this mesh with the notion of port ownership that we've been discussing > in other threads? In that thread, we've been discussing the need for a single > execution context to have exclusive access to the hardware for the purposes of > configuration and data i/o, and for the application/execution context to be > responsible for co-ordination of any shared use of a device. In this feature > however, the notion of a Port Representor creates an alias to the same hardware > funciton (VF), where both aliases (in the control and data plan) have parallel > access to the hardware, in such a way that co-ordination between the two is > largely impossible (unless you want to make the data plane application explicity > aware of control plane actiivy). > > Neil I have just replied to your mail in other thread of V3 patch. Regards, Awal.