From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm1-x329.google.com (mail-wm1-x329.google.com [IPv6:2a00:1450:4864:20::329]) by sourceware.org (Postfix) with ESMTPS id 20D3E386F47A for ; Tue, 9 Mar 2021 15:42:41 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 20D3E386F47A Received: by mail-wm1-x329.google.com with SMTP id m20-20020a7bcb940000b029010cab7e5a9fso6734494wmi.3 for ; Tue, 09 Mar 2021 07:42:41 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=vXo4Gj8JhY0pt620zvNS3gxWnDB0iRBsw74SVuCtLQI=; b=SwBF2c/yw3n690DERd/0VOn4MkafG4CTM+Tf3481quyB+aRq3bzaaMaArYrOboYmAk 5NB9dg5U2MVAT8PhTcFpWPYViqsRmwXqaUERnKDxDtXg1GFA2BgBDYE2BZnSa6+zxkBa CUknGgCqQj7cuSSJ0K3hMJDaJmtBigR9oj2L63cOg7eIsWA7cKdvai7r5RxeJb6zeUya 7byBKPjFDhiIfwk3YMAJKO90yVH02QnXyd4mW+XusQBvAOFrlo2XknU4frmqQdKd/5d0 OuabDyShZ7dD2Vsfa2xeafEsAWkgBQ+rN+P2aKPvv1U3Mu5lByNUvYKK44Tpsef8JEEf zIrQ== X-Gm-Message-State: AOAM533zaDJXUzQzwwDzvoJ8pR2rTNrK0DZu9Tvg5GI0Tqn2H+3cS7vl B6/X4VWn/pKxUdqt64rqSArjxA== X-Google-Smtp-Source: ABdhPJw4AKKRfphgkJ88MiCV8wYKx/cC2wSm4+XkDhc8tlRwN/lRy13DDPszPSe3AoiHFc1TWYnMfA== X-Received: by 2002:a7b:c2fa:: with SMTP id e26mr4653239wmk.102.1615304559979; Tue, 09 Mar 2021 07:42:39 -0800 (PST) Received: from google.com ([2a00:79e0:d:210:b504:ce0d:74d5:a282]) by smtp.gmail.com with ESMTPSA id g16sm25147565wrs.76.2021.03.09.07.42.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Mar 2021 07:42:39 -0800 (PST) Date: Tue, 9 Mar 2021 15:42:38 +0000 From: Matthias Maennich To: Sachin Nikam Cc: Android Kernel Team , Ketan Patil , Nicolin Chen , Bharat Nihalani , Bryan Huntsman , "libabigail@sourceware.org" , "dodji@redhat.com" Subject: Re: libabigail tool - Android vs. Sourceware Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: X-Spam-Status: No, score=-22.6 required=5.0 tests=BAYES_00, DKIMWL_WL_MED, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, ENV_AND_HDR_SPF_MATCH, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, USER_IN_DEF_DKIM_WL, USER_IN_DEF_SPF_WL autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libabigail@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Mailing list of the Libabigail project List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 09 Mar 2021 15:42:43 -0000 On Tue, Mar 09, 2021 at 01:26:28PM +0000, Sachin Nikam wrote: >Which libabigail tool do you recommend us to use to monitor and enforce ABI: >from https://android.googlesource.com/ or https://www.sourceware.org/libabigail/ ? It very much depends on what you want to do. :-) The Android version of libabigail is downstream of sourceware and receives regular merges. At the same time, our patches are posted to the list and get integrated over time. At the time of writing this, the first two patches of the "Symtab reader" series have been merged upstream. If you are working on Android Kernels, the Android version of libabigail might be required. Similarly, if you are making use of Clang compilers to build your kernels. If you do not care about the above, you might be just fine with the latest (released) version of upstream libabigail. Cheers, Matthias > > >-----Original Message----- >From: Matthias Maennich >Sent: Friday, March 5, 2021 9:10 PM >To: Sachin Nikam >Cc: Android Kernel Team ; Ketan Patil ; Nicolin Chen ; Bharat Nihalani ; Bryan Huntsman ; libabigail@sourceware.org; dodji@redhat.com >Subject: Re: libabigail tool - Android vs. Sourceware > >External email: Use caution opening links or attachments > > >Hi, > >Cc: libabigail@sourceware.org, since you asked there first. > >On Fri, Mar 05, 2021 at 02:57:49PM +0000, Sachin Nikam wrote: >>Hi, >> >>I want to know how much android >>libabigail>aster/abi/README.md> tool is diverged from >>https://www.sourceware.org/libabigail/wiki >> >>What are the enhancements or bug fixes done in android libabigail tool from sourceware tool? > >It is not too much different actually. The biggest chunk is the replaced symtab reader implementation. For the clang-built Android kernels with LTO/CFI and some more interesting features, we needed to rework the (k)symtab reader. The patch series has been posted and is currently up for review, see https://sourceware.org/pipermail/libabigail/2021q1/003089.html. >Those are alone 20 patches. > >Here is roughly what we have on top in >https://android.googlesource.com/platform/external/libabigail/: > >Android specific patches for integration, compliance, build: > 3e7ace7f4dce Initial empty repository # empty > 7d03a8db4b76 Add metadata files > c4c81432a780 Add support for external_updater automatic updates > a1a321d23b91 Add soong build description for building abidiff and abidw > 03dcda4bebc0 fix build for abidw > a28258465e4c Limit to 64-bit binaries. > 4d5ac23a458d Disable libabigail for darwin. > 16afa280a204 Drop unnecessary upstream files that impose RESTRICTED licensing > 6b3d6ad6fa31 Add LOCAL_LICENSE_KINDS to external/libabigail > >Alternative Symtab reader: > 5f49f81f2850 abg-cxx-compat: add simplified version of std::optional > 204eaf651a17 abg-ir: elf_symbol: add is_in_ksymtab field > bda7f9443f09 abg-ir: elf_symbol: add is_suppressed field > 8adb9b8ee052 dwarf-reader split: create abg-symtab-reader.{h,cc} and test case > 66d2bede37c6 Refactor ELF symbol table reading by adding a new symtab reader > 5a745592194d Integrate new symtab reader into corpus and read_context > 97308e77a945 corpus: make get_(undefined_)?_(var|fun)_symbols use the new symtab > cb24effa3948 corpus: make get_unreferenced_(function|variable)_symbols use the new symtab > 4b5a95c4a5f3 abg-reader: avoid using the (var|function)_symbol_map > ab9401599724 dwarf-reader: read_context: use new symtab in *_symbols_is_exported > 4d7075fd0b22 Switch kernel stuff over to new symtab and drop unused code > 76e19dbc66c8 abg-elf-helpers: migrate ppc64 specific helpers > 96872a3abb46 symtab_reader: add support for ppc64 ELFv1 binaries > ede9a107a71f abg-corpus: remove symbol maps and their setters > 4dcbf6520983 dwarf reader: drop (now) unused code related symbol table reading > a4015cf2f9ef test-symtab: add tests for whitelisted functions > a82212c4152f symtab/dwarf-reader: allow hinting of main symbols for aliases > 51bac872c0bb dwarf-reader/writer: consider aliases when dealing with suppressions > 7ac9bb8f1181 symtab: Add support for MODVERSIONS (CRC checksums) > 1b4e95ec43c2 abg-writer.cc: fix write_elf_symbol_reference loop > c1db8a7be692 abidiff: better whitespace in symbol diff report > >Misc additions and fixes: > 7e7a9979bc8a KMI Whitelists: allow alternative section suffix 'symbol_list' > 3b707b3e8e13 abidiff: Flag indirect struct/union changes. > >Cheers, >Matthias > >> >>Best Regards, >>Sachin Nikam. >> >>-- >>To unsubscribe from this group and stop receiving emails from it, send an email to kernel-team+unsubscribe@android.com.