Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp4189816ybx; Mon, 4 Nov 2019 09:12:51 -0800 (PST) X-Google-Smtp-Source: APXvYqzJhAzdg8Q8JE0/UEw0chn4sVsc/+w+M6nSoC4vkpWw4+BegBVEi3Y475zF8jFEP2ah44aU X-Received: by 2002:a05:6402:168b:: with SMTP id a11mr2172546edv.107.1572887570954; Mon, 04 Nov 2019 09:12:50 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1572887570; cv=none; d=google.com; s=arc-20160816; b=unFsF/sVCgsdCfnuOn5v6AJRLB/VKdIlS/DVONrjCAZKB9ifim7xYenPe8h1G3UvYC /HSCw/6o62va3lxnGIqVadozHLyGStLv7yyDUpEwGHWU8BJBBbkdv32R7MKhDXKcHoPB c6vmnhEdjlIC4ZjGPg1SzeMeg9AJEXbShoFty+Io4xyIgblvJlDZN30cXmUww2VA7n/K Qknm1IWHqM7Tp6tkITUII+sSI82ovVD4nEh2SD4eBBYaDCoqQMON07Iq+qC68MF+xbwJ wNehml596zQ0hcAWopial68xFWm1A6qN+YrPSWNkrW01GrEr6aw+RIZ4r7JVyDwtqeeG cYsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=AFCyhfelO3j7MuLAQsQoURpCMb7gOz+8OBk8h5LlIls=; b=ftpF2G31c052b0ucqNLDXu4grhbL+k5xbvQRTUbiNoJhNdabN17Wkh2ZShcHeLeTdv TlNf5UinVexUBG4d8t44lybjK/3F/Z0UHSeJBImaSxLAjNVuQpz94rMH4sJL0lbJkThi C4TyApjdhLFd8t7wdL4k3chiptwlj/pw8lcjByExZMse+JOM05MXcpyvWjHxaMo1h3Id lX32f+ky/9iH24SwKMzDXf5vCuTLD6XeEGwRg/3dDZcTDmINKBMNLtWYsQcsdAZJDs5D l9aAhYT8id9LHsemf5yvZhKL1Sos8Nzd1CX5AZz+lMrK1vNFSbPrD96Q8al0kf+dy103 kIhw== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id um11si11469635ejb.263.2019.11.04.09.12.26; Mon, 04 Nov 2019 09:12:50 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728409AbfKDRLj (ORCPT + 99 others); Mon, 4 Nov 2019 12:11:39 -0500 Received: from foss.arm.com ([217.140.110.172]:47602 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727998AbfKDRLj (ORCPT ); Mon, 4 Nov 2019 12:11:39 -0500 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D601A1F1; Mon, 4 Nov 2019 09:11:37 -0800 (PST) Received: from lakrids.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 94DE93F71A; Mon, 4 Nov 2019 09:11:35 -0800 (PST) Date: Mon, 4 Nov 2019 17:11:33 +0000 From: Mark Rutland To: Sami Tolvanen Cc: Will Deacon , Catalin Marinas , Steven Rostedt , Masami Hiramatsu , Ard Biesheuvel , 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 Subject: Re: [PATCH v4 11/17] arm64: disable function graph tracing with SCS Message-ID: <20191104171132.GB2024@lakrids.cambridge.arm.com> References: <20191018161033.261971-1-samitolvanen@google.com> <20191101221150.116536-1-samitolvanen@google.com> <20191101221150.116536-12-samitolvanen@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20191101221150.116536-12-samitolvanen@google.com> User-Agent: Mutt/1.11.1+11 (2f07cb52) (2018-12-01) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Nov 01, 2019 at 03:11:44PM -0700, Sami Tolvanen wrote: > With CONFIG_FUNCTION_GRAPH_TRACER, function return addresses are > modified in ftrace_graph_caller and prepare_ftrace_return to redirect > control flow to ftrace_return_to_handler. This is incompatible with > SCS. Can you please elaborate on _how_ this is incompatible in the commit message? For example, it's not clear to me if you mean that's functionally incompatible, or if you're trying to remove return-altering gadgets. If there's a functional incompatibility, please spell that out a bit more clearly. Likewise if this is about minimizing the set of places that can mess with control-flow outside of usual function conventions. Thanks, Mark. > > 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 e7b57a8a5531..42867174920f 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 >