From: Ingo Molnar <mingo@kernel.org>
To: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Howard Chu <howardchu95@gmail.com>,
Namhyung Kim <namhyung@kernel.org>,
Ian Rogers <irogers@google.com>,
Kan Liang <kan.liang@linux.intel.com>,
Jiri Olsa <jolsa@kernel.org>,
Adrian Hunter <adrian.hunter@intel.com>,
Peter Zijlstra <peterz@infradead.org>,
linux-perf-users@vger.kernel.org,
Dmitry Vyukov <dvyukov@google.com>
Subject: Re: [perf top] annotation doesn't work, libunwind doesn't seem to be working either
Date: Thu, 10 Apr 2025 08:24:52 +0200 [thread overview]
Message-ID: <Z_dkNDj9EPFwPqq1@gmail.com> (raw)
In-Reply-To: <Z_chCGYb1_hMS1F9@x1>
* Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> On Wed, Apr 09, 2025 at 11:26:10PM +0200, Ingo Molnar wrote:
> > * Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> > > Using 't' to zoom into a thread and then LEFT to zoom out works, ditto
> > > for 'd' + LEFT, 'k' (zoom into the kernel) + LEFT its just 'm' + thread
> > > or ENTER + Zoom into Thread that isn't working...
>
> > > Not even that, there is something subtle, investigating.
>
> > > But as a suggestion, pressing 't' zooms into a thread, pressing it again
> > > zooms out of that thread, rinse repeat.
>
> > Indeed, this works it around. It's not *that* easy though: 't' goes
> > into thread view, but has to be pressed another 3(?) times to get back
> > to the previous non-threaded view again.
>
> > > Ditto for 'd' for DSO and 'k' for the kernel DSO, 'S' for a CPU socket
> > > (Kan Liang implemented this, but not for 'c' CPU, will try to add that).
>
> > > Anyway, back to the bug.
>
> > Thanks for having a look! :)
>
> I guess I found it, another one-liner (well, two if you count removing a
> comment line) with a long explanation, see below.
>
> There is a tidy up patch before this, all is at:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git perf-annotate+build
Wow, that's quite a lot!
So, I can confirm that the build warning is gone - as the libunwind
entry is gone:
Auto-detecting system features:
... libdw: [ on ]
... glibc: [ on ]
... libelf: [ on ]
... libnuma: [ on ]
... numa_num_possible_cpus: [ on ]
... libperl: [ on ]
... libpython: [ on ]
... libcrypto: [ on ]
... libcapstone: [ on ]
... llvm-perf: [ on ]
... zlib: [ on ]
... lzma: [ on ]
... get_cpuid: [ on ]
... bpf: [ on ]
... libaio: [ on ]
... libzstd: [ on ]
And there's this second round of auto-detection:
Auto-detecting system features:
... clang-bpf-co-re: [ on ]
... llvm: [ on ]
... libcap: [ on ]
... libbfd: [ on ]
which is all-green as well.
I still have these dependency warnings:
Makefile.config:563: No elfutils/debuginfod.h found, no debuginfo server support, please install elfutils-debuginfod-client-devel or equivalent
Makefile.config:1146: No openjdk development package found, please install JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel
Makefile.config:1191: libtracefs is missing. Please install libtracefs-dev/libtracefs-devel
The libtracefs one was resolved via 'apt install libtracefs-dev',
leaving two:
Makefile.config:563: No elfutils/debuginfod.h found, no debuginfo server support, please install elfutils-debuginfod-client-devel or equivalent
Makefile.config:1146: No openjdk development package found, please install JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel
I cannot resolve the openjdk dependency warning, despite installing a
plethora of packages:
kepler:~/tip> dpkg -l | grep openjdk
rc openjdk-14-jre-headless:amd64 14.0.2+12-1 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
ii openjdk-17-jre:amd64 17.0.14+7-1~24.10 amd64 OpenJDK Java runtime, using Hotspot JIT
ii openjdk-17-jre-headless:amd64 17.0.14+7-1~24.10 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
rc openjdk-18-jre-headless:amd64 18.0.2+9-2ubuntu1 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
ii openjdk-21-jdk-headless:amd64 21.0.6+7-1~24.10.1 amd64 OpenJDK Development Kit (JDK) (headless)
ii openjdk-21-jre:amd64 21.0.6+7-1~24.10.1 amd64 OpenJDK Java runtime, using Hotspot JIT
ii openjdk-21-jre-headless:amd64 21.0.6+7-1~24.10.1 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
ii openjdk-8-jdk:amd64 8u442-b06~us1-0ubuntu1~24.10 amd64 OpenJDK Development Kit (JDK)
ii openjdk-8-jdk-headless:amd64 8u442-b06~us1-0ubuntu1~24.10 amd64 OpenJDK Development Kit (JDK) (headless)
ii openjdk-8-jre:amd64 8u442-b06~us1-0ubuntu1~24.10 amd64 OpenJDK Java runtime, using Hotspot JIT
ii openjdk-8-jre-headless:amd64 8u442-b06~us1-0ubuntu1~24.10 amd64 OpenJDK Java runtime, using Hotspot JIT (headless)
And I managed to resolve the elfutils/debuginfod.h warning via an
apt-file search and installing the libdebuginfod-dev package, the
warning message should probably be updated via the patch further below
that gives a more specific package name to install.
With that resolved, I now have only a single dependency failure left:
Makefile.config:1146: No openjdk development package found, please install JDK package, e.g. openjdk-8-jdk, java-1.8.0-openjdk-devel
On the UI front:
- I can confirm that the left-arrow now works intuitively wrt. context
zooming, thanks for implementing that!
- Likewise, the Esc key suggested in the 'h' screen now works
intuitively as well.
- When pressing an unbound key I now get a helpful message.
- One small detail with the unbound key warning I noticed: it now
says "'l' key not associated, use 'h'/'?'/F1 to see actions!", but
pressing 'h' will only work after dismissing this window. It might
be a nice little extra UI tweak to allow 'h/?/F1' to jump to the
help window straight away from warning windows, instead of
requiring two keys to be pressed?
- I also see that 'P' now works in a broader context as well, saving
the perf.hist.0 file.
- A small observation with the 'P' key too: maybe the status line
at the bottom should update with the action performed? I only see
a small flash and the "Press '?' for help on key bindings"
message is reprinted.
Anyway, I'd say that the large majority of my TUI complaints were
resolved by your changes, and I had no new problems, so for the
changes so far:
Tested-by: Ingo Molnar <mingo@kernel.org>
Thanks,
Ingo
=================================>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
tools/perf/Makefile.config | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
index 211eb88e6bd8..9f08a6e96b35 100644
--- a/tools/perf/Makefile.config
+++ b/tools/perf/Makefile.config
@@ -560,7 +560,7 @@ ifndef NO_LIBELF
CFLAGS += -DHAVE_DEBUGINFOD_SUPPORT
EXTLIBS += -ldebuginfod
else
- $(warning No elfutils/debuginfod.h found, no debuginfo server support, please install elfutils-debuginfod-client-devel or equivalent)
+ $(warning No elfutils/debuginfod.h found, no debuginfo server support, please install libdebuginfod-dev/elfutils-debuginfod-client-devel or equivalent)
endif
endif
next prev parent reply other threads:[~2025-04-10 6:24 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-07 8:08 [PATCH 1/3] perf sort: Keep output fields in the same level Namhyung Kim
2025-03-07 8:08 ` [PATCH 2/3] perf report: Allow hierarchy mode for --children Namhyung Kim
2025-03-07 8:08 ` [PATCH 3/3] perf report: Disable children column for data type profiling Namhyung Kim
2025-03-20 0:36 ` [PATCH 1/3] perf sort: Keep output fields in the same level Namhyung Kim
2025-03-20 9:32 ` Ingo Molnar
2025-03-20 16:16 ` Namhyung Kim
2025-03-24 7:28 ` Ingo Molnar
2025-03-25 0:26 ` Namhyung Kim
2025-04-04 9:41 ` [perf top] annotation doesn't work, libunwind doesn't seem to be working either Ingo Molnar
2025-04-04 17:28 ` Namhyung Kim
2025-04-04 18:13 ` Arnaldo Carvalho de Melo
2025-04-04 18:25 ` Arnaldo Carvalho de Melo
2025-04-04 18:40 ` Arnaldo Carvalho de Melo
2025-04-05 9:06 ` Ingo Molnar
2025-04-05 9:09 ` Ingo Molnar
2025-04-07 6:02 ` Howard Chu
2025-04-07 16:58 ` Ingo Molnar
2025-04-07 17:04 ` Ingo Molnar
2025-04-08 0:54 ` Arnaldo Carvalho de Melo
2025-04-08 6:16 ` Namhyung Kim
2025-04-09 3:26 ` Arnaldo Carvalho de Melo
2025-04-10 20:48 ` Namhyung Kim
2025-04-10 20:54 ` Ingo Molnar
2025-04-24 12:37 ` Arnaldo Carvalho de Melo
2025-04-08 8:05 ` Ingo Molnar
2025-04-09 2:23 ` Arnaldo Carvalho de Melo
2025-04-09 12:19 ` Arnaldo Carvalho de Melo
2025-04-09 15:57 ` Arnaldo Carvalho de Melo
2025-04-09 19:17 ` Arnaldo Carvalho de Melo
2025-04-09 19:22 ` Arnaldo Carvalho de Melo
2025-04-09 21:26 ` Ingo Molnar
2025-04-10 1:38 ` Arnaldo Carvalho de Melo
2025-04-10 6:24 ` Ingo Molnar [this message]
2025-04-10 14:03 ` Fixes for perf build system and TUI browsers was " Arnaldo Carvalho de Melo
2025-03-25 0:46 ` [PATCH 1/3] perf sort: Keep output fields in the same level Namhyung Kim
2025-03-30 5:54 ` Namhyung Kim
2025-03-21 18:30 ` Namhyung Kim
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=Z_dkNDj9EPFwPqq1@gmail.com \
--to=mingo@kernel.org \
--cc=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=dvyukov@google.com \
--cc=howardchu95@gmail.com \
--cc=irogers@google.com \
--cc=jolsa@kernel.org \
--cc=kan.liang@linux.intel.com \
--cc=linux-perf-users@vger.kernel.org \
--cc=namhyung@kernel.org \
--cc=peterz@infradead.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).