diff options
author | Vitaly Kuznetsov <vkuznets@redhat.com> | 2017-06-22 18:07:29 +0800 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2017-06-22 15:35:11 +0200 |
commit | 2cf0284223a40773bd0ec76a409a7cbf0607ca28 (patch) | |
tree | 961b55181976fe552e2011aa0534df5f8cd015b6 /arch/x86/kernel/cpu/mshyperv.c | |
parent | 48b6bbef9a1789f0365c1a385879a1fea4460016 (diff) | |
download | blackbird-op-linux-2cf0284223a40773bd0ec76a409a7cbf0607ca28.tar.gz blackbird-op-linux-2cf0284223a40773bd0ec76a409a7cbf0607ca28.zip |
x86/hyperv: Check frequency MSRs presence according to the specification
Hyper-V TLFS specifies two bits which should be checked before accessing
frequency MSRs:
- AccessFrequencyMsrs (BIT(11) in EAX) which indicates if we have access to
frequency MSRs.
- FrequencyMsrsAvailable (BIT(8) in EDX) which indicates is these MSRs are
present.
Rename and specify these bits accordingly.
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Stephen Hemminger <sthemmin@microsoft.com>
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Cc: Ladi Prosek <lprosek@redhat.com>
Cc: Jork Loeser <jloeser@microsoft.com>
Cc: devel@linuxdriverproject.org
Cc: "K. Y. Srinivasan" <kys@microsoft.com>
Link: http://lkml.kernel.org/r/20170622100730.18112-2-vkuznets@redhat.com
Diffstat (limited to 'arch/x86/kernel/cpu/mshyperv.c')
-rw-r--r-- | arch/x86/kernel/cpu/mshyperv.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c index 04cb8d34ccb8..3563c8e6c014 100644 --- a/arch/x86/kernel/cpu/mshyperv.c +++ b/arch/x86/kernel/cpu/mshyperv.c @@ -194,7 +194,8 @@ static void __init ms_hyperv_init_platform(void) } #ifdef CONFIG_X86_LOCAL_APIC - if (ms_hyperv.features & HV_X64_MSR_APIC_FREQUENCY_AVAILABLE) { + if (ms_hyperv.features & HV_X64_ACCESS_FREQUENCY_MSRS && + ms_hyperv.misc_features & HV_FEATURE_FREQUENCY_MSRS_AVAILABLE) { /* * Get the APIC frequency. */ |