From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f53.google.com (mail-wm0-f53.google.com [74.125.82.53]) by dpdk.org (Postfix) with ESMTP id AB51E8D38 for ; Mon, 23 Nov 2015 01:14:48 +0100 (CET) Received: by wmuu63 with SMTP id u63so35213137wmu.0 for ; Sun, 22 Nov 2015 16:14:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:organization:user-agent :in-reply-to:references:mime-version:content-transfer-encoding :content-type; bh=YE4KQAkawRceyRbHJDCbQ7iGvHpoPBSTwr0xb3NKoVU=; b=gRpTiciRGNVP6jUtxTBsoZCzaVx0UCj388nxOStwl6v5ZSwrkqfd4k0SFq6AppZOF+ 7q6Hhg2gRP9FXsfly2tJ+pb4dBduS+jEZUWk2GbaJAqzL1L6kZPJ8R6QKJYqhwm6YvvA l/LMcU4EWec0Rhr48rdljumQUPnS3v0UZWlA3vXtrsO3i5hYS3esA5sD8PWmTKPQZ/uZ Xj5lm9Eazw/QOFGMu6yOVuZ6iXG5rIaIFoVJxgdM8LoXF0QqeSNBW0TyHs7Tdj89njkm A3QnQUKPjl7od+9ZPMk/ldgcCPnsCIBbBkQlUgK5/ZZodCzcwwNpbuumDmtEt8iWIqWG YuLQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:organization :user-agent:in-reply-to:references:mime-version :content-transfer-encoding:content-type; bh=YE4KQAkawRceyRbHJDCbQ7iGvHpoPBSTwr0xb3NKoVU=; b=Nck4yA38voux9oGNXeFS4ZfaBfIU8sdAkbq5z4k5G87H3HsoRJl9OgqZ4xypO9iQxD 5qxdSwrDnUk3oukvFArvrQMiE4fDsj21b/pOeOXLcYsz3OYTnnBPZnAjTnaALTwBL/3Q gxxTg8XT4k9fwrg7qGpOSHunxdPEyHp43zQHadbUOqqh1KrI9F9J/gcyPAY+dzAp9j0A cwW/pC8OkfIMs2fo65/UtoeXU3cXDvsQ6PBGKal1AJtdjafAhwkaE3B0br5+PBJ5c8SW sAz01G7ECWIxdiveCIIAesTKtWo+ND7VlwXn5pGqzp5V2Ro3t0KmKFW0pmjdF7ZnyX7U ZP3A== X-Gm-Message-State: ALoCoQmlGUrVcivOUTecwvfQOKy6fpZVxZMOJPwoHN+HBdIvmIa9H6CsN/R9MZEk6X+4niPKgSUZ X-Received: by 10.28.68.134 with SMTP id r128mr13399096wma.6.1448237688530; Sun, 22 Nov 2015 16:14:48 -0800 (PST) Received: from xps13.localnet (136-92-190-109.dsl.ovh.fr. [109.190.92.136]) by smtp.gmail.com with ESMTPSA id e83sm10558777wmc.23.2015.11.22.16.14.47 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 22 Nov 2015 16:14:47 -0800 (PST) From: Thomas Monjalon To: Matthew Hall Date: Mon, 23 Nov 2015 01:13:32 +0100 Message-ID: <1629381.JoeoXysOOK@xps13> Organization: 6WIND User-Agent: KMail/4.14.10 (Linux/4.1.6-1-ARCH; KDE/4.14.11; x86_64; ; ) In-Reply-To: <20151122232509.GA27730@mhcomputing.net> References: <20151121084935.GA24056@mhcomputing.net> <2764108.ZoWOrsZgTX@xps13> <20151122232509.GA27730@mhcomputing.net> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Cc: dev@dpdk.org Subject: Re: [dpdk-dev] difficulty w/ RTE_NEXT_ABI 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: Mon, 23 Nov 2015 00:14:48 -0000 2015-11-22 18:25, Matthew Hall: > On Sun, Nov 22, 2015 at 09:59:30PM +0100, Thomas Monjalon wrote: > > > So again I am confused what advantage we got from RTE_NEXT_ABI here, and how > > > you have multiple copies of RTE_NEXT_ABI on a single symbol when it is a > > > binary variable. > > > > I don't understand what is not clear here. > > OK. Let me restate it. > > I was starting from an assumption that the purpose of RTE_NEXT_ABI was to > allow ABI changes. Yes it is a preview. The next release will have only the new ABI without #ifdef. > In most projects I worked on, a renaming of a variable when the data type is > unchanged does not count as an ABI change. So it seems like this is different > from the usual definition. No, it is not an ABI change. As I said previously, the change is in the mbuf ABI. So in the example app, the 2 ABIs are used with #ifdef. > Secondly, if one is making an ABI change, like I was, to some code which was > already changed once using RTE_NEXT_ABI, which part of the code do you change? If your change is sent upstream, you must rely on the new ABI because the old one will be removed when your change will be integrated. If it is a local change, it depends on which ABI you want to use. > Do you make a third copy different from the first two copies? If you make a > third copy, but RTE_NEXT_ABI is binary (i.e. it has two values, on and off) > then what labeling do you apply to the third copy? > > If you don't make a third copy, I am assuming you edit the copy marked with > RTE_NEXT_ABI. But then what happens to a downstream user who wants to have > RTE_NEXT_ABI with the first ABI change, and not your second ABI change? In each release, there is only 2 ABIs: current and next. In 2.2, there is only 1 ABI. > Can you see what I am trying to ask now? Yes. Hope my detailed answer is enough.