lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <9b0871e35c3b8c3ec408046d8df777fc7d9c4a30.camel@infradead.org>
Date:   Fri, 22 Sep 2023 16:52:14 +0100
From:   David Woodhouse <dwmw2@...radead.org>
To:     paul@....org, kvm@...r.kernel.org, linux-kernel@...r.kernel.org
Cc:     Paul Durrant <pdurrant@...zon.com>,
        Sean Christopherson <seanjc@...gle.com>,
        Paolo Bonzini <pbonzini@...hat.com>,
        Thomas Gleixner <tglx@...utronix.de>,
        Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
        Dave Hansen <dave.hansen@...ux.intel.com>,
        "H. Peter Anvin" <hpa@...or.com>, x86@...nel.org
Subject: Re: [PATCH v5 07/10] KVM: xen: allow vcpu_info to be mapped by
 fixed HVA

On Fri, 2023-09-22 at 16:49 +0100, Paul Durrant wrote:
> On 22/09/2023 16:44, David Woodhouse wrote:
> > On Fri, 2023-09-22 at 15:00 +0000, Paul Durrant wrote:
> > > From: Paul Durrant <pdurrant@...zon.com>
> > > 
> > > If the guest does not explicitly set the GPA of vcpu_info structure in
> > > memory then, for guests with 32 vCPUs or fewer, the vcpu_info embedded
> > > in the shared_info page may be used. As described in a previous commit,
> > > the shared_info page is an overlay at a fixed HVA within the VMM, so in
> > > this case it also more optimal to activate the vcpu_info cache with a
> > > fixed HVA to avoid unnecessary invalidation if the guest memory layout
> > > is modified.
> > > 
> > > Signed-off-by: Paul Durrant <pdurrant@...zon.com>
> > 
> > But it should *only* be defined as an HVA in the case where it's the
> > one in the shinfo. Otherwise, it's defined by its GPA.
> > 
> > Which almost makes me want to see a sanity check that it precisely
> > equals &shinfo->vcpu_info[vcpu->arch.xen.vcpu_id].
> > 
> > Which brings me back around the circle again to wonder why we don't
> > just *default* to it.... you hate me, don't you?
> > 
> > Your previous set of patches did that, and it did end requiring that
> > the VMM restore both VCPU_INFO and VCPU_ID for each vCPU *before*
> > restoring the SHARED_INFO_HVA on resume, but wasn't that OK?
> > 
> 
> No. It was painful and overly complex, with too many corner cases that 
> were making my brain hurt. Given the pain of the last week, leaving the 
> default handling in the VMM is preferable. It means I don't need to
> impose rules about attribute ordering and hence get caught by needing
> one thread to wait for another inside the VMM. It's better and more 
> robust this way.

Fair enough, I won't argue. That is fairly much the reason I ripped it
out of João's original patch set in the first place :)

Download attachment "smime.p7s" of type "application/pkcs7-signature" (5965 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ