From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Borislav Petkov <bp@alien8.de>, Ian Rogers <irogers@google.com>
Cc: Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Mark Rutland <mark.rutland@arm.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Jiri Olsa <jolsa@redhat.com>, Namhyung Kim <namhyung@kernel.org>,
X86 ML <x86@kernel.org>, Masami Hiramatsu <mhiramat@kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
Stephane Eranian <eranian@google.com>
Subject: Re: [PATCH v3 04/21] x86/insn: Add an insn_decode() API
Date: Wed, 24 Mar 2021 10:43:20 -0300 [thread overview]
Message-ID: <YFtB+Dir1lWjL2gi@kernel.org> (raw)
In-Reply-To: <CAP-5=fU2D_kmdaLFL7Azm31Czdfdze6EpKg7=uZ+ohbNnb7ssQ@mail.gmail.com>
Em Tue, Mar 16, 2021 at 06:14:54PM -0700, Ian Rogers escreveu:
> On Thu, Mar 4, 2021 at 9:56 AM Borislav Petkov <bp@alien8.de> wrote:
> > From: Borislav Petkov <bp@suse.de>
> >
> > Users of the instruction decoder should use this to decode instruction
> > bytes. For that, have insn*() helpers return an int value to denote
> > success/failure. When there's an error fetching the next insn byte and
> > the insn falls short, return -ENODATA to denote that.
> >
> > While at it, make insn_get_opcode() more stricter as to whether what has
> > seen so far is a valid insn and if not.
> >
> > Copy linux/kconfig.h for the tools-version of the decoder so that it can
> > use IS_ENABLED().
> >
> > Also, cast the INSN_MODE_KERN dummy define value to (enum insn_mode)
> > for tools use of the decoder because perf tool builds with -Werror and
> > errors out with -Werror=sign-compare otherwise.
> >
> > Signed-off-by: Borislav Petkov <bp@suse.de>
> > Acked-by: Masami Hiramatsu <mhiramat@kernel.org>
> > +++ b/tools/arch/x86/lib/insn.c
> > @@ -11,10 +11,13 @@
> > #else
> > #include <string.h>
> > #endif
> > -#include "../include/asm/inat.h" /* __ignore_sync_check__ */
> > -#include "../include/asm/insn.h" /* __ignore_sync_check__ */
> > +#include <asm/inat.h> /*__ignore_sync_check__ */
> > +#include <asm/insn.h> /* __ignore_sync_check__ */
>
> Hi, this change is breaking non-x86 builds of perf for me in
> tip.git/master. The reason being that non-x86 builds compile the
> intel-pt-decoder, which includes this file, but don't have their
> include paths set to find tools/arch/x86. I think we want to keep the
> relative paths.
Borislav, was this addressed? Ian?
- Arnaldo
next prev parent reply other threads:[~2021-03-24 13:44 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-04 17:42 [PATCH v3 00/21] x86/insn: Add an insn_decode() API Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 01/21] x86/insn: Rename insn_decode() to insn_decode_from_regs() Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 02/21] x86/insn: Add @buf_len param to insn_init() kernel-doc comment Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 03/21] x86/insn: Add a __ignore_sync_check__ marker Borislav Petkov
2021-03-12 3:07 ` Masami Hiramatsu
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 04/21] x86/insn: Add an insn_decode() API Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-15 16:53 ` Peter Zijlstra
2021-03-17 1:14 ` [PATCH v3 04/21] " Ian Rogers
2021-03-24 13:43 ` Arnaldo Carvalho de Melo [this message]
2021-03-24 13:54 ` Borislav Petkov
2021-03-24 18:21 ` Ian Rogers
2021-03-24 18:52 ` Arnaldo Carvalho de Melo
2021-03-04 17:42 ` [PATCH v3 05/21] x86/insn-eval: Handle return values from the decoder Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 06/21] x86/boot/compressed/sev-es: Convert to insn_decode() Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 07/21] perf/x86/intel/ds: Check insn_get_length() retval Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 08/21] perf/x86/intel/ds: Check return values of insn decoder functions Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 09/21] x86/alternative: Use insn_decode() Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 10/21] x86/mce: Convert to insn_decode() Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 11/21] x86/kprobes: " Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 12/21] x86/sev-es: Split vc_decode_insn() Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 13/21] x86/sev-es: Convert to insn_decode() Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 14/21] x86/traps: " Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 15/21] x86/uprobes: " Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 16/21] x86/tools/insn_decoder_test: " Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 17/21] tools/objtool: " Borislav Petkov
2021-03-04 17:49 ` Peter Zijlstra
2021-03-04 18:06 ` Borislav Petkov
2021-03-05 8:55 ` Peter Zijlstra
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 18/21] x86/tools/insn_sanity: " Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 19/21] tools/perf: " Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 20/21] x86/insn: Remove kernel_insn_init() Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
2021-03-04 17:42 ` [PATCH v3 21/21] x86/insn: Make insn_complete() static Borislav Petkov
2021-03-15 15:47 ` [tip: x86/core] " tip-bot2 for Borislav Petkov
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=YFtB+Dir1lWjL2gi@kernel.org \
--to=acme@kernel.org \
--cc=alexander.shishkin@linux.intel.com \
--cc=bp@alien8.de \
--cc=eranian@google.com \
--cc=irogers@google.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mhiramat@kernel.org \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=peterz@infradead.org \
--cc=x86@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