Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp1416344ybx; Tue, 5 Nov 2019 15:58:00 -0800 (PST) X-Google-Smtp-Source: APXvYqw4j71gy//Nk5oTaDV7MQ6w9hnEauwcn5XFBfZP+wjse3NfReMKxdE92F1W2c1tlYfOfTzK X-Received: by 2002:a17:906:7344:: with SMTP id h4mr1122124ejl.30.1572998280173; Tue, 05 Nov 2019 15:58:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1572998280; cv=none; d=google.com; s=arc-20160816; b=vokttirf+J2nDLuEuU3T7k8eOT9yvXt99Yq0rkoeFU0gVcuY9jrK6iFP6PvDz2z2uK o8xGZf5NsKaPcYIXaETjNxVW3uXDbKo43PsmgHiD3aXn4RTJHzleNVnTOiU7JmIRzR4X 2TfSyb9UE+dPVJnyFur0eSVItAaGK55tLrucvXNCNtVL1/prC37GIU8BGLqpSNy1SrKM 36DWGNNyMjBmjed4BOJW5EUXOzUnSvUimOn3KRK8eJjIAkEm6O0PDFgwT7kWDshtYbYr PBxfv0wGXTIv1sT+GBMEgupMq6SKdxECEmOlEKi32gVuvzTMM2I/U+8zntb67sD4Tv0r ACiw== 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=m4cUlF+6BFA5FNFSy/SkP+A5WQosIpsKOuqRDiNS4Fs=; b=dgorQgyHP8+aL3Gx/AtVmctXOGin98/pArqj3vu6X7lV3KHDjNR5pcdmylZppJYkCL TlRnp6m7SegLnyp5DSOE+ZzebLq6chGh0OWAOlWingRO5Dts2UFQMkl35yYoBocd6Ta7 5T7QlvfUn38E/AyvThsT0xmrJM2lUoLvQthg4zs5IJ96dNw73mWhxdODc79cSMj+A+X2 Bfk/SnXEnyyq5WbKJrM2FrRtgBKHHj9DY6Dncl2a6ooU0dyDF6aCR4HUDn7gI9Aa29t8 la40rsJ007wCexNfRt5GYWTKKVkJe+lsy5ilJp93vjPyWQAJsdvRO0z5uiK5N9qMWdz6 Rw+A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=MkeBlqOT; 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 ce11si11572595edb.391.2019.11.05.15.57.37; Tue, 05 Nov 2019 15:58:00 -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=MkeBlqOT; 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 S2387536AbfKEX4m (ORCPT + 99 others); Tue, 5 Nov 2019 18:56:42 -0500 Received: from mail-pf1-f202.google.com ([209.85.210.202]:34730 "EHLO mail-pf1-f202.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387453AbfKEX4i (ORCPT ); Tue, 5 Nov 2019 18:56:38 -0500 Received: by mail-pf1-f202.google.com with SMTP id a1so17498601pfn.1 for ; Tue, 05 Nov 2019 15:56:38 -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=m4cUlF+6BFA5FNFSy/SkP+A5WQosIpsKOuqRDiNS4Fs=; b=MkeBlqOT1wtRB47pSUzDXD8m2gj/abIK7oOlbgO8kye4NcSoywAeU5ZtSxATJfMS2n sLQRqxnA5iMAtD4OVyCqAKV61xGoMEiKHHv5WZLdZGpXH5vTzfmZlcB9JqF0UIw0+fxi c3v/IzYD4RKwck3PyJuzlC7Jvs44fd+x/pfQVweb8C0DMCYwaLsC3QIombbYFjvnDAcI 6fAyLaVNPBEmDJx0XgWILXvjSQ16pLXXh8OX20eaMdKqUAUb/IPjwkwA5StaodCgnT6k fOX3eGQKvjofeZjc0oKfmlzFJBlDBOoEIoLe2boRm/0W+bt6Nlx8c29PhG3Gh4cKijCZ KWjw== 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=m4cUlF+6BFA5FNFSy/SkP+A5WQosIpsKOuqRDiNS4Fs=; b=PXXaWFqLhWjxapNG22wrCHmUqShAdkG2/8DAEoYQ2WuNTggaeyCADKuEyX5ApKIOuK BRoihnUmdktMc9aiIEUmib7Ym6wSqWD5kj9+tKkgftFo3XfC5raX4lHF0nnuZhG1RFNw 7+zR9Iv1eM+0vm/qMK/uVRLUT8x3QQwGCuKXBGEMHZTHQIjeoqSHRtR6tEAK6H81DAE+ bB1FqTA/icoZpvWit8TyJCSRqx8Ec9yYWuBtH+s2CivYAj/ZQOphdkS56jAQmtCAG6Sj cnJ6VMV1fVtF7xcDjfnQWrqyggYa6bwISrVJoSXZa32eXPer3BtBHMQU5k/oUi13bQdw XbiQ== X-Gm-Message-State: APjAAAUCT+EMigKx6JfEqCnSwODAJ1hZMPc5FfdO2z53SbY1Y6S6qWY4 0dVTw2BfV18GUoOp0etb58DHZUFZQNc8YKbOw1U= X-Received: by 2002:a63:c40e:: with SMTP id h14mr39330366pgd.254.1572998197596; Tue, 05 Nov 2019 15:56:37 -0800 (PST) Date: Tue, 5 Nov 2019 15:56:02 -0800 In-Reply-To: <20191105235608.107702-1-samitolvanen@google.com> Message-Id: <20191105235608.107702-9-samitolvanen@google.com> Mime-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20191105235608.107702-1-samitolvanen@google.com> X-Mailer: git-send-email 2.24.0.rc1.363.gb1bccd3e3d-goog Subject: [PATCH v5 08/14] arm64: disable function graph tracing with SCS From: Sami Tolvanen To: Will Deacon , Catalin Marinas , Steven Rostedt , Masami Hiramatsu , Ard Biesheuvel Cc: Dave Martin , Kees Cook , Laura Abbott , Mark Rutland , 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 the graph tracer when SCS is enabled. Signed-off-by: Sami Tolvanen Reviewed-by: Kees Cook --- arch/arm64/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index 3f047afb982c..8cda176dad9a 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 -- 2.24.0.rc1.363.gb1bccd3e3d-goog