[PATCH V2 1/1] X86: Hyper-V: Get the local APIC timer frequency from the hypervisor

KY Srinivasan kys at microsoft.com
Wed Sep 4 15:03:44 UTC 2013



> -----Original Message-----
> From: Jan Beulich [mailto:JBeulich at suse.com]
> Sent: Wednesday, September 04, 2013 12:17 AM
> To: KY Srinivasan
> Cc: olaf at aepfle.de; bp at alien8.de; apw at canonical.com; x86 at kernel.org;
> tglx at linutronix.de; devel at linuxdriverproject.org; gregkh at linuxfoundation.org;
> jasowang at redhat.com; linux-kernel at vger.kernel.org; hpa at zytor.com
> Subject: Re: [PATCH V2 1/1] X86: Hyper-V: Get the local APIC timer frequency
> from the hypervisor
> 
> >>> On 03.09.13 at 20:30, "K. Y. Srinivasan" <kys at microsoft.com> wrote:
> > @@ -76,6 +80,26 @@ static void __init ms_hyperv_init_platform(void)
> >  	printk(KERN_INFO "HyperV: features 0x%x, hints 0x%x\n",
> >  	       ms_hyperv.features, ms_hyperv.hints);
> >
> > +	if (ms_hyperv.features & HV_X64_MSR_APIC_FREQUENCY_AVAILABLE) {
> > +		/*
> > +		 * Get the APIC frequency.
> > +		 */
> > +		rdmsrl(HV_X64_MSR_APIC_FREQUENCY, hv_lapic_frequency);
> > +		hv_lapic_frequency /= HZ;
> > +		lapic_timer_frequency = hv_lapic_frequency;
> > +		printk(KERN_INFO "HyperV: LAPIC Timer Frequency: %#x\n",
> > +				lapic_timer_frequency);
> > +
> > +		/*
> > +		 * On Hyper-V, when we are booting off an EFI firmware stack,
> > +		 * we do not have many legacy devices including PIC, PIT etc.
> > +		 */
> > +		if (efi_enabled(EFI_BOOT)) {
> > +			printk(KERN_INFO "HyperV: Using null_legacy_pic\n");
> > +			legacy_pic = &null_legacy_pic;
> > +		}
> 
> And this check is really connected to the feature check around the
> whole block, rather than being independent? (I'd also think that
> this latter message would suffice to be KERN_DEBUG).

I felt it was safer to first check for the feature  since if the feature is not
there, we need to calibrate based on PIT. Furthermore, the feature is available
even in legacy environments when we are not booting on an EFI stack.

Regards,

K. Y

> 
> Jan



More information about the devel mailing list