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 A0EE2CA9EA0 for ; Tue, 22 Oct 2019 21:46:01 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 6F1752053B for ; Tue, 22 Oct 2019 21:46:01 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="e7GEnWKd" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733215AbfJVVqA (ORCPT ); Tue, 22 Oct 2019 17:46:00 -0400 Received: from mail-vk1-f193.google.com ([209.85.221.193]:35379 "EHLO mail-vk1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1733177AbfJVVp7 (ORCPT ); Tue, 22 Oct 2019 17:45:59 -0400 Received: by mail-vk1-f193.google.com with SMTP id d66so3960511vka.2 for ; Tue, 22 Oct 2019 14:45:57 -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=aMrKTryhNXEL/B3UTp309ZugYMIYjNFJ3JCQDb7MpUg=; b=e7GEnWKdbrItjF4U3+0nKF/lx06Wuk/tgdQ9ljPjtYqFQxUxKdNDAzX4a3J6VJRTNe fvZtiXWCwgTHkznQdje8cmtubTkLp7iAWQx8JQFReAwrsWNXsaolV9s3JWeGTMMfUgSg /repYwQIO6djr64TXfPZeXSpbh0xxoZWJHDJcfD+y+CBwuzbqN5LUnqOWUTiGUf9R0Qr mx9Cap4UGrAAnISWvG3FD7dZFNO0uJ247ZJQzIRI+2iGU4ea2aaoSxUg8M9zDlq777fS qDyNrdBaDb9pA7+swtiQSKBEfo7e0BGKpeLpbQo3G6PYa3kXJxBuLrIskMILqlTGUpAh 147A== 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=aMrKTryhNXEL/B3UTp309ZugYMIYjNFJ3JCQDb7MpUg=; b=hBdWPHf7A4hMlikAIbQDPmjuLX/w7qrVDSe+/DTZ7Id4dBp5kFkOf/oXGXN9q8HRQK rldMsGJPzodDJlBuFCCW+/qkxM8EU7OD7ap0sd+o6D47sVoKmJrUYngLLX336g2FyLUw z3Rz6mYm3zhKVVSSXnsUritVkMzbydg5PB4Ni+AZi+zpC4l+EpBM9RkXj+VRKUyLlcwS kou3uS/VZsb6l3hAo29YlpWvX+4ZGD7WsxysS+BVHaR2ggs0Qgu+xjLguF+CDdd1J++O f54IGyi21m872MXvKuzRkEL0TryuChCnY07xONQAjdVXUTTUdCrLRDuaAfX9fnRh924W +GTQ== X-Gm-Message-State: APjAAAUq8AaAfK+tr9//pQU/RVIls2+IfL2+pQXDL84mg9dPDLctRDfc oZ9BuXD9FpOFyNE6jNR4HtyXDWgbPPOlzxaVb8BylQ== X-Google-Smtp-Source: APXvYqzBN7l8ISCANHOSmoQVZ7BSwt3ADui9uc+L7MwmUC/V+3k+jtXG0/+Q6ONVrUpOvA8D2yYjNueSFsMjPD9iN3Q= X-Received: by 2002:a1f:a5d8:: with SMTP id o207mr3327674vke.81.1571780756763; Tue, 22 Oct 2019 14:45:56 -0700 (PDT) MIME-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20191018161033.261971-4-samitolvanen@google.com> <20191022182206.0d8b2301@why> In-Reply-To: <20191022182206.0d8b2301@why> From: Sami Tolvanen Date: Tue, 22 Oct 2019 14:45:45 -0700 Message-ID: Subject: Re: [PATCH 03/18] arm64: kvm: stop treating register x18 as caller save To: Marc Zyngier Cc: Will Deacon , Catalin Marinas , Steven Rostedt , Ard Biesheuvel , Mark Rutland , Kees Cook , Kernel Hardening , Nick Desaulniers , LKML , clang-built-linux , Laura Abbott , Dave Martin , linux-arm-kernel 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, Oct 22, 2019 at 10:22 AM Marc Zyngier wrote: > > .macro save_callee_saved_regs ctxt > > + str x18, [\ctxt, #CPU_XREG_OFFSET(18)] > > stp x19, x20, [\ctxt, #CPU_XREG_OFFSET(19)] > > stp x21, x22, [\ctxt, #CPU_XREG_OFFSET(21)] > > stp x23, x24, [\ctxt, #CPU_XREG_OFFSET(23)] > > @@ -38,6 +39,7 @@ > > ldp x25, x26, [\ctxt, #CPU_XREG_OFFSET(25)] > > ldp x27, x28, [\ctxt, #CPU_XREG_OFFSET(27)] > > ldp x29, lr, [\ctxt, #CPU_XREG_OFFSET(29)] > > + ldr x18, [\ctxt, #CPU_XREG_OFFSET(18)] > > There is now an assumption that ctxt is x18 (otherwise why would it be > out of order?). Please add a comment to that effect. > > - // Restore guest regs x19-x29, lr > > + // Restore guest regs x18-x29, lr > > restore_callee_saved_regs x18 > > Or you could elect another register such as x29 as the base, and keep > the above in a reasonable order. I'm fine with either option. Ard, any thoughts? 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 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 6A6CDCA9EA0 for ; Tue, 22 Oct 2019 21:46:05 +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 3B7372054F for ; Tue, 22 Oct 2019 21:46:05 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="dzCw0kXW"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=google.com header.i=@google.com header.b="e7GEnWKd" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3B7372054F 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=qMKv4VWKlGfuGUht/vnQ3AGrR0c2pBrMrz1ZSmqlxAM=; b=dzCw0kXWLb5dEI V0LLxiN3WPQBtaTyraD7Rfb3zE9+9jSTaH7UGr7Q/1OSRWEjEaZSmRPMyAT8BhfCgAZQPPUTSrcYU 0nuJbYMh56UNiXCn02vNlBo2cULwnzlvCt3mw64aHSGwsKatRahiAS+7XV/5rC1TrIdio1YaeYIOd 1CgPNjDONvBlUlXFXIfue8lDsmaq28gPa/UkSEYYV91hYhCx7YEGYNU/dWmEA7h4xGfzqbrC3yY43 8dvPRft/QoTHIxgh9CQ67uiSq5nbpN4FWv4VJE0jVmpn8dLEAYCBK4uqfR2kgE0H+MlpL+n6A2kT9 Wh9wkCr9pZ3QQ+E3JsOQ==; 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 1iN1ye-0004Iw-1j; Tue, 22 Oct 2019 21:46:04 +0000 Received: from mail-vk1-xa44.google.com ([2607:f8b0:4864:20::a44]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1iN1yb-0004Hc-2k for linux-arm-kernel@lists.infradead.org; Tue, 22 Oct 2019 21:46:02 +0000 Received: by mail-vk1-xa44.google.com with SMTP id v78so3964127vke.4 for ; Tue, 22 Oct 2019 14:45:58 -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=aMrKTryhNXEL/B3UTp309ZugYMIYjNFJ3JCQDb7MpUg=; b=e7GEnWKdbrItjF4U3+0nKF/lx06Wuk/tgdQ9ljPjtYqFQxUxKdNDAzX4a3J6VJRTNe fvZtiXWCwgTHkznQdje8cmtubTkLp7iAWQx8JQFReAwrsWNXsaolV9s3JWeGTMMfUgSg /repYwQIO6djr64TXfPZeXSpbh0xxoZWJHDJcfD+y+CBwuzbqN5LUnqOWUTiGUf9R0Qr mx9Cap4UGrAAnISWvG3FD7dZFNO0uJ247ZJQzIRI+2iGU4ea2aaoSxUg8M9zDlq777fS qDyNrdBaDb9pA7+swtiQSKBEfo7e0BGKpeLpbQo3G6PYa3kXJxBuLrIskMILqlTGUpAh 147A== 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=aMrKTryhNXEL/B3UTp309ZugYMIYjNFJ3JCQDb7MpUg=; b=AUWn0AEe+dP77lVOxyckKy8gZFfNreDoVLN9nS7zQTgPLbbH8Zb8ssCP56gJNyYVNU oXjVsLMqdFc/YXryxzCL8R94N7Vzj3cPUYPECXjPKiSUx4MOqCUi8wDLeg8GVROnAcsz j/J0TmfBs4hc/8cMuLlzKGAoX9zFt9cgcAPn3Ww9NGBnURpy0R7eRfJZeaY0YLMSI38D /KYJIhEJuNTECKHAZG2FnpZrt/fqvtDpE5fLBiu/y1skLN0lXDFFJTS2DPy9sKDgVFgk /niYr54yFXK3aEZ9CXQXkatYTCOv1m7YMs7waHkXj5FdfTE+ibme+v5V/UJh3frFsksR n3jw== X-Gm-Message-State: APjAAAU88wlC1p6ln4YuYlZildkk714MGx+8L6zTQaTN7B14lGE6TbMK r/seAbhxQqIl00lt8Els21Be+z9T5PihnSL3PAWI2Q== X-Google-Smtp-Source: APXvYqzBN7l8ISCANHOSmoQVZ7BSwt3ADui9uc+L7MwmUC/V+3k+jtXG0/+Q6ONVrUpOvA8D2yYjNueSFsMjPD9iN3Q= X-Received: by 2002:a1f:a5d8:: with SMTP id o207mr3327674vke.81.1571780756763; Tue, 22 Oct 2019 14:45:56 -0700 (PDT) MIME-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20191018161033.261971-4-samitolvanen@google.com> <20191022182206.0d8b2301@why> In-Reply-To: <20191022182206.0d8b2301@why> From: Sami Tolvanen Date: Tue, 22 Oct 2019 14:45:45 -0700 Message-ID: Subject: Re: [PATCH 03/18] arm64: kvm: stop treating register x18 as caller save To: Marc Zyngier X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20191022_144601_143371_0C20BED9 X-CRM114-Status: GOOD ( 11.84 ) 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 , Catalin Marinas , Kernel Hardening , Nick Desaulniers , LKML , Steven Rostedt , clang-built-linux , Laura Abbott , Will Deacon , Dave Martin , linux-arm-kernel 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 Tue, Oct 22, 2019 at 10:22 AM Marc Zyngier wrote: > > .macro save_callee_saved_regs ctxt > > + str x18, [\ctxt, #CPU_XREG_OFFSET(18)] > > stp x19, x20, [\ctxt, #CPU_XREG_OFFSET(19)] > > stp x21, x22, [\ctxt, #CPU_XREG_OFFSET(21)] > > stp x23, x24, [\ctxt, #CPU_XREG_OFFSET(23)] > > @@ -38,6 +39,7 @@ > > ldp x25, x26, [\ctxt, #CPU_XREG_OFFSET(25)] > > ldp x27, x28, [\ctxt, #CPU_XREG_OFFSET(27)] > > ldp x29, lr, [\ctxt, #CPU_XREG_OFFSET(29)] > > + ldr x18, [\ctxt, #CPU_XREG_OFFSET(18)] > > There is now an assumption that ctxt is x18 (otherwise why would it be > out of order?). Please add a comment to that effect. > > - // Restore guest regs x19-x29, lr > > + // Restore guest regs x18-x29, lr > > restore_callee_saved_regs x18 > > Or you could elect another register such as x29 as the base, and keep > the above in a reasonable order. I'm fine with either option. Ard, any thoughts? 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 33A82CA9EA0 for ; Tue, 22 Oct 2019 21:46:17 +0000 (UTC) Received: from mother.openwall.net (mother.openwall.net [195.42.179.200]) by mail.kernel.org (Postfix) with SMTP id 705532053B for ; Tue, 22 Oct 2019 21:46:16 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="e7GEnWKd" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 705532053B 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-17094-kernel-hardening=archiver.kernel.org@lists.openwall.com Received: (qmail 5912 invoked by uid 550); 22 Oct 2019 21:46:09 -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 5891 invoked from network); 22 Oct 2019 21:46:09 -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=aMrKTryhNXEL/B3UTp309ZugYMIYjNFJ3JCQDb7MpUg=; b=e7GEnWKdbrItjF4U3+0nKF/lx06Wuk/tgdQ9ljPjtYqFQxUxKdNDAzX4a3J6VJRTNe fvZtiXWCwgTHkznQdje8cmtubTkLp7iAWQx8JQFReAwrsWNXsaolV9s3JWeGTMMfUgSg /repYwQIO6djr64TXfPZeXSpbh0xxoZWJHDJcfD+y+CBwuzbqN5LUnqOWUTiGUf9R0Qr mx9Cap4UGrAAnISWvG3FD7dZFNO0uJ247ZJQzIRI+2iGU4ea2aaoSxUg8M9zDlq777fS qDyNrdBaDb9pA7+swtiQSKBEfo7e0BGKpeLpbQo3G6PYa3kXJxBuLrIskMILqlTGUpAh 147A== 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=aMrKTryhNXEL/B3UTp309ZugYMIYjNFJ3JCQDb7MpUg=; b=IrK4g9qIEFE4msW1NDhIyUxfBeSIYtAUudVWifJI2nwq4IisLKop5Winc45MV0ewHH qQoW1a3of8ju4IjByLDAqs8Fpr9KO+NmE6ECwnz/hv8pBT3q0ap1sPzs11jy+sLjV5yx zNdY97aOJX31oNs0wFcOw4+ovePm+YPic1gSEFGWYAydgigo7dZfvvCuuqMYhH8J5plH s1M7XSVac2SepK4jTRrO10Y35Ah6n43l+bsx2teutQpDo/5mSC/ApCdJooJT7HLVWIK+ /+1ZEA5TWU3i7hNa9jK+Y6SA+p2+8UmYi85OorwEBHCAur8U7G4z1e9tGBYQVaqSI6gI IhHw== X-Gm-Message-State: APjAAAXckpyLqFsybh1XjwbE3UlQe2QJkqoaMSuQ+pumeiOe06UVVwQk vYM3gQJX/o1oKUEgQ5r7Xj30mNt+4glrC8bycyVIrg== X-Google-Smtp-Source: APXvYqzBN7l8ISCANHOSmoQVZ7BSwt3ADui9uc+L7MwmUC/V+3k+jtXG0/+Q6ONVrUpOvA8D2yYjNueSFsMjPD9iN3Q= X-Received: by 2002:a1f:a5d8:: with SMTP id o207mr3327674vke.81.1571780756763; Tue, 22 Oct 2019 14:45:56 -0700 (PDT) MIME-Version: 1.0 References: <20191018161033.261971-1-samitolvanen@google.com> <20191018161033.261971-4-samitolvanen@google.com> <20191022182206.0d8b2301@why> In-Reply-To: <20191022182206.0d8b2301@why> From: Sami Tolvanen Date: Tue, 22 Oct 2019 14:45:45 -0700 Message-ID: Subject: Re: [PATCH 03/18] arm64: kvm: stop treating register x18 as caller save To: Marc Zyngier Cc: Will Deacon , Catalin Marinas , Steven Rostedt , Ard Biesheuvel , Mark Rutland , Kees Cook , Kernel Hardening , Nick Desaulniers , LKML , clang-built-linux , Laura Abbott , Dave Martin , linux-arm-kernel Content-Type: text/plain; charset="UTF-8" On Tue, Oct 22, 2019 at 10:22 AM Marc Zyngier wrote: > > .macro save_callee_saved_regs ctxt > > + str x18, [\ctxt, #CPU_XREG_OFFSET(18)] > > stp x19, x20, [\ctxt, #CPU_XREG_OFFSET(19)] > > stp x21, x22, [\ctxt, #CPU_XREG_OFFSET(21)] > > stp x23, x24, [\ctxt, #CPU_XREG_OFFSET(23)] > > @@ -38,6 +39,7 @@ > > ldp x25, x26, [\ctxt, #CPU_XREG_OFFSET(25)] > > ldp x27, x28, [\ctxt, #CPU_XREG_OFFSET(27)] > > ldp x29, lr, [\ctxt, #CPU_XREG_OFFSET(29)] > > + ldr x18, [\ctxt, #CPU_XREG_OFFSET(18)] > > There is now an assumption that ctxt is x18 (otherwise why would it be > out of order?). Please add a comment to that effect. > > - // Restore guest regs x19-x29, lr > > + // Restore guest regs x18-x29, lr > > restore_callee_saved_regs x18 > > Or you could elect another register such as x29 as the base, and keep > the above in a reasonable order. I'm fine with either option. Ard, any thoughts? Sami