From acd44754dda18795ccdf85260a422ec9dfe08d82 Mon Sep 17 00:00:00 2001 From: Sami Tolvanen Date: Wed, 5 Sep 2018 15:23:18 -0700 Subject: [PATCH] FROMLIST: arm64: disable function graph tracing with SCS The graph tracer hooks returns by modifying frame records on the (regular) stack, but with SCS the return address is taken from the shadow stack, and the value in the frame record has no effect. As we don't currently have a mechanism to determine the corresponding slot on the shadow stack (and to pass this through the ftrace infrastructure), for now let's disable the graph tracer when SCS is enabled. Bug: 145210207 Change-Id: I65dd098be827121ecf0c08538b11e3b98f5eacde (am from https://lore.kernel.org/patchwork/patch/1149057/) Reviewed-by: Kees Cook Reviewed-by: Mark Rutland Signed-off-by: Sami Tolvanen --- arch/arm64/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index 301a2b136b48..af5177003861 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@ -148,7 +148,7 @@ config ARM64 select HAVE_FTRACE_MCOUNT_RECORD select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_ERROR_INJECTION - select HAVE_FUNCTION_GRAPH_TRACER + select HAVE_FUNCTION_GRAPH_TRACER if !SHADOW_CALL_STACK select HAVE_GCC_PLUGINS select HAVE_HW_BREAKPOINT if PERF_EVENTS select HAVE_IRQ_TIME_ACCOUNTING