Re: [PATCH] always report x2apic as supported feature

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

 



On Thursday 16 July 2009 07:01:30 Marcelo Tosatti wrote:
> On Sun, Jul 12, 2009 at 04:10:55PM +0300, Gleb Natapov wrote:
> > We emulate x2apic in software, so host support is not required.
> >
> > Signed-off-by: Gleb Natapov <gleb@xxxxxxxxxx>
> > diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
> > index 00844eb..c256da7 100644
> > --- a/arch/x86/kvm/x86.c
> > +++ b/arch/x86/kvm/x86.c
> > @@ -1497,6 +1497,9 @@ static void do_cpuid_ent(struct kvm_cpuid_entry2
> > *entry, u32 function, case 1:
> >  		entry->edx &= kvm_supported_word0_x86_features;
> >  		entry->ecx &= kvm_supported_word4_x86_features;
> > +		/* we support x2apic emulation even if host does not support
> > +		   it since we emulate x2apic in software */
> > +		entry->ecx |= F(X2APIC);
> >  		break;
> >  	/* function 2 entries are STATEFUL. That is, repeated cpuid commands
> >  	 * may return different values. This forces us to get_cpu() before
> > --
> > 			Gleb.
>
> What if you have an older host that does not support emulate x2apic?

Due to interrupt remapping can't be enabled with KVM now, I think older host 
would just ignore this info... (The new one can work without interrupt 
remapping with KVM).

By the way, I saw X2APIC in host supported CPUID feature list(1.ecx), which I 
don't think it's very properly. Host x2apic feature have nothing to do with 
KVM, we do the emulation all the way. I suggest to remove the mask for host, 
and give a comment that we would emulate all x2apic behaviour here, rather 
than "even if", which I think it's a little misleading.

-- 
regards
Yang, Sheng

--
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