Re: Should KVM_GUEST stop depending on PARAVIRT?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 27, 2015 at 10:49 AM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote:
>
>
> On 27/07/2015 17:56, Andy Lutomirski wrote:
>> On Mon, Jul 27, 2015 at 6:59 AM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote:
>>>
>>>
>>> On 24/07/2015 19:33, Andy Lutomirski wrote:
>>>> PARAVIRT adds a fair amount of bloat and, AFAICT, KVM_GUEST doesn't
>>>> really need any of it.  Would it make sense to drop the dependency?
>>>
>>> I think the main reason for PARAVIRT is that pv kernels have by default
>>>
>>>         .read_msr = native_read_msr_safe,
>>>         .write_msr = native_write_msr_safe,
>>>
>>> Unfortunately Intel adds a bunch of performance measurement features
>>> saying that "they work with this cpuid family/model/stepping" and at the
>>> same time attach them to some non-architectural MSRs that, in principle
>>> could be reused for something else years down the road.  This is not a
>>> huge problem for Windows, where only tools such as vTune use these MSRs,
>>> but it is a problem for Linux.
>>>
>>> The alternative is ignore_msrs, but that's a very big hammer too.
>>
>> I think I'm missing something.  Does KVM_GUEST hook read_msr and
>> write_msr?  I don't see it.
>
> PARAVIRT does, and it's the main reason why you'd want PARAVIRT for a
> KVM guest.
>

Still confused.  On a KVM guest (with PARAVIRT=y), doesn't read_msr do
exactly the same thing it does on native, albeit with more indirection
and patching involved?

--Andy
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux