From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ferruh Yigit Subject: Re: doc: deprecation notice for ethdev ops? Date: Mon, 13 Feb 2017 17:36:20 +0000 Message-ID: <894e4d0b-9541-c374-eabb-a1e0320e7347@intel.com> References: <3EB4FA525960D640B5BDFFD6A3D891265274BEE4@IRSMSX108.ger.corp.intel.com> <1593922.H4Bo57569h@xps13> <3EB4FA525960D640B5BDFFD6A3D891265274C023@IRSMSX108.ger.corp.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Cc: "dev@dpdk.org" , "Richardson, Bruce" , "Wiles, Keith" To: "Dumitrescu, Cristian" , Thomas Monjalon Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 746B12C4B for ; Mon, 13 Feb 2017 18:36:23 +0100 (CET) In-Reply-To: <3EB4FA525960D640B5BDFFD6A3D891265274C023@IRSMSX108.ger.corp.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 2/13/2017 5:21 PM, Dumitrescu, Cristian wrote: > > >> -----Original Message----- >> From: Yigit, Ferruh >> Sent: Monday, February 13, 2017 4:46 PM >> To: Thomas Monjalon ; Dumitrescu, Cristian >> >> Cc: dev@dpdk.org; Richardson, Bruce ; Wiles, >> Keith >> Subject: Re: [dpdk-dev] doc: deprecation notice for ethdev ops? >> >> On 2/13/2017 4:09 PM, Thomas Monjalon wrote: >>> 2017-02-13 16:02, Dumitrescu, Cristian: >>>> Hi Thomas, >>>> >>>> When a new member (function pointer) is added to struct eth_dev_ops >> (as the last member), does it need to go through ABI chance process (e.g. >> chance notice one release before)? >>>> >>>> IMO the answer is no: struct eth_dev_ops is marked as internal and its >> instances are only accessed through pointers, so the rte_eth_devices array >> should not be impacted by the ops structure expanding at its end. Unless >> there is something that I am missing? >>> >>> You are right, it is an internal struct. >>> So no need of a deprecation notice. >> >> When dpdk compiled as dynamic library, application will load PMDs >> dynamically as plugin. >> Is this use case cause ABI compatibility issue? >> >> I think drivers <--> libraries interface can cause ABI breakages for >> dynamic library case, although not sure how common use case this is. >> > > Do you have a specific example that might cause an issue when adding a new function at the end of the ethdev ops structure? I cannot think of any, given that the ops structure is marked as internal and it is only accessed through pointers. Adding at the end of the struct is probably safe. > >> >>> >>> We must clearly separate API and internal code in ethdev. >>> >>>> My question is in the context of this patch under review for 17.5 release: >> http://www.dpdk.org/ml/archives/dev/2017-February/057367.html. >>> >>> I did not look at it yet. Will do after the release. >>> >>> >