From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 53982A0597; Thu, 9 Apr 2020 17:18:50 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3A83C1C437; Thu, 9 Apr 2020 17:18:50 +0200 (CEST) Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id A40041C2F6 for ; Thu, 9 Apr 2020 17:18:48 +0200 (CEST) Received: from compute7.internal (compute7.nyi.internal [10.202.2.47]) by mailout.nyi.internal (Postfix) with ESMTP id 49E605C2BAB; Thu, 9 Apr 2020 11:18:47 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute7.internal (MEProxy); Thu, 09 Apr 2020 11:18:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=mesmtp; bh=CVSuDsU6hrJqMhDA4OvxPzDgh80vMTAg781dhqA3cEg=; b=l11vrS8lmLSJ 3Af56yX2gKzrrsqxT6+cjcMaRbpKXe4+8rCvc9Wus9zz3yBLjOsRDy3TgOv31/FI g/YSXxc/ZMBY+RVBD9xnxzi/UkD3p8tvycU4aolsZjutdTv3bZLTZQwsE7Jf335m KlsITk3wge5bJl4OmR2unTuZOmUUtI0= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=CVSuDsU6hrJqMhDA4OvxPzDgh80vMTAg781dhqA3c Eg=; b=wwGTVg1bKGlD0S2M8mzd+68QSt+IVuyMXAzHOCNH+7Itl0lB4RuvKuu+h gA/STomS7q3dESq/W9OfVYWdy3pbZyNd0M7HilaFqju0dPsDynR6iV3MUYCzGBBb VaEC3hUSsydtCE447yD0msyvE5V25CdjDgevmg9mFXslkc50jyTcIlBWcvTUrD2O IjPoIwIFNsOzffPo7O+g3tQ7OS6sCfcrRDIAkKoIochGbQTpaWeMOxdE97PMLqp/ YzVmFH8yI5o+2y1m+8ATcSho1Mgx4QJ2lGuBk6JK9FmiPKmTD7J1aV+dI58K0QKu k0M33PO/xGrRJZkeRukEg4eHrnhLA== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedrudelgdekvdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucfkph epjeejrddufeegrddvtdefrddukeegnecuvehluhhsthgvrhfuihiivgeptdenucfrrghr rghmpehmrghilhhfrhhomhepthhhohhmrghssehmohhnjhgrlhhonhdrnhgvth X-ME-Proxy: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id 7D29C306005B; Thu, 9 Apr 2020 11:18:45 -0400 (EDT) From: Thomas Monjalon To: Bruce Richardson , Neil Horman , Ray Kinsella Cc: dev@dpdk.org, david.marchand@redhat.com Date: Thu, 09 Apr 2020 17:18:43 +0200 Message-ID: <1907515.8hb0ThOEGa@thomas> In-Reply-To: References: <20200408195616.335004-1-nhorman@tuxdriver.com> <1737651.3VsfAaAtOV@thomas> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCHv2] Remove validate-abi.sh from tree X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 09/04/2020 16:52, Ray Kinsella: > On 09/04/2020 11:59, Thomas Monjalon wrote: > > 09/04/2020 12:45, Ray Kinsella: > >> On 09/04/2020 11:43, Bruce Richardson wrote: > >>> On Thu, Apr 09, 2020 at 06:39:54AM -0400, Neil Horman wrote: > >>>> On Thu, Apr 09, 2020 at 08:57:34AM +0100, Ray Kinsella wrote: > >>>>> On 08/04/2020 20:56, Neil Horman wrote: > >>>>>> +The syntax of the ``check-abi.sh`` utility is:: > >>>>>> + > >>>>>> + ./devtools/check-abi.sh > >>>>> > >>>>> (from v1 feedback) > >>>>> Could we simplify this all greatly, by telling people to use the meson/ninja build, > >>>>> so they get this checking out of the box, without all the headache below? > >>>>> > >>>> I think bruce noted that was never merged, correct? > >>>> > >>> Yep, correct. :-( > >> > >> apologies, was there a reason? > > > > Because build tool job is building, not checking. > > It would be wrong to make (slow) checks mandatory in all builds. > > > > The need is to enforce checking ABI. > > The result is already published by Travis in patchwork and in an > > email to the author I believe. > > Not checking email and patchwork is not a good excuse. > > > > Patchwork must be a mandatory read for everybody for all checks > > in general. Let's not give up on general CI workflow. > > > > Thomas > > You are trying to solve two problems at once; CI tooling and ABI. > Let's try to solve one at a time. No, you want to mix two problems in a single tool :-) > 1. The ABI check, will make the build _marginally_ slower. > You _should_ only need to rebuild the changes between A and B. Not so marginal. A re-build takes less than a second. A mandatory check takes 10 secs on my machine. > 2. The meson/ninja are an order of magnitude faster than GNU Make. > We can afford this check. I am doing such build 10 times (each target) per patch. But that's not the main issue. > 3. If we want to lessen the ABI burden and send the correct message. > It should be a build blocker, contributors need to hear the message loud and clear. The developer needs to get or build/save the ABI reference. Making such ABI reference for each target is not so obvious: - all symbols must be enabled (dependencies) - some fixes may be needed for some compilers > Most important people _consuming_ DPDK will never see this message. > Only people _changing_ the ABI will see it - the people we want to hear the message loud and clear. No, they will have issue in DPDK compilation if something in the check goes wrong. We should not bother end users with internal checks. The message is a) run the check by 1) setting DPDK_ABI_REF_VERSION on command line or in devel.config file 2) running devtools/test-build.sh or devtools/test-meson-builds.sh b) check what Travis is reporting in - email to you - patchwork reports I think Travis report is convenient to use. The local check is integrated in build scripts but cannot be run by default because of the reasons above.