From mboxrd@z Thu Jan 1 00:00:00 1970 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) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 13 Feb 2017 09:36:22 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.35,156,1484035200"; d="scan'208";a="1126026833" Received: from fyigit-mobl1.ger.corp.intel.com (HELO [10.237.220.137]) ([10.237.220.137]) by fmsmga002.fm.intel.com with ESMTP; 13 Feb 2017 09:36:20 -0800 To: "Dumitrescu, Cristian" , Thomas Monjalon References: <3EB4FA525960D640B5BDFFD6A3D891265274BEE4@IRSMSX108.ger.corp.intel.com> <1593922.H4Bo57569h@xps13> <3EB4FA525960D640B5BDFFD6A3D891265274C023@IRSMSX108.ger.corp.intel.com> Cc: "dev@dpdk.org" , "Richardson, Bruce" , "Wiles, Keith" From: Ferruh Yigit Message-ID: <894e4d0b-9541-c374-eabb-a1e0320e7347@intel.com> Date: Mon, 13 Feb 2017 17:36:20 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <3EB4FA525960D640B5BDFFD6A3D891265274C023@IRSMSX108.ger.corp.intel.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] doc: deprecation notice for ethdev ops? X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Feb 2017 17:36:23 -0000 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. >>> >>> >