From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.4 required=3.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C354FCA9ECB for ; Thu, 31 Oct 2019 17:27:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 921F420650 for ; Thu, 31 Oct 2019 17:27:41 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="uKrGepNX" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728973AbfJaR1k (ORCPT ); Thu, 31 Oct 2019 13:27:40 -0400 Received: from mail-ua1-f65.google.com ([209.85.222.65]:46748 "EHLO mail-ua1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728561AbfJaR1k (ORCPT ); Thu, 31 Oct 2019 13:27:40 -0400 Received: by mail-ua1-f65.google.com with SMTP id i31so659973uae.13 for ; Thu, 31 Oct 2019 10:27:39 -0700 (PDT) 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=46AmydREw6SfU27IOaxxeyDyoZWG9jeVi2WIEFhrMqA=; b=uKrGepNXzPXDPzJbvbemKuf7R6S5LOyd1Myup06RKzLSP2nrNd0gQdYUKo5Mow3DAS +SE7IfD6gsDwY0qy8BSl0pYU8GPWYV87yKCwXeFmUj8tfcvjCxE6XCZvWViSX7BLJr2h JeRICf0gxuCWKgnMwiCuZSLMzerlDUIsThoYOFbNVmV4Iio6o99JIWYLgpdzR7oI4BDx tISF+YHwsfL5BB8DS6m0YqBcFdYRIfZsqtAtZCMGUCUGgOjGgmE4qf5gvZ9MBWNon0hF l2JKhPx8hF2es29OTb38GxXTjoyqOeNJvDE0LRnzacnT1nPR0db8A8Us17QUjMd2B+Rn jUDw== 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=46AmydREw6SfU27IOaxxeyDyoZWG9jeVi2WIEFhrMqA=; b=lT2dbtZ6ORTh+rlD71NXXNgjr2olUht7e6XZSwCVcBCax/NSuyQVghcu1b+jqZs2B/ yZw7X+CHzLb1ihr12axohwTjgiTsSYphjQkGCfsDCW5u8cgqtMJO2QCJvwpmaMnT3vny qi8PhR9VXutB2yBDV6XIIXQ9V81pocM+XrPorgWRGcQkt56EJ0t2C//PVY8juUf5j/e9 lWUk9CTpx2rI2oHZpEK56g1GD2VGZ+HSPRg+cfiqhdGMMGt0s47HpR4ov+0g3GjcmUf9 LhEPw+/W0zNkOI40PFlNmbd+OJTsXXC0n8p1mPrYWA2E6IsfrkqgXDAU99N8aziAdL8n bbcg== X-Gm-Message-State: APjAAAXhrilFQwnygwXWMcDj5FlP28osF3YUq419H4g+/EuwpOZrCCHb w3SnovP/u4CaHhdc03m1k+6skNC5zJOcRCxqlCIRbw== X-Google-Smtp-Source: APXvYqwHBpr5C3UNKE6XLzBUe1Jy/aZ4Jd12qOfI93i2wDsaUH2oAUrgK4KH1mAvPJ/zcWPVngS0f/6vsb1FU+PAYk8= X-Received: by 2002:a9f:3772:: with SMTP id a47mr3382097uae.53.1572542858440; Thu, 31 Oct 2019 10:27:38 -0700 (PDT) MIME-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20191031164637.48901-1-samitolvanen@google.com> <20191031164637.48901-14-samitolvanen@google.com> In-Reply-To: From: Sami Tolvanen Date: Thu, 31 Oct 2019 10:27:26 -0700 Message-ID: Subject: Re: [PATCH v3 13/17] arm64: preserve x18 when CPU is suspended To: Nick Desaulniers Cc: Will Deacon , Catalin Marinas , Steven Rostedt , Masami Hiramatsu , Ard Biesheuvel , Dave Martin , Kees Cook , Laura Abbott , Mark Rutland , Jann Horn , Miguel Ojeda , Masahiro Yamada , clang-built-linux , Kernel Hardening , Linux ARM , 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 Thu, Oct 31, 2019 at 10:18 AM Nick Desaulniers wrote: > > +#ifdef CONFIG_SHADOW_CALL_STACK > > + ldr x18, [x0, #96] > > + str xzr, [x0, #96] > > How come we zero out x0+#96, but not for other offsets? Is this str necessary? It clears the shadow stack pointer from the sleep state buffer, which is not strictly speaking necessary, but leaves one fewer place to find it. Sami From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=DKIMWL_WL_HIGH, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4CF61CA9ECB for ; Thu, 31 Oct 2019 17:27:46 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 2360520650 for ; Thu, 31 Oct 2019 17:27:46 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="MQqTMTkj"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=google.com header.i=@google.com header.b="uKrGepNX" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2360520650 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=yKQQwj0NZ4uMjA3lzRNZxUhVA8Eul5TQ1lP34eBAWbM=; b=MQqTMTkj0tFgaZ zy6SaJkyZu8liYfnwZ7dbW61QWzVxSdE5p5Bsw0QrHbNovHwrzSbpFxCz+3YkIptjH5Ak8PzgRHvk rh7ZA4Je60qfAkSuvkugV7sxYY1tkvY8oxWlzCMpGpYfAXiC+5RmXAbBzYeY7INCJcDmVHTllZWgY 3NSlpA32CTjncwKwtEraV5hBagTbFVDMoeuTdyFJDDZKrQ+HKms/BPvaejxkz0DjZLtJextgJk0gj boiRNm4wUOC4cMGawupyQhd/8Ua4zoP2UVl5JBaIIctKpc7I3gypw3hFp9eaT7NcGR9VTitv2U5uQ xOGBrqj1uSsHFq3q4Glg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1iQEEb-0004o0-OZ; Thu, 31 Oct 2019 17:27:45 +0000 Received: from mail-ua1-x942.google.com ([2607:f8b0:4864:20::942]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1iQEEY-0004mk-NH for linux-arm-kernel@lists.infradead.org; Thu, 31 Oct 2019 17:27:44 +0000 Received: by mail-ua1-x942.google.com with SMTP id o9so380412uat.8 for ; Thu, 31 Oct 2019 10:27:39 -0700 (PDT) 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=46AmydREw6SfU27IOaxxeyDyoZWG9jeVi2WIEFhrMqA=; b=uKrGepNXzPXDPzJbvbemKuf7R6S5LOyd1Myup06RKzLSP2nrNd0gQdYUKo5Mow3DAS +SE7IfD6gsDwY0qy8BSl0pYU8GPWYV87yKCwXeFmUj8tfcvjCxE6XCZvWViSX7BLJr2h JeRICf0gxuCWKgnMwiCuZSLMzerlDUIsThoYOFbNVmV4Iio6o99JIWYLgpdzR7oI4BDx tISF+YHwsfL5BB8DS6m0YqBcFdYRIfZsqtAtZCMGUCUGgOjGgmE4qf5gvZ9MBWNon0hF l2JKhPx8hF2es29OTb38GxXTjoyqOeNJvDE0LRnzacnT1nPR0db8A8Us17QUjMd2B+Rn jUDw== 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=46AmydREw6SfU27IOaxxeyDyoZWG9jeVi2WIEFhrMqA=; b=nmdpMAsMPk8yfN9h5awtA7R36MjIRx9n7Jpg9cNOBohENU5z38ruiO8slupuBJy0TO iIA2Pmj44Cb45OX9VFcHJul4ntsO96NJsduxp0PTjqCnBjYdPzMVP+vFoL4YyfRZ9e3Z +kkqsx/UbGMzAKTATklE3An2RNjo2J1S7v/L96nZl1d858IM1mpwdTUoGs+3eW4uNSXc 4ZG75zZVme43yyV+3rmLj7R7LTlKZmTgqyhMdyPjcwpQIvC/Raxdvko27KXz1guxZpys GmwMHTwPE0okcZps0hpyr+3edT2QLBTJ4scLqwrrSGHA/DPwh1UM1NnWL49Q3jafbExx j7Cg== X-Gm-Message-State: APjAAAVQewfqVH8jvO7dVlWL94mm3fNj4rTTsNdbh/AJbCcuyH75u8lF f3ZpW2DXXyIRExXl4YqayFjarghwbLabli1vybzutw== X-Google-Smtp-Source: APXvYqwHBpr5C3UNKE6XLzBUe1Jy/aZ4Jd12qOfI93i2wDsaUH2oAUrgK4KH1mAvPJ/zcWPVngS0f/6vsb1FU+PAYk8= X-Received: by 2002:a9f:3772:: with SMTP id a47mr3382097uae.53.1572542858440; Thu, 31 Oct 2019 10:27:38 -0700 (PDT) MIME-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20191031164637.48901-1-samitolvanen@google.com> <20191031164637.48901-14-samitolvanen@google.com> In-Reply-To: From: Sami Tolvanen Date: Thu, 31 Oct 2019 10:27:26 -0700 Message-ID: Subject: Re: [PATCH v3 13/17] arm64: preserve x18 when CPU is suspended To: Nick Desaulniers X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20191031_102742_782889_810884DF X-CRM114-Status: UNSURE ( 8.77 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Mark Rutland , Kees Cook , Ard Biesheuvel , Masahiro Yamada , Catalin Marinas , Jann Horn , LKML , Steven Rostedt , Miguel Ojeda , Masami Hiramatsu , clang-built-linux , Kernel Hardening , Laura Abbott , Will Deacon , Dave Martin , Linux ARM Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Thu, Oct 31, 2019 at 10:18 AM Nick Desaulniers wrote: > > +#ifdef CONFIG_SHADOW_CALL_STACK > > + ldr x18, [x0, #96] > > + str xzr, [x0, #96] > > How come we zero out x0+#96, but not for other offsets? Is this str necessary? It clears the shadow stack pointer from the sleep state buffer, which is not strictly speaking necessary, but leaves one fewer place to find it. Sami _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.4 required=3.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 17FA2CA9ECB for ; Thu, 31 Oct 2019 17:27:59 +0000 (UTC) Received: from mother.openwall.net (mother.openwall.net [195.42.179.200]) by mail.kernel.org (Postfix) with SMTP id 5EE412086D for ; Thu, 31 Oct 2019 17:27:58 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="uKrGepNX" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5EE412086D Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=google.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kernel-hardening-return-17205-kernel-hardening=archiver.kernel.org@lists.openwall.com Received: (qmail 7566 invoked by uid 550); 31 Oct 2019 17:27:52 -0000 Mailing-List: contact kernel-hardening-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Received: (qmail 7534 invoked from network); 31 Oct 2019 17:27:51 -0000 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=46AmydREw6SfU27IOaxxeyDyoZWG9jeVi2WIEFhrMqA=; b=uKrGepNXzPXDPzJbvbemKuf7R6S5LOyd1Myup06RKzLSP2nrNd0gQdYUKo5Mow3DAS +SE7IfD6gsDwY0qy8BSl0pYU8GPWYV87yKCwXeFmUj8tfcvjCxE6XCZvWViSX7BLJr2h JeRICf0gxuCWKgnMwiCuZSLMzerlDUIsThoYOFbNVmV4Iio6o99JIWYLgpdzR7oI4BDx tISF+YHwsfL5BB8DS6m0YqBcFdYRIfZsqtAtZCMGUCUGgOjGgmE4qf5gvZ9MBWNon0hF l2JKhPx8hF2es29OTb38GxXTjoyqOeNJvDE0LRnzacnT1nPR0db8A8Us17QUjMd2B+Rn jUDw== 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=46AmydREw6SfU27IOaxxeyDyoZWG9jeVi2WIEFhrMqA=; b=K5RBC7V/byjIlzeFYiND2Bif2AxJmeXraPSzxCf4ss7TD52JJj8KE2mR8YecQrBG14 JZ3Iuc2fQ15YLnBcfwkobf/coAcpj9/iLvs2Att2mnRpQal2Lb8NGM5db6ZT3ldEKpky goxW53sYkKMGZhQeTD4CoAKIZ8Trd7fCr/kd6tUkudr+TfvJAfeQO8ZZZ7bhK2YLcx+O 6ApM3m0bZ+QZlgOfMfegCk5cQLdfcmuE4BRC7S6kyZV5zoTTg+R2UKWfjaQj1tSEMYO6 4Z5RqNSLErWi3SyJxYkGjj6g/bTFzOPG4I0vnOi2Dj4m2XrrmaxRlrfaysIWWHIl7P+4 1x0w== X-Gm-Message-State: APjAAAVDEn0CNNd15I2kQ+UDBpskrq56TIbukOvH8M6wxWQrFziG3KD/ zSw7SLEuD+x3i843VI68dYjHPaESxkn07S5zUOJ7MA== X-Google-Smtp-Source: APXvYqwHBpr5C3UNKE6XLzBUe1Jy/aZ4Jd12qOfI93i2wDsaUH2oAUrgK4KH1mAvPJ/zcWPVngS0f/6vsb1FU+PAYk8= X-Received: by 2002:a9f:3772:: with SMTP id a47mr3382097uae.53.1572542858440; Thu, 31 Oct 2019 10:27:38 -0700 (PDT) MIME-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20191031164637.48901-1-samitolvanen@google.com> <20191031164637.48901-14-samitolvanen@google.com> In-Reply-To: From: Sami Tolvanen Date: Thu, 31 Oct 2019 10:27:26 -0700 Message-ID: Subject: Re: [PATCH v3 13/17] arm64: preserve x18 when CPU is suspended To: Nick Desaulniers Cc: Will Deacon , Catalin Marinas , Steven Rostedt , Masami Hiramatsu , Ard Biesheuvel , Dave Martin , Kees Cook , Laura Abbott , Mark Rutland , Jann Horn , Miguel Ojeda , Masahiro Yamada , clang-built-linux , Kernel Hardening , Linux ARM , LKML Content-Type: text/plain; charset="UTF-8" On Thu, Oct 31, 2019 at 10:18 AM Nick Desaulniers wrote: > > +#ifdef CONFIG_SHADOW_CALL_STACK > > + ldr x18, [x0, #96] > > + str xzr, [x0, #96] > > How come we zero out x0+#96, but not for other offsets? Is this str necessary? It clears the shadow stack pointer from the sleep state buffer, which is not strictly speaking necessary, but leaves one fewer place to find it. Sami