DPDK-dev Archive on lore.kernel.org
 help / color / Atom feed
From: Aaron Conole <aconole@redhat.com>
To: Bruce Richardson <bruce.richardson@intel.com>
Cc: David Marchand <david.marchand@redhat.com>,
	Kevin Laatz <kevin.laatz@intel.com>, dev <dev@dpdk.org>,
	Thomas Monjalon <thomas@monjalon.net>, "Kinsella\,
	Ray" <ray.kinsella@intel.com>,
	Tomasz Duszynski <tdu@semihalf.com>, Zyta Szpak <zr@semihalf.com>,
	Rastislav Cernay <cernay@netcope.com>
Subject: Re: [dpdk-dev] [PATCH v6 00/11] Add ABI compatibility checks to the meson build
Date: Mon, 06 Jan 2020 08:20:50 -0500
Message-ID: <f7teewcg1ql.fsf@dhcp-25.97.bos.redhat.com> (raw)
In-Reply-To: <20191220141723.GA526@bricha3-MOBL.ger.corp.intel.com> (Bruce Richardson's message of "Fri, 20 Dec 2019 14:17:23 +0000")

Bruce Richardson <bruce.richardson@intel.com> writes:

> On Fri, Dec 20, 2019 at 02:19:13PM +0100, David Marchand wrote:
>> On Fri, Dec 20, 2019 at 12:04 PM Bruce Richardson
>> <bruce.richardson@intel.com> wrote:
>> > > For maintainers that integrate patches or developers that get a CI
>> > > failure and want to fix it, we would need to help them to:
>> > > * generate dumps on a reference version, so I would tend to write some
>> > > documentation since playing with the current sources would be too
>> > > dangerous from my pov,
>> >
>> > This should be a one-off reference dump archived somewhere. Each maintainer
>> > should not have his own copy, I think.
>> 
>> This is not a one-off thing.
>> We maintain ABI for some time (1/2 year(s)), and we expect to bump ABI.
>> When doing this, in size, the diff will be at least the same than what
>> we have here.
>> 
>
> I don't think it will be quite that big, but ok, it may be significant, so
> I will concede that these are too big to store in the main git repo.
>
>> 
>> If you disable libraries, features etc... you get a new ABI.
>> What would be the reference*s* then?
>> Builds with default options from meson for each architecture?
>> 
>
> On the project level API, yes, removing libraries/drivers does affect
> things. However, the specific checks are done on the individual .so level,
> so having some drivers off in the build should not be a problem. Even with
> features - all public functions need to correspond with map file entries,
> so we can't conditionally remove them without providing a stub AFAIK.
> Therefore, having one master reference of the DPDK_20 ABI is perfectly
> feasible.

But when is it cut?  What happens during an interrim, where users have
an outdated reference but don't remember what they downloaded?  What
about when we have multiple LTS' that have different ABI versions and
need to ensure that we don't break ABIs for backports?

>> 
>> > > * run the checks, like adding the check in the
>> > > devtools/test-*-build.sh scripts that already exist, with a new
>> > > configuration item to point at the dumps per target,
>> > >
>> >
>> > Where do we store the dumps then? Do they get stored in a separate git
>> > repo?
>> 
>> Creating a separate git repo is just adding more pain to submitters
>> (/maintainers): they would have to submit (/apply) patches against two
>> trees.
>> 
>
> Well, the official ABI dumps need to be stored somewhere, because if it's
> an official ABI, then it is exactly that. There cannot be different people
> with different versions of the ABI to check against. Everyone should check
> against the one common, official reference.

Isn't the reference stored in the git repo anyway?  It should always be
possible to generate it.  And I trust the version I generate from the
source of truth anyway, over something I download.

> Regards,
> /Bruce


      reply index

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-23  1:07 [dpdk-dev] [RFC 0/6] " Kevin Laatz
2019-10-23  1:07 ` [dpdk-dev] [RFC 1/6] build: enable debug info by default in meson builds Kevin Laatz
2019-10-23  1:07 ` [dpdk-dev] [RFC 2/6] build: use meson warning levels Kevin Laatz
2019-10-23  1:07 ` [dpdk-dev] [RFC 3/6] devtools: add abi dump generation script Kevin Laatz
2019-10-23  1:07 ` [dpdk-dev] [RFC 4/6] build: add meson option for abi related checks Kevin Laatz
2019-10-23  1:07 ` [dpdk-dev] [RFC 5/6] build: add lib abi checks to meson Kevin Laatz
2019-10-23  1:07 ` [dpdk-dev] [RFC 6/6] build: add drivers " Kevin Laatz
2019-11-29 12:13 ` [dpdk-dev] [RFC 0/6] Add ABI compatibility checks to the meson build David Marchand
2019-11-29 17:10 ` [dpdk-dev] [PATCH v2 0/7] " Kevin Laatz
2019-11-29 17:10   ` [dpdk-dev] [PATCH v2 1/7] build: enable debug info by default in meson builds Kevin Laatz
2019-11-29 17:10   ` [dpdk-dev] [PATCH v2 2/7] build: use meson warning levels Kevin Laatz
2019-11-29 17:10   ` [dpdk-dev] [PATCH v2 3/7] devtools: add abi dump generation script Kevin Laatz
2019-11-29 17:10   ` [dpdk-dev] [PATCH v2 4/7] build: add meson option for abi related checks Kevin Laatz
2019-11-29 17:10   ` [dpdk-dev] [PATCH v2 5/7] build: add lib abi checks to meson Kevin Laatz
2019-11-29 17:10   ` [dpdk-dev] [PATCH v2 6/7] build: add drivers " Kevin Laatz
2019-11-29 17:10   ` [dpdk-dev] [PATCH v2 7/7] build: clean up experimental syms check Kevin Laatz
2019-11-29 21:08   ` [dpdk-dev] [PATCH v3 0/7] Add ABI compatibility checks to the meson build Kevin Laatz
2019-11-29 21:08     ` [dpdk-dev] [PATCH v3 1/7] build: enable debug info by default in meson builds Kevin Laatz
2019-11-29 21:09     ` [dpdk-dev] [PATCH v3 2/7] build: use meson warning levels Kevin Laatz
2019-11-29 21:09     ` [dpdk-dev] [PATCH v3 3/7] devtools: add abi dump generation script Kevin Laatz
2019-11-29 21:09     ` [dpdk-dev] [PATCH v3 4/7] build: add meson option for abi related checks Kevin Laatz
2019-11-29 21:09     ` [dpdk-dev] [PATCH v3 5/7] build: add lib abi checks to meson Kevin Laatz
2019-11-29 21:09     ` [dpdk-dev] [PATCH v3 6/7] build: add drivers " Kevin Laatz
2019-11-29 21:09     ` [dpdk-dev] [PATCH v3 7/7] build: clean up experimental syms check Kevin Laatz
2019-12-03 11:03     ` [dpdk-dev] [PATCH v3 0/7] Add ABI compatibility checks to the meson build David Marchand
2019-12-03 15:27       ` Laatz, Kevin
2019-12-04  8:47         ` David Marchand
2019-12-04 10:46           ` Bruce Richardson
2019-12-04 11:56           ` Neil Horman
2019-12-04 12:00             ` David Marchand
2019-12-10 11:07         ` David Marchand
2019-12-10 11:36           ` Laatz, Kevin
2019-12-11 18:21     ` [dpdk-dev] [PATCH v4 0/3] " Kevin Laatz
2019-12-11 18:21       ` [dpdk-dev] [PATCH v4 2/3] build: add abi checks to meson Kevin Laatz
2019-12-11 18:21       ` [dpdk-dev] [PATCH v4 3/3] build: clean up experimental syms check Kevin Laatz
     [not found]       ` <20191211182147.19355-2-kevin.laatz@intel.com>
2019-12-12  8:43         ` [dpdk-dev] [PATCH v4 1/3] build: add dump files for v20.0 ABI David Marchand
2019-12-12  9:36           ` David Marchand
2019-12-12  9:45             ` Laatz, Kevin
2019-12-12  9:45           ` Laatz, Kevin
2019-12-13 14:02       ` [dpdk-dev] [PATCH v5 0/3] Add ABI compatibility checks to the meson build Kevin Laatz
2019-12-13 14:03         ` [dpdk-dev] [PATCH v5 2/3] build: add abi checks to meson Kevin Laatz
2019-12-13 14:03         ` [dpdk-dev] [PATCH v5 3/3] build: clean up experimental syms check Kevin Laatz
2019-12-13 16:40         ` [dpdk-dev] [PATCH v6 00/11] Add ABI compatibility checks to the meson build Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 01/11] lib: add dump files for v20.0 ABI Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 02/11] drivers/bus: " Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 03/11] drivers/mempool: " Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 04/11] drivers/common: " Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 05/11] drivers/raw: " Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 06/11] drivers/crypto: " Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 07/11] drivers/compress: " Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 08/11] drivers/net: " Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 09/11] drivers/net/intel: " Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 10/11] build: add abi checks to meson Kevin Laatz
2019-12-13 16:41           ` [dpdk-dev] [PATCH v6 11/11] build: clean up experimental syms check Kevin Laatz
2019-12-19 21:58           ` [dpdk-dev] [PATCH v6 00/11] Add ABI compatibility checks to the meson build David Marchand
2019-12-20 10:20             ` Thomas Monjalon
2019-12-20 11:04             ` Bruce Richardson
2019-12-20 13:19               ` David Marchand
2019-12-20 14:17                 ` Bruce Richardson
2020-01-06 13:20                   ` Aaron Conole [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f7teewcg1ql.fsf@dhcp-25.97.bos.redhat.com \
    --to=aconole@redhat.com \
    --cc=bruce.richardson@intel.com \
    --cc=cernay@netcope.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=kevin.laatz@intel.com \
    --cc=ray.kinsella@intel.com \
    --cc=tdu@semihalf.com \
    --cc=thomas@monjalon.net \
    --cc=zr@semihalf.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

DPDK-dev Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/dpdk-dev/0 dpdk-dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dpdk-dev dpdk-dev/ https://lore.kernel.org/dpdk-dev \
		dev@dpdk.org
	public-inbox-index dpdk-dev

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git