From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <pmatilai@redhat.com> Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id BD878C3DE for <dev@dpdk.org>; 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 <pmatilai@redhat.com> 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 <stephen@networkplumber.org>, Thomas Monjalon <thomas.monjalon@6wind.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> 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" <dev@dpdk.org>, Stephen Hemminger <shemming@Brocade.com> 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 <dev.dpdk.org> List-Unsubscribe: <http://dpdk.org/ml/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://dpdk.org/ml/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <http://dpdk.org/ml/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=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 <thomas.monjalon@6wind.com> wrote: > >> 2015-06-16 16:05, Stephen Hemminger: >>> On Tue, 16 Jun 2015 14:52:16 +0100 >>> Bruce Richardson <bruce.richardson@intel.com> wrote: >>> >>>> On Mon, Jun 15, 2015 at 09:51:11AM -0700, Stephen Hemminger wrote: >>>>> From: Stephen Hemminger <shemming@brocade.com> >>>>> >>>>> These were deprecated in 2.0 so remove them from 2.1 >>>>> >>>>> Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> >>>>> --- >>>>> 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 -