diff options
author | Josh Poimboeuf <jpoimboe@redhat.com> | 2021-02-05 08:24:03 -0600 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2021-03-06 13:09:45 +0100 |
commit | b59cc97674c947861783ca92b9a6e7d043adba96 (patch) | |
tree | a742f77c4b80d7cd555b4f96c8736ea3b92f6999 /arch | |
parent | e504e74cc3a2c092b05577ce3e8e013fae7d94e6 (diff) | |
download | linux-stable-b59cc97674c947861783ca92b9a6e7d043adba96.tar.gz linux-stable-b59cc97674c947861783ca92b9a6e7d043adba96.tar.bz2 linux-stable-b59cc97674c947861783ca92b9a6e7d043adba96.zip |
x86/unwind/orc: Silence warnings caused by missing ORC data
The ORC unwinder attempts to fall back to frame pointers when ORC data
is missing for a given instruction. It sets state->error, but then
tries to keep going as a best-effort type of thing. That may result in
further warnings if the unwinder gets lost.
Until we have some way to register generated code with the unwinder,
missing ORC will be expected, and occasionally going off the rails will
also be expected. So don't warn about it.
Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Tested-by: Ivan Babrou <ivan@cloudflare.com>
Link: https://lkml.kernel.org/r/06d02c4bbb220bd31668db579278b0352538efbb.1612534649.git.jpoimboe@redhat.com
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kernel/unwind_orc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kernel/unwind_orc.c b/arch/x86/kernel/unwind_orc.c index 1bcc14c870ab..a1202536fc57 100644 --- a/arch/x86/kernel/unwind_orc.c +++ b/arch/x86/kernel/unwind_orc.c @@ -13,7 +13,7 @@ #define orc_warn_current(args...) \ ({ \ - if (state->task == current) \ + if (state->task == current && !state->error) \ orc_warn(args); \ }) |