From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by sourceware.org (Postfix) with ESMTPS id F31D53858CD1 for ; Tue, 14 Nov 2023 12:24:58 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F31D53858CD1 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=linuxfoundation.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=linuxfoundation.org ARC-Filter: OpenARC Filter v1.0.0 sourceware.org F31D53858CD1 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=139.178.84.217 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699964700; cv=none; b=gXukS4v65VMW36yU3cVKACq5DjI54F7c6A3B7lvrmihVVhryaHF4g2U1VmID15Lwz1H9vHXJB+wcPYOGwfZFV1ca/3RbU2cjarPZWkYB0Wq/s8p/7l+065sMs6fgP3hEiXO0icLvIukjjxoMgDnjEqqxyGQ8rnpCRx2QjKIftPw= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699964700; c=relaxed/simple; bh=ncW1jlc+LZFs2wFuphiZQkOpBz6QX6RiQ1j55px9Kao=; h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version; b=d5O5q3Qaq/TG9VNzgT6sP5FgUmLRMhL3Pubbrliq0CoiwMzWvajVhiZdZWSP0XdN2rt8AMQ+ntagpPLedA4KPbLb8wPy8pyPdjLB1x/ygarg4APrJMRQlmC9NxBwCjUQmaa/n1psH12VFvo8fsN7gPqdNljLFla4txReicDxQbg= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 9BFE761221; Tue, 14 Nov 2023 12:24:57 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 195FAC433C8; Tue, 14 Nov 2023 12:24:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1699964697; bh=ncW1jlc+LZFs2wFuphiZQkOpBz6QX6RiQ1j55px9Kao=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=l99rIvbLUJu13ZV4yN+aLpcFrZXEL5au01dh2KnmkkAuL8rJz0BX/tmQCk6CcI85I K1eORMZkp/Ga3PsGp0pR5FNMk5DFRzzLY+VQZvBD3Vc4Ovg0W9CKVihkTbZ/b6e2NY zZzg8Yvo8jAh0Q5Bc+kFMBrZ6SG+4IFYbJJ9yDTg= Date: Tue, 14 Nov 2023 07:24:55 -0500 From: Greg Kroah-Hartman To: Masahiro Yamada Cc: John Moon , Nathan Chancellor , Nick Desaulniers , Nicolas Schier , Jonathan Corbet , linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, kernel@quicinc.com, Randy Dunlap , Arnd Bergmann , Bjorn Andersson , Todd Kjos , Matthias Maennich , Giuliano Procida , kernel-team@android.com, libabigail@sourceware.org, Dodji Seketeli , Trilok Soni , Satya Durga Srinivasu Prabhala , Jordan Crouse Subject: Re: [PATCH v6 1/3] check-uapi: Introduce check-uapi.sh Message-ID: <2023111421-parish-juice-1932@gregkh> References: <20231027193016.27516-1-quic_johmoo@quicinc.com> <20231027193016.27516-2-quic_johmoo@quicinc.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On Tue, Nov 14, 2023 at 07:10:51PM +0900, Masahiro Yamada wrote: > On Sat, Oct 28, 2023 at 4:31 AM John Moon wrote: > > > > While the kernel community has been good at maintaining backwards > > compatibility with kernel UAPIs, it would be helpful to have a tool > > to check if a commit introduces changes that break backwards > > compatibility. > > > > To that end, introduce check-uapi.sh: a simple shell script that > > checks for changes to UAPI headers using libabigail. > > > > libabigail is "a framework which aims at helping developers and > > software distributors to spot some ABI-related issues like interface > > incompatibility in ELF shared libraries by performing a static > > analysis of the ELF binaries at hand." > > > > The script uses one of libabigail's tools, "abidiff", to compile the > > changed header before and after the commit to detect any changes. > > > > abidiff "compares the ABI of two shared libraries in ELF format. It > > emits a meaningful report describing the differences between the two > > ABIs." > > > > The script also includes the ability to check the compatibility of > > all UAPI headers across commits. This allows developers to inspect > > the stability of the UAPIs over time. > > > > Signed-off-by: John Moon > > --- > > - Add abidiff suppressions to filter out common things like enum > > variants named .*_MAX being changed and expansion into padding > > fields. > > - Bump minimum abidiff version to 2.4 to accomodate new > > suppressions. > > - Add option (-i) to suppress ambiguous breaking changes. > > - Remove printing of full file diffs when ABI breakage is found > > as this was too noisy. > > - Wait for all files to be checked before printing results as > > printing from parallel threads was garbling output. > > - Suppress all output when -q is passed. > > - Avoid messing up user's git tree by using "git archive" instead > > of checking out references. > > > > The code looks almost good to me. > > (I left some more comments below, but they are minor). > > > > Greg, > Could you check the output from the tool? I will, give me a chance to catch up after the merge window and this week at Plumbers.... Should be a week or so, thanks. greg k-h