From mboxrd@z Thu Jan 1 00:00:00 1970 From: Panu Matilainen Subject: Re: [PATCH 1/3] pmd_ring: remove deprecated functions Date: Wed, 17 Jun 2015 10:29:03 +0300 Message-ID: <558121BF.4010706@redhat.com> References: <1434387073-16951-1-git-send-email-stephen@networkplumber.org> <20150616135216.GA9780@bricha3-MOBL3> <20150616160512.03873f22@urahara> <2d83a4d8845f4daa90f0ccafbed918e3@BRMWP-EXMB11.corp.brocade.com> <20150616173903.0d7c767c@urahara> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: "dev@dpdk.org" , Stephen Hemminger To: Stephen Hemminger , Thomas Monjalon Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id BD878C3DE for ; Wed, 17 Jun 2015 09:29:16 +0200 (CEST) In-Reply-To: <20150616173903.0d7c767c@urahara> 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" On 06/17/2015 03:39 AM, Stephen Hemminger wrote: > On Tue, 16 Jun 2015 23:37:32 +0000 > Thomas Monjalon wrote: > >> 2015-06-16 16:05, Stephen Hemminger: >>> On Tue, 16 Jun 2015 14:52:16 +0100 >>> Bruce Richardson wrote: >>> >>>> On Mon, Jun 15, 2015 at 09:51:11AM -0700, Stephen Hemminger wrote: >>>>> From: Stephen Hemminger >>>>> >>>>> These were deprecated in 2.0 so remove them from 2.1 >>>>> >>>>> Signed-off-by: Stephen Hemminger >>>>> --- >>>>> drivers/net/ring/rte_eth_ring.c | 55 ------------------------------- >>>>> drivers/net/ring/rte_eth_ring_version.map | 4 +-- >>>>> 2 files changed, 1 insertion(+), 58 deletions(-) >>>>> >>>> [..snip..] >>>>> diff --git a/drivers/net/ring/rte_eth_ring_version.map b/drivers/net/ring/rte_eth_ring_version.map >>>>> index 8ad107d..5ee55d9 100644 >>>>> --- a/drivers/net/ring/rte_eth_ring_version.map >>>>> +++ b/drivers/net/ring/rte_eth_ring_version.map >>>>> @@ -1,9 +1,7 @@ >>>>> -DPDK_2.0 { >>>>> +DPDK_2.1 { >>>>> global: >>>>> >>>>> rte_eth_from_rings; >>>>> - rte_eth_ring_pair_attach; >>>>> - rte_eth_ring_pair_create; >>>>> >>>>> local: *; >>>>> }; >>>> >>>> [ABI newbie question] Is this how deprecating a fn is done? We no longer have any DPDK_2.0 >>>> version listings in the .map file? >>> >>> Notice the version # changed as well, so linker will generate a new version. >>> The function was marked deprecated in last version. >> >> What happens if you load the 2.1 lib with an app built for 2.0? >> Shouldn't we keep the DPDK_2.0 block? > > What happens is that build process makes a new version of DPDK package > with a new version number. This version can co-exist on same system with > old library (depends on library packaging). > Old library will have old functions, and old application will > use old library. New applications will be have new so version and get the > new library. > > http://unix.stackexchange.com/questions/475/how-do-so-shared-object-numbers-work > > If we didn't do this, nothing could ever really be removed! Yes, soname bump is required when symbols are removed. However that doesn't change the version the remaining symbols were introduced, eg rte_eth_from_rings() in this case, so AIUI you should leave the DPDK_2.0 {} block version alone. If new symbols get added in 2.1 then a new DPDK_2.1 block needs to be added for those. - Panu -