[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7611e818-9e81-1974-1dfa-330a6380c5da@intel.com>
Date: Thu, 22 Sep 2022 13:40:20 +0800
From: Xiaoyao Li <xiaoyao.li@...el.com>
To: Jim Mattson <jmattson@...gle.com>,
Sean Christopherson <seanjc@...gle.com>
Cc: Gerd Hoffmann <kraxel@...hat.com>, kvm@...r.kernel.org,
Paolo Bonzini <pbonzini@...hat.com>,
Wanpeng Li <wanpengli@...cent.com>,
Vitaly Kuznetsov <vkuznets@...hat.com>,
Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
Dave Hansen <dave.hansen@...ux.intel.com>,
"maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" <x86@...nel.org>,
"H. Peter Anvin" <hpa@...or.com>,
"open list:X86 ARCHITECTURE (32-BIT AND 64-BIT)"
<linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] kvm/x86: reserve bit
KVM_HINTS_PHYS_ADDRESS_SIZE_DATA_VALID
On 9/22/2022 12:32 AM, Jim Mattson wrote:
> On Wed, Sep 21, 2022 at 8:00 AM Sean Christopherson <seanjc@...gle.com> wrote:
>>
>> On Wed, Sep 21, 2022, Gerd Hoffmann wrote:
>>> On Fri, Sep 09, 2022 at 07:02:24AM +0200, Gerd Hoffmann wrote:
>>>> On Thu, Sep 08, 2022 at 02:52:36PM +0000, Sean Christopherson wrote:
>>>>> On Thu, Sep 08, 2022, Gerd Hoffmann wrote:
>>>>>> -#define KVM_HINTS_REALTIME 0
>>>>>> +#define KVM_HINTS_REALTIME 0
>>>>>> +#define KVM_HINTS_PHYS_ADDRESS_SIZE_DATA_VALID 1
>>>>>
>>>>> Why does KVM need to get involved? This is purely a userspace problem.
>>>>
>>>> It doesn't. I only need reserve a hints bit, and the canonical source
>>>> for that happens to live in the kernel. That's why this patch doesn't
>>>> touch any actual code ;)
>>
>> The issue is that this "hint" effectively breaks other VMMs that already provide
>> an accurate guest.MAXPHYADDR.
>
> Any VMM that doesn't provide an accurate guest.MAXPHYADDR is broken.
I stand for it as well.
To me, it looks an old QEMU bug and firmware provided a workaround for
the bug that doesn't trust guest's CPUID.0x80000008. IMHO, (guest)
firmware should always trust CPUID and error out if MAXPHYADDR reported
from CPUID is broken to force VMM fixing itself to provide correct CPUID
info. But letting firmware drop the workaround surely breaks backwards
compatibility.
> Why do we need a "hint" that the virtual processor works?
Powered by blists - more mailing lists