Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp722725ybl; Tue, 28 Jan 2020 10:51:04 -0800 (PST) X-Google-Smtp-Source: APXvYqzCAlLfS79/odkZAB5TKA3o1qZ+qE5rMXtGvuPQUq+VbKcBtzI42THx0kh6e6X9Z7ZAq4ZO X-Received: by 2002:a9d:634e:: with SMTP id y14mr18071099otk.162.1580237464116; Tue, 28 Jan 2020 10:51:04 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580237464; cv=none; d=google.com; s=arc-20160816; b=T/u8DedUw8ldDYaCUlt+zh3+0g+hwewOaW9riHkq2Gts3kq3o/V2JTIRVWbppz641R aO8+fv1ZiHnx9+Rc4OFGwdKmakkpWXMWUELEvnZysjuXXG+UUIhX2keutePFkrdO6Ps+ PA+bXUhM+SkMbxMe4KbGH6Kpmuff6pFw0TGBmicxWj0ZV5vZ8lnacCE4OfgWNl25fjAe 7gcJYVdt/2r5Lmqz15+eM22I/i2+osGWCJhBM3wDWOQ1FQ4hOOosYfWcWWyf+DP4grct myfBaOANmUwAhP9C4xhchxNmHbmQa/RXHGPq16Yao+N0Z6LLBrzgnOyL5QNwnNSBzeps 4w/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:from:subject:references :mime-version:message-id:in-reply-to:date:dkim-signature; bh=nYqHbjkvd1RNJgGQNDuWHkkD/vAdL1upqEsqEeQXJo8=; b=B3z3OiHP+c6IvYCfs/0SMdbcY5iRtgfRoXim9J2DPgW2neWUA0W3Vx0j7WgAdEVJax xZCVda1gLe6Qp9o4bxoWA1w79IXDVHymbwAtOj8xtnRioW4e0LdOS9jJCZGpoMkziV/X E7oOkznRhafREP4dyRRKArXsfAGghj9fHCkeub45RfImtQVoamxnLL/It/gB2ggPMEdK ttiwmHTr17omDBVRSkL8JU2QhCT0WLtQ5kKEqE4q4g6hE/mt9cVxQAiWS6tdUv9zp6Ph xfRVa1+7d9LcHL2BVtwBGfsyGPhHOwAt8wZWLywYoRIQiYu75KjNurJNX/sXB01BEpzR XU4g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=nTzlXAOc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id k4si753048otp.186.2020.01.28.10.50.50; Tue, 28 Jan 2020 10:51:04 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=nTzlXAOc; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726717AbgA1Stu (ORCPT + 99 others); Tue, 28 Jan 2020 13:49:50 -0500 Received: from mail-pl1-f202.google.com ([209.85.214.202]:45187 "EHLO mail-pl1-f202.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726687AbgA1Stt (ORCPT ); Tue, 28 Jan 2020 13:49:49 -0500 Received: by mail-pl1-f202.google.com with SMTP id 36so3281997plc.12 for ; Tue, 28 Jan 2020 10:49:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc; bh=nYqHbjkvd1RNJgGQNDuWHkkD/vAdL1upqEsqEeQXJo8=; b=nTzlXAOcntXez7Jr3uvwxUmF6fuRm7siV0FVPtZIRsRiYJNBl6ZlwOV/mANhygz8To /ghGtzrTrMWvLahlzphY1v1JAapei6wwGYOCMCsqLWm2q8qFXVo61GhXIQfSeL7poUdj YYtEuNx1U4DjGRuHl/023HxQce14qTvBIBiqQpzqP15KOMH1kLM8Rv9wZbjZiTB64kSU +h0WW/yXKyidH4SedV+F9MUHuIweqEFG+xAYizHw0F6KXAAyVsHvjYJShP+RHUsiQT6G iczyaLXreCbKBqnyCymvBhk48aLizT49PYr2naT9eJbsk7orwZhWsfUOL8SKkJbT1nX8 YpSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc; bh=nYqHbjkvd1RNJgGQNDuWHkkD/vAdL1upqEsqEeQXJo8=; b=ta5VGt903KhBg6A6X0VZdpK9binRucwCHLmu2WK79tis4fM/iOOTAxAvhQ9qBtEtp5 iusNS6sBuJnnbkdNWvNqUbgSQP/+g6o8mK7iISCEOgKed/SaZnD9HcTykdMaIiw2HziN vZJqR2YnKbnrvnx0C2csrYGK54YE+ilUA2nG7Q4H1EUdQNqsFUbUV8gImI1KXSbV8Cdi x9rbffubkmOq1Fil2bBDf3xqJAF+80ZaPH/s+soivq//uBkunVSygSYhKnzex2ZLT5EF IfUWOnVwpOV9FLLL3dvdP4xckPSwwnQ6fqZsZv4E1goBpa30N/cmOf8IXf3DLsFzhOAb SNqw== X-Gm-Message-State: APjAAAXUYe8khOvP4rBrqweAEsOyKKC7UzOuCeAny0H0ENYJCMV8RdRJ 0bYM3KeYSfXEVSK8yFjnxdoDUi8ngjB/EGgV4+4= X-Received: by 2002:a63:5924:: with SMTP id n36mr26520518pgb.43.1580237388946; Tue, 28 Jan 2020 10:49:48 -0800 (PST) Date: Tue, 28 Jan 2020 10:49:27 -0800 In-Reply-To: <20200128184934.77625-1-samitolvanen@google.com> Message-Id: <20200128184934.77625-5-samitolvanen@google.com> Mime-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20200128184934.77625-1-samitolvanen@google.com> X-Mailer: git-send-email 2.25.0.341.g760bfbb309-goog Subject: [PATCH v7 04/11] scs: disable when function graph tracing is enabled From: Sami Tolvanen To: Will Deacon , Catalin Marinas , Steven Rostedt , Masami Hiramatsu , Ard Biesheuvel , Mark Rutland , james.morse@arm.com Cc: Dave Martin , Kees Cook , Laura Abbott , Marc Zyngier , Nick Desaulniers , Jann Horn , Miguel Ojeda , Masahiro Yamada , clang-built-linux@googlegroups.com, kernel-hardening@lists.openwall.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Sami Tolvanen Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 SCS when the graph tracer is enabled. Signed-off-by: Sami Tolvanen --- arch/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/Kconfig b/arch/Kconfig index 1b16aa9a3fe5..0d746373c52e 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -530,6 +530,7 @@ config ARCH_SUPPORTS_SHADOW_CALL_STACK config SHADOW_CALL_STACK bool "Clang Shadow Call Stack" + depends on !FUNCTION_GRAPH_TRACER depends on ARCH_SUPPORTS_SHADOW_CALL_STACK help This option enables Clang's Shadow Call Stack, which uses a -- 2.25.0.341.g760bfbb309-goog