Re: [PATCH 10/11] perf tools: Add probing for udev86 library

From: Arnaldo Carvalho de Melo
Date: Wed Mar 30 2016 - 10:11:03 EST


Em Wed, Mar 30, 2016 at 03:52:46PM +0200, Ingo Molnar escreveu:
> * Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:
> > Em Wed, Mar 30, 2016 at 12:43:27PM +0200, Ingo Molnar escreveu:
> > > > From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> > > > Add autoprobing for the udev86 disassembler library.

> > > So the typo in the title is confusing, what is 'udev86'?

> > > Also, this library does not seem to be available on stock Ubuntu. We should not be
> > > adding library dependencies that cannot be resolved on major distros:

> > Ok, I'll remove, I thought it would be ok because I fired up:

> > # dnf install udis86-devel

> > On fedora and it installed straight away, but after I started trying to
> > update my docker images I couldn't find it on debian
> > experimental/unstable:

> > Nor even in OpenSuSE:

> > Or even Mageia:

> Yeah, so udis86 also seems to be a pretty old, relatively stale library with no
> support for new instructions AFAICS.

> So I'd rather encourage librarizing one of the x86 instruction decoders in
> arch/x86/, and adding pretty-printing functionality to it. The code can already

That was my first reaction too, but then, having some interesting
results right now, I thought, would either push development on the
udis86 code or show that it is not going anywhere and thus we better try
doing what you're suggesting, which was my initial suggestion to Andi.

> see instruction boundaries, which is the hardest part.

> That would also be better supported on non-x86 architectures in the long run:

> triton:~/tip> find arch/ -name insn.c | xargs ls -l
> -rw-rw-r-- 1 mingo mingo 30244 Mar 29 11:24 arch/arm64/kernel/insn.c
> -rw-rw-r-- 1 mingo mingo 1347 Dec 8 06:27 arch/arm/kernel/insn.c
> -rw-rw-r-- 1 mingo mingo 15123 Mar 30 12:31 arch/x86/lib/insn.c

> Such an in-kernel-repo library could also be used by live kernel debuggers such as
> kgdb/kdb, oops/crash-time disassembly printout, etc.

> ... so how about that direction instead?

I'd much rather see it in that direction too, for the time being, I'm
removing the udis86 patches from acme/perf/core,

- Arnaldo