forked from luck/tmp_suning_uos_patched
x86/dumpstack: Indicate in Oops whether PTI is configured and enabled
CONFIG_PAGE_TABLE_ISOLATION is relatively new and intrusive feature that may still have some corner cases which could take some time to manifest and be fixed. It would be useful to have Oops messages indicate whether it was enabled for building the kernel, and whether it was disabled during boot. Example of fully enabled: Oops: 0001 [#1] SMP PTI Example of enabled during build, but disabled during boot: Oops: 0001 [#1] SMP NOPTI We can decide to remove this after the feature has been tested in the field long enough. [ tglx: Made it use boot_cpu_has() as requested by Borislav ] Signed-off-by: Vlastimil Babka <vbabka@suse.cz> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Eduardo Valentin <eduval@amazon.com> Acked-by: Dave Hansen <dave.hansen@intel.com> Cc: Andy Lutomirski <luto@kernel.org> Cc: Andy Lutomirsky <luto@kernel.org> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Brian Gerst <brgerst@gmail.com> Cc: Dave Hansen <dave.hansen@linux.intel.com> Cc: David Laight <David.Laight@aculab.com> Cc: Denys Vlasenko <dvlasenk@redhat.com> Cc: Greg KH <gregkh@linuxfoundation.org> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Josh Poimboeuf <jpoimboe@redhat.com> Cc: Juergen Gross <jgross@suse.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Will Deacon <will.deacon@arm.com> Cc: aliguori@amazon.com Cc: bpetkov@suse.de Cc: daniel.gruss@iaik.tugraz.at Cc: hughd@google.com Cc: jkosina@suse.cz Cc: keescook@google.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
0a126abd57
commit
5f26d76c3f
|
@ -297,11 +297,13 @@ int __die(const char *str, struct pt_regs *regs, long err)
|
||||||
unsigned long sp;
|
unsigned long sp;
|
||||||
#endif
|
#endif
|
||||||
printk(KERN_DEFAULT
|
printk(KERN_DEFAULT
|
||||||
"%s: %04lx [#%d]%s%s%s%s\n", str, err & 0xffff, ++die_counter,
|
"%s: %04lx [#%d]%s%s%s%s%s\n", str, err & 0xffff, ++die_counter,
|
||||||
IS_ENABLED(CONFIG_PREEMPT) ? " PREEMPT" : "",
|
IS_ENABLED(CONFIG_PREEMPT) ? " PREEMPT" : "",
|
||||||
IS_ENABLED(CONFIG_SMP) ? " SMP" : "",
|
IS_ENABLED(CONFIG_SMP) ? " SMP" : "",
|
||||||
debug_pagealloc_enabled() ? " DEBUG_PAGEALLOC" : "",
|
debug_pagealloc_enabled() ? " DEBUG_PAGEALLOC" : "",
|
||||||
IS_ENABLED(CONFIG_KASAN) ? " KASAN" : "");
|
IS_ENABLED(CONFIG_KASAN) ? " KASAN" : "",
|
||||||
|
IS_ENABLED(CONFIG_PAGE_TABLE_ISOLATION) ?
|
||||||
|
(boot_cpu_has(X86_FEATURE_PTI) ? " PTI" : " NOPTI") : "");
|
||||||
|
|
||||||
if (notify_die(DIE_OOPS, str, regs, err,
|
if (notify_die(DIE_OOPS, str, regs, err,
|
||||||
current->thread.trap_nr, SIGSEGV) == NOTIFY_STOP)
|
current->thread.trap_nr, SIGSEGV) == NOTIFY_STOP)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user