Received: by 2002:a25:31c3:0:0:0:0:0 with SMTP id x186csp1318200ybx; Tue, 5 Nov 2019 14:09:06 -0800 (PST) X-Google-Smtp-Source: APXvYqwULWKPNY+1fyRYRF6rQp9fa9WJ/KoRM1ezylb+coPpNy5ptmUcQwD9XEk3hv/6UNn0217A X-Received: by 2002:a17:906:4d93:: with SMTP id s19mr20896923eju.285.1572991746534; Tue, 05 Nov 2019 14:09:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1572991746; cv=none; d=google.com; s=arc-20160816; b=teSKrW8dBUrIIbFFGmr24yYm04rub2zy/B+h5vxqHFmprKOKsHuo4mGx67FONCAxiB 6l7aQ/EtZyKv1mlpDl2tmk4ZvCPqx5pg6qMqXkdsFx1EJk2RQGIAnDYNYV7O3Yj9gJs6 QNwQUj4CCnztXVim/kKJSH8Y8vnsxyWdwBjt5g89w+BN4MreMNug0FsouTsyMuO4UyHk ssYlpW3vN7Du9LQ5fB9lpwfSDa9ol6JilmNvTL1GracgmUlDldbPD5WJuPACjU8lCyX3 cAXtcGSpNlvWDu8qRgH7TCW/feYMtiKVzHV9atoo0WcGlVIw+09hwGHVZn6et9i8w/zt J6mw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=BNIM3D66/Azg3YbAGxb2zW1QAG5fW9Q4vvlsSYbe2Go=; b=fQc7gksZSvB58yt4pWHxsCGLiMiaY2yzQqZJz2ZzFjPBlcIV/Sd/vZRvb7e7V0lr4V nG7K36jL33r1vIf0JU7pwaQ5bUQLoACe0WsaiL3SVT0JR4WvQahIGCmpKud/YtHYOqYD DxIb1E1eGg7nrjVvBjyYm2RIDgNA2K9+c6O4OhJiHhR6tLmz2fx6D6NfGiCO2qZHKwpB 5/EoUdHSSmJ7cObFBTnqNeYZJdgcKTKeUk2y5rU2NZjo5UjZNeVGmIbRG9gEAFPThVRX go+7BnL4Gjgn89smznwUPm0JrBMe4MFPi4QALot14N4r+EN55Z+3Zt8GhOx31QNy0N14 sklA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=khVLBRWV; 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 y31si10933592edb.47.2019.11.05.14.08.43; Tue, 05 Nov 2019 14:09:06 -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=khVLBRWV; 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 S1730280AbfKEWFx (ORCPT + 99 others); Tue, 5 Nov 2019 17:05:53 -0500 Received: from mail-vs1-f68.google.com ([209.85.217.68]:36607 "EHLO mail-vs1-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730237AbfKEWFw (ORCPT ); Tue, 5 Nov 2019 17:05:52 -0500 Received: by mail-vs1-f68.google.com with SMTP id q21so14567472vsg.3 for ; Tue, 05 Nov 2019 14:05:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=BNIM3D66/Azg3YbAGxb2zW1QAG5fW9Q4vvlsSYbe2Go=; b=khVLBRWVxusf3aE0M5MrKx62Oe++CuRS+KMSKCuHE7JSxqPvv2VfNvIiZ4cxk9GprW abw7Gs5M44bJuTVgw8PeUbndm2GiKrPoGbtyG/1HyRFaCzIOPEvYaVpS47QGYbLxkN1k EhThQrckqd60eakMb3jq5ZvCpR+VWe7Rej+ktXn0G3ta4gTbl/rrlXA8Y/44FW6JNSva pXUTC0+JvRcq9/KOBxri17FvlBBWvc82WQme0i84hDJ6MCbHKa3Oj1yxPUj03p0Jrm+P ZOG1XOCcRDguAkyTbMvWk3Kc/XSmYgXExORncmzkrxKjVxBgHL6PNlkGOiIRVmIy3BXP G/1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=BNIM3D66/Azg3YbAGxb2zW1QAG5fW9Q4vvlsSYbe2Go=; b=UyiVt3k8Hr9diSRaxOs0YYCtcQwr59cnwv6RHrN3iizGY3OwREpJhmPWzgsc6rkBFL go7lNf9221rVgjm3pX+Quss4owiQr5IhmyexJ/huG+Yw9lHeamTAyReifyAOQ7Wx45ts Y7JOTpMkRiRaupYtw7Eu51wxS7x2YfAk16mzy02ClCn4gaVBiur/VwGk7Om21/e2cNKT +22P0Tg9Xp1tMbXKCJzhoBs9A+qe+e2aJawCJjiu8rxFhjcSjy7zE86CT0NW874EmOhz nbyYkKKi1/UlHya06V7S2Rp04jUiWma1as1PAIH6Sq8EURZJ1Hthd2FArZ4pAHCHSUGM vx1A== X-Gm-Message-State: APjAAAU9k+fD9T73w286FBSxYffRIWtoKdJ41Lqvl4mZip8D7oLvtl6x WYAZ2r/SpnA5rgnIhSafvpfMr/qtaDvxbsZo2nsNOg== X-Received: by 2002:a05:6102:36a:: with SMTP id f10mr116554vsa.44.1572991551050; Tue, 05 Nov 2019 14:05:51 -0800 (PST) MIME-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20191101221150.116536-1-samitolvanen@google.com> <20191101221150.116536-12-samitolvanen@google.com> <20191104171132.GB2024@lakrids.cambridge.arm.com> <20191105091301.GB4743@lakrids.cambridge.arm.com> In-Reply-To: <20191105091301.GB4743@lakrids.cambridge.arm.com> From: Sami Tolvanen Date: Tue, 5 Nov 2019 14:05:39 -0800 Message-ID: Subject: Re: [PATCH v4 11/17] arm64: disable function graph tracing with SCS To: Mark Rutland 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 , Kernel Hardening , linux-arm-kernel , LKML 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 On Tue, Nov 5, 2019 at 11:55 AM Mark Rutland wrote: > On Mon, Nov 04, 2019 at 03:44:39PM -0800, Sami Tolvanen wrote: > > Sure, I'll add a better description in v5. In this case, the return > > address is modified in the kernel stack, which means the changes are > > ignored with SCS. > > Ok, that makes sense to me. I'd suggest something like: > > | 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. > > ... as I suspect with some rework of the trampoline and common ftrace > code we'd be able to correctly manipulate the shadow stack for this. > Similarly, if clang gained -fpatchable-funciton-etnry, we'd get that for > free. That sounds good to me. Thanks, Mark. Sami