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=-11.0 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS 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 775C6C2BB40 for ; Mon, 14 Dec 2020 20:10:02 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 382512168B for ; Mon, 14 Dec 2020 20:10:02 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2503012AbgLNUJu (ORCPT ); Mon, 14 Dec 2020 15:09:50 -0500 Received: from mail.kernel.org ([198.145.29.99]:52990 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2502928AbgLNUJl (ORCPT ); Mon, 14 Dec 2020 15:09:41 -0500 X-Gm-Message-State: AOAM5308UP0otOf2o58CijEzVk4jm6CA1/JIESbew5u0MudRS9fCRb42 0IMbYHy2soJqxUe557yJ0uBb7t72OGUr9wKtZcpJEQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1607976536; bh=TKXksRv4ElF9AR3si5HqiL6XEICDaC1eW6DKF5Yk5Nk=; h=References:In-Reply-To:From:Date:Subject:To:Cc:From; b=QOZ0wCL66CxwTTlRa/NS+nrpGvypaHF5U2FkR7s46wXEqpK5doz0RHRd6vBDWxAW4 r7o2gYJJ3PZ2JTm256hffJi2nnEYsxtonMmB8SaqDdO1D9KVE8aeCSVRlyIk2MxfVb Nq7AzKaiL+jQMb1KbIe0+9vqI49QiXEfr0Jx+ysDldQ2v9nLDsqDDP45jkp6hGqJmh OmclkJgtB3plm4vK9rJZP8TDO2KrznTZQIfetLf1jytUj0qxnD0WemIA3orcCM/Nsi SdSTrRF7A7izUkbQyZ6pjpcjAsByJhAbPaFoX+rlVa5IdvV17KSt3jHksCfM1hKzwi goE8MOceTDNhQ== X-Google-Smtp-Source: ABdhPJzEJCSPXY2rUKyPY8ufvSSaC7eN1NemTVxh2DRY99B3QhCMzO9GGlPQhf2oE3i3ROdM3GOqRO73gdr+pCkLQzc= X-Received: by 2002:a5d:43c3:: with SMTP id v3mr6339473wrr.184.1607976534234; Mon, 14 Dec 2020 12:08:54 -0800 (PST) MIME-Version: 1.0 References: <20201214174127.1398114-1-michael.roth@amd.com> In-Reply-To: From: Andy Lutomirski Date: Mon, 14 Dec 2020 12:08:42 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v2] KVM: SVM: use vmsave/vmload for saving/restoring additional host state To: Sean Christopherson Cc: Michael Roth , kvm list , Paolo Bonzini , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , Thomas Gleixner , Ingo Molnar , Borislav Petkov , X86 ML , "H . Peter Anvin" , LKML , Tom Lendacky , Andy Lutomirski Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Dec 14, 2020 at 11:38 AM Sean Christopherson wrote: > > +Andy, who provided a lot of feedback on v1. > > > > > static unsigned long svm_get_rflags(struct kvm_vcpu *vcpu) > > @@ -3507,14 +3503,8 @@ static noinstr void svm_vcpu_enter_exit(struct kvm_vcpu *vcpu, > > > > __svm_vcpu_run(svm->vmcb_pa, (unsigned long *)&svm->vcpu.arch.regs); > > Tying in with avoiding svm->host_save_area, what about passing in the PA of the > save area and doing the vmload in __svm_vcpu_run()? One less instance of inline > assembly to stare at... One potential side benefit is that we wouldn't execute any C code with the wrong MSR_GS_BASE, which avoids any concerns about instrumentation, stack protector, or some *SAN feature exploding due to a percpu memory not working. --Andy