From mboxrd@z Thu Jan 1 00:00:00 1970 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) Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (Postfix) with ESMTPS id 6FE282CD839; Wed, 17 Jun 2015 07:29:05 +0000 (UTC) Received: from localhost.localdomain (vpn1-5-32.ams2.redhat.com [10.36.5.32]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id t5H7T3n1024624; Wed, 17 Jun 2015 03:29:04 -0400 Message-ID: <558121BF.4010706@redhat.com> Date: Wed, 17 Jun 2015 10:29:03 +0300 From: Panu Matilainen User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Stephen Hemminger , Thomas Monjalon 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> In-Reply-To: <20150616173903.0d7c767c@urahara> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 Cc: "dev@dpdk.org" , Stephen Hemminger Subject: Re: [dpdk-dev] [PATCH 1/3] pmd_ring: remove deprecated functions 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: Wed, 17 Jun 2015 07:29:18 -0000 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 -