From patchwork Tue Jun 8 14:11:33 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Fuad Tabba X-Patchwork-Id: 12306921 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=-16.9 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_ADSP_CUSTOM_MED,DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham 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 7990FC47082 for ; Tue, 8 Jun 2021 14:14:41 +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 4745061375 for ; Tue, 8 Jun 2021 14:14:41 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4745061375 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+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.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:From:Subject:References: Mime-Version:Message-Id:In-Reply-To:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=VnkJAtfNQZHzMvPlYJxwCiisFS5lV643VkSRvuUsR+0=; b=vstMRNxL0hKoE9NYVFLsOYVBcp mvfYfTMmEX5b8M5EICcd97G8WqoMTDz2T1c7ubJncCzQJlsTh0MyVeJuO2Y+NdnP6wnhAFbIi52fd F2fsWBw+VJ0OwJwHA5uNLyEG1w6sCxU2x16HnkbVXdKf8sSaJ857x/qJy1BP7WYahsVydlqBnNcCY TK7OfXy4nhGOhLBk9ZjSkn0+Fc6TEOz7YqDXQIm+Bepvb6GO0LjdTdbo/ioGcZVnTMk3by4KYqbwW AN6KnfIBkWfvd39oWqTgLsA8rmeb5A9uZxiMb7j25QPK6nnJ3XDl3UIBGTkNbR0Y8R1mnmy/iUQGI PDzb483A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1lqcT2-008nmU-LZ; Tue, 08 Jun 2021 14:12:33 +0000 Received: from mail-qv1-xf4a.google.com ([2607:f8b0:4864:20::f4a]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1lqcSS-008n63-Fg for linux-arm-kernel@lists.infradead.org; Tue, 08 Jun 2021 14:11:57 +0000 Received: by mail-qv1-xf4a.google.com with SMTP id ea18-20020ad458b20000b0290215c367b5d3so12033962qvb.3 for ; Tue, 08 Jun 2021 07:11:54 -0700 (PDT) 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=OBCO8s7Q80TfIlYuHTY4iy7nv5Rn/TiuCTrWSGUfF4U=; b=MoN4dps2ZTiPTKGBh1DVK9lwFJTRIyDyKRLCpLXV0gGTuXNVM5oXgyybTxV78acvH9 fmFH2/TjUq75AWlp90FL2RzjzX9DfTOaGv2hP4i8uDJkHZYYh77M36HhqKThDgAQZ2no BUvyK8pOBzafiWSLbVFaEOU7hgqrIti+8IY4k2O2OYD//GtCIV1N7lAPk3t7vxb4of3i /YgIbP82T1qX3gK2BySKmqvaFjzvirQXKrTxDrA1lmvzTL75VTaw/2y8GmIwIeYU65wZ /mv0qdGNjRaNHYaY3OaHbtt0bsiGXJSLGnhG31ewUUN5eppwZQZlHWfTCT7rHFB+vGY1 Y3Cw== 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=OBCO8s7Q80TfIlYuHTY4iy7nv5Rn/TiuCTrWSGUfF4U=; b=p8sSfaLbhtuAWF5S90DLOFHkINnW/WgU4Htv3DG2VlfsypAmAG24jdzZbw5KPX49FB AJSMDUOYqoRHKf6aymj9acHP7Kls32kRardIhFQJnzfwP2O7IHAy1IqNRgoookkoah9H 096kc+u4EEhueS3pV12nO5tMldo1eQhohvUfIAVcJyRq/BkD292lSazh1alUufA4RbIY 7mODGFWwi/GdHJa8orcCFJmZzKmuwN/wFM62H8HDFPhFgVWyIV+3hpMD0uc2/epKosW3 qqkbyrt8B10JU9YhgGuzvFwZQ7fmYgqTIMemLmJVGddWNFQiWJeYnf+4QHliNmRYfgil w5bg== X-Gm-Message-State: AOAM531eDqPO6gW0uk3iUmOjACrV/S8bP/bPRZaC8puWEGMJv7HKQG75 L0n8jWIYoCxE2nixZ1wnfWcdDnhmOg== X-Google-Smtp-Source: ABdhPJxpGX73Z52hJxsj2Po6OlxesU18A3epNjEVGsZ9aSHXe5Ja52uB1RBv+GOJBxo8uI4KoiZL7yHnUA== X-Received: from tabba.c.googlers.com ([fda3:e722:ac3:cc00:28:9cb1:c0a8:482]) (user=tabba job=sendgmr) by 2002:a0c:fa4a:: with SMTP id k10mr203538qvo.18.1623161513492; Tue, 08 Jun 2021 07:11:53 -0700 (PDT) Date: Tue, 8 Jun 2021 15:11:33 +0100 In-Reply-To: <20210608141141.997398-1-tabba@google.com> Message-Id: <20210608141141.997398-6-tabba@google.com> Mime-Version: 1.0 References: <20210608141141.997398-1-tabba@google.com> X-Mailer: git-send-email 2.32.0.rc1.229.g3e70b5a671-goog Subject: [PATCH v1 05/13] KVM: arm64: Restore mdcr_el2 from vcpu From: Fuad Tabba To: kvmarm@lists.cs.columbia.edu Cc: maz@kernel.org, will@kernel.org, james.morse@arm.com, alexandru.elisei@arm.com, suzuki.poulose@arm.com, mark.rutland@arm.com, christoffer.dall@arm.com, pbonzini@redhat.com, qperret@google.com, kvm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kernel-team@android.com, tabba@google.com X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210608_071156_550949_F0F3B3AA X-CRM114-Status: GOOD ( 13.36 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On deactivating traps, restore the value of mdcr_el2 from the vcpu context, rather than directly reading the hardware register. Currently, the two values are the same, i.e., the hardware register and the vcpu one. A future patch will be changing the value of mdcr_el2 on activating traps, and this ensures that its value will be restored. No functional change intended. Signed-off-by: Fuad Tabba --- arch/arm64/kvm/hyp/nvhe/switch.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/kvm/hyp/nvhe/switch.c b/arch/arm64/kvm/hyp/nvhe/switch.c index f7af9688c1f7..430b5bae8761 100644 --- a/arch/arm64/kvm/hyp/nvhe/switch.c +++ b/arch/arm64/kvm/hyp/nvhe/switch.c @@ -73,7 +73,7 @@ static void __deactivate_traps(struct kvm_vcpu *vcpu) ___deactivate_traps(vcpu); - mdcr_el2 = read_sysreg(mdcr_el2); + mdcr_el2 = vcpu->arch.mdcr_el2; if (cpus_have_final_cap(ARM64_WORKAROUND_SPECULATIVE_AT)) { u64 val;