x86/mm: Disable various instrumentations of mm/mem_encrypt.c and mm/tlb.c
authorTom Lendacky <thomas.lendacky@amd.com>
Tue, 10 Oct 2017 19:45:04 +0000 (14:45 -0500)
committerIngo Molnar <mingo@kernel.org>
Wed, 11 Oct 2017 15:22:59 +0000 (17:22 +0200)
commit67bb8e999e0aeac285d22f0e53c856b9df5282c6
tree1bd5abf67dfc0245718d5edf3ff8d531355f6a50
parentab7ff471aa5db670197070760f022622793da7e5
x86/mm: Disable various instrumentations of mm/mem_encrypt.c and mm/tlb.c

Some routines in mem_encrypt.c are called very early in the boot process,
e.g. sme_enable().  When CONFIG_KCOV=y is defined the resulting code added
to sme_enable() (and others) for KCOV instrumentation results in a kernel
crash.  Disable the KCOV instrumentation for mem_encrypt.c by adding
KCOV_INSTRUMENT_mem_encrypt.o := n to arch/x86/mm/Makefile.

In order to avoid other possible early boot issues, model mem_encrypt.c
after head64.c in regards to tools. In addition to disabling KCOV as
stated above and a previous patch that disables branch profiling, also
remove the "-pg" CFLAG if CONFIG_FUNCTION_TRACER is enabled and set
KASAN_SANITIZE to "n", each of which are done on a file basis.

Reported-by: kernel test robot <lkp@01.org>
Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Reviewed-by: Borislav Petkov <bp@suse.de>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/20171010194504.18887.38053.stgit@tlendack-t1.amdoffice.net
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/mm/Makefile