From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id B7A2A3858D33; Mon, 26 Jun 2023 12:41:09 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B7A2A3858D33 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1687783269; bh=xq3PTiGIvMxhwASHARm1iJR8/aEG+L8X0cwT24/qHEo=; h=From:To:Subject:Date:In-Reply-To:References:From; b=wT00VO+knQIqTCJKsduZ0ux0CUFSKQWrSTyGkvk9/q/+K61IluLTe5Atuyj2agseH q6WN+v+eo1DR+oNpFGaqpT7z3NaBCE4XuDOy+GazhxBv+PCOC//Nx9zECIzcNhP6c2 0NIjDGaivrIXNq7XCbv0fFIuAMN4Qvf38Tqposj8= From: "david.marchand at redhat dot com" To: libabigail@sourceware.org Subject: [Bug default/30034] [libabigail] Handle library splitting Date: Mon, 26 Jun 2023 12:41:09 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: libabigail X-Bugzilla-Component: default X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: enhancement X-Bugzilla-Who: david.marchand at redhat dot com X-Bugzilla-Status: ASSIGNED X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: dodji at redhat dot com X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://sourceware.org/bugzilla/show_bug.cgi?id=3D30034 --- Comment #21 from David Marchand --- (In reply to dodji from comment #19) > (In reply to David Marchand from comment #17) > > Once I disable CTF support, it can compile fine. > >=20 > > So I ran DPDK full ABI check: > >=20 > > Before (w/o follow dependencies): > > real 0m2,951s > > user 0m22,876s > > sys 0m3,724s > >=20 > > After (with follow dependencies): > > real 0m21,659s > > user 3m4,138s > > sys 1m52,617s > >=20 > > I did not look too much into it yet, but it seems significantly heavier. >=20 > Hmmh, I am wondering if you have *all* the dependencies of the library, > including all system libraries and everything (like libc etc) in the > dependencies directory specified by --deps-dir{1,2}. If so, then it's > normal that things are much heavier. I only have a DPDK installed libraries in this staging directory. >=20 > To know what dependencies are taken into account account by abidiff, I ha= ve > just added a --list-dependencies option to abidiff in the branch. Could = you > please provide me with the list of deps so that we have an idea? >=20 > Here is how the --list-dependencies option can be used: >=20 >=20 >=20 > $ time /home/dodji/git/libabigail/PR30034/build/tools/abidiff > --follow-dependencies --list-dependencies --suppr libabigail.abignore > --no-added-syms --headers-dir1 reference/include --headers-dir2 > split/include --deps-dir1 reference/lib64 --deps-dir2 split/lib64 > reference/lib64/librte_eal.so split/lib64/librte_eal.so > Functions changes summary: 0 Removed, 0 Changed (1 filtered out),= 0 > Added (12 filtered out) functions > Variables changes summary: 0 Removed, 0 Changed, 0 Added variable >=20=20=20=20=20=20=20=20=20=20 > /home/dodji/git/libabigail/PR30034/build/tools/.libs/lt-abidiff: > dependencies of 'reference/lib64/librte_eal.so': > reference/lib64/librte_kvargs.so.23, > reference/lib64/librte_telemetry.so.23 > /home/dodji/git/libabigail/PR30034/build/tools/.libs/lt-abidiff: > dependencies of 'split/lib64/librte_eal.so': > split/lib64/librte_kvargs.so.23, > split/lib64/librte_log.so.23, split/lib64/librte_telemetry.so.23 >=20=20=20=20=20=20=20=20=20=20 > real 0m0,662s > user 0m0,638s > sys 0m0,026s > $ >=20 > Thanks. And I can confirm with the --list-dependencies option that only librte_ libraries seem to be loaded (same output than above). One thing is that I am doing the *whole* ABI check in DPDK which compares ~= 300 libraries. Some of them may have multiple internal dependencies. Looking at the net/ixgbe driver for example: $ time .../libabigail/master/build/tools/abidiff --suppr .../devtools/libabigail.abignore --no-added-syms --headers-dir1 .../reference/usr/local/include --headers-dir2 .../split/usr/local/include --deps-dir1 .../reference/usr/local/lib64 --deps-dir2 .../split/usr/local/l= ib64 .../reference/usr/local/lib64/librte_net_ixgbe.so.23.1 .../split/usr/local/lib64/librte_net_ixgbe.so.23.2=20 real 0m0,133s user 0m0,121s sys 0m0,013s $ time .../libabigail/master/build/tools/abidiff --suppr .../devtools/libabigail.abignore --no-added-syms --headers-dir1 .../reference/usr/local/include --headers-dir2 .../split/usr/local/include --follow-dependencies --deps-dir1 .../reference/usr/local/lib64 --deps-dir2 .../split/usr/local/lib64 .../reference/usr/local/lib64/librte_net_ixgbe.so.23.1 .../split/usr/local/lib64/librte_net_ixgbe.so.23.2=20 Functions changes summary: 0 Removed, 0 Changed (65 filtered out), 0 Added = (24 filtered out) functions Variables changes summary: 0 Removed, 0 Changed (2 filtered out), 0 Added variables real 0m1,015s user 0m0,641s sys 0m0,372s This library depends on many DPDK helpers / libs. $ ldd .../split/usr/local/lib64/librte_net_ixgbe.so.23.2 | grep librte_ | wc 17 68 568 --=20 You are receiving this mail because: You are on the CC list for the bug.=