On 01/09/15 14:38, 平松雅巳 / HIRAMATU,MASAMI wrote: >> From: Ingo Molnar [mailto:mingo.kernel....@gmail.com] On Behalf Of Ingo >> Molnar >> >> >> * Adrian Hunter <adrian.hun...@intel.com> wrote: >> >>> Hi >>> >>> perf tools has a copy of the x86 instruction decoder for decoding >>> Intel PT. [...] >> >> So that's the arch/x86/lib/insn.c instruction length decoder that the kernel >> uses >> for kprobes et al - and the two versions already forked slightly: >> >> -#include "inat.h" >> -#include "insn.h" >> +#include <asm/inat.h> >> +#include <asm/insn.h> >> >> it would be nice to add a diff check to the perf build, and (non-fatally) >> warn >> during the build if the two versions depart from each other? >> >> This will make sure the two versions are fully in sync in the long run as >> well. >> >> ( Alternatively we could perhaps also librarize it into tools/lib/, and >> teach the >> kernel build to pick that one up? ) > > Agreed, what I concern is that someone finds a bug and fixes one of them and > another is not fixed. > > I'll see the forked version and check if it can be merged into the kernel.
Ever since Linus complained about perf tools including kernel headers, I have assumed we should have separate source code. That email thread was not cc'ed to a mailing list but here is a quote: Em Sat, Jul 04, 2015 at 08:53:46AM -0700, Linus Torvalds escreveu: > So this is more fundamental, and looks like it's just due to perf > abusing the kernel headers, and now that rbtree has rcu support > ("rbtree: Make lockless searches non-fatal"), it gets tons of headers > included that really don't work from user space. > > There might be other things going on, but the rbtree one seems to be a > big one. I think perf needs to get its own rbtree header or something, > instead of doing that insane "let's include random core kernel > headers" thing. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/