linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ian Rogers <irogers@google.com>
Cc: debian-kernel@lists.debian.org,
	linux-perf-users <linux-perf-users@vger.kernel.org>,
	ben@decadent.org.uk, Jiri Olsa <jolsa@kernel.org>,
	Namhyung Kim <namhyung@kernel.org>
Subject: Re: Getting the latest and greatest Linux perf features on every Debian kernel
Date: Fri, 12 Nov 2021 11:39:05 -0300	[thread overview]
Message-ID: <YY58idSor+lJ84KF@kernel.org> (raw)
In-Reply-To: <CAP-5=fW7La9ZNv8Z6LHRRNXne4+dWK6dR1ye2P=zETFELtK=fg@mail.gmail.com>

Em Thu, Nov 11, 2021 at 10:34:33PM -0800, Ian Rogers escreveu:
> Hi,
 
> Debian currently tries to match the Linux perf tool to the version of
> the kernel that it is being run upon. Reaching out to Ben Hutchings,
> he explained to me that this was done back in 2010 due to kernel and
> Linux perf incompatibilities. This was likely the case, but it was a
> bug in the Linux perf tool that should have been fixed. It is the goal
> of the tool to be backward compatible. A problem with matching the
> tool to the kernel version is that users miss out on new features and
> fixes (this topic came up in a recent interview of the maintainer
> Arnaldo Carvalho de Melo [1]).
 
> Ben Hutchings informs me that making it so that Debian ships the
> latest Linux perf tool requires updates both to the linux-base and
> linux source packages. The Linux perf tool also has many other often
> optional dependencies, like libunwind, libbpf, libpfm4, libtraceevent,
> etc. In general, having the dependency will unlock more features.
> Linux tools has its own copies of libbpf and libtraceevent, and so
> these may pose some versioning issues.

We can use LIBBPF_DYNAMIC=1 to use the distro libbpf-dev package, which
currently is going thru some growing pains as libbpf is 0.x, with
several APIs being deprecated, others renamed, and that has been a
source of friction, but should be past us with v1.0. Till then the perf
codebase is being adjusted to allow it to be seamlessly built with the
in-kernel version and with whatever libbpf-devel the distro has.
 
> I think it'd be great to get Debian shipping the latest version of
> Linux perf for its users. Hopefully we can agree to change how Debian
> packages perf currently and then work out the best way to package and
> keep it up-to-date. I look forward to everyone's help and input.

I also keep the tarballs available at:

https://mirrors.edge.kernel.org/pub/linux/kernel/tools/perf/

Where there are instructions on how to build this detached tarball.

I regularly build perf on lots of distros, including:

  debian:9                      : Ok   gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516 , clang version 3.8.1-24 (tags/RELEASE_381/final)
  debian:10                     : Ok   gcc (Debian 8.3.0-6) 8.3.0 , clang version 7.0.1-8+deb10u2 (tags/RELEASE_701/final)
  debian:11                     : Ok   gcc (Debian 10.2.1-6) 10.2.1 20210110 , Debian clang version 11.0.1-2
  debian:experimental           : Ok   gcc (Debian 11.2.0-10) 11.2.0 , Debian clang version 11.1.0-4
  debian:experimental-x-arm64   : Ok   aarch64-linux-gnu-gcc (Debian 11.2.0-9) 11.2.0
  debian:experimental-x-mips    : Ok   mips-linux-gnu-gcc (Debian 10.2.1-6) 10.2.1 20210110
  debian:experimental-x-mips64  : Ok   mips64-linux-gnuabi64-gcc (Debian 10.2.1-6) 10.2.1 20210110
  debian:experimental-x-mipsel  : Ok   mipsel-linux-gnu-gcc (Debian 11.2.0-9) 11.2.0

Ditto for ubuntu.

A complete list can be found in each pull request I send to Linus, see
in the last one:

  https://lore.kernel.org/all/20211107204947.1394255-1-acme@kernel.org/

Search for BUILD_TARBALL.

There is also the output for 'make -C tools/perf build-test' that tests
building with lots of combinations of optional libraries, for instance,
with LIBBPF_DYNAMIC=1, etc.

- Arnaldo

  reply	other threads:[~2021-11-12 14:39 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-12  6:34 Getting the latest and greatest Linux perf features on every Debian kernel Ian Rogers
2021-11-12 14:39 ` Arnaldo Carvalho de Melo [this message]
2021-11-22  2:18   ` Ian Rogers
2021-11-22 12:54     ` Moessbauer, Felix
2021-11-22 16:57       ` Ian Rogers
2021-11-23  7:46         ` Moessbauer, Felix
2022-01-09 23:54     ` Ben Hutchings
2022-01-10 18:44       ` Arnaldo Carvalho de Melo
2022-12-23  1:43         ` Ian Rogers
2022-12-25 11:51           ` Andi Kleen
2022-12-26 16:12             ` Moessbauer, Felix
2022-12-26 19:15           ` Ben Hutchings
2023-01-10  1:32             ` Ian Rogers
2023-01-13 22:06               ` Ben Hutchings
2022-01-09 23:41   ` Ben Hutchings

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=YY58idSor+lJ84KF@kernel.org \
    --to=acme@kernel.org \
    --cc=ben@decadent.org.uk \
    --cc=debian-kernel@lists.debian.org \
    --cc=irogers@google.com \
    --cc=jolsa@kernel.org \
    --cc=linux-perf-users@vger.kernel.org \
    --cc=namhyung@kernel.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).