diff options
author | K. Y. Srinivasan <kys@microsoft.com> | 2017-03-14 18:01:39 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-03-17 15:10:49 +0900 |
commit | 6c248aad81c8903981db9f12fd74189fa01b3789 (patch) | |
tree | be0719944f1822567d507d12f12c76aa4e1e4301 /drivers/hv/hv.c | |
parent | 4539673a6ac027e3ba95901379b5f36c5eb3c9dc (diff) | |
download | linux-stable-6c248aad81c8903981db9f12fd74189fa01b3789.tar.gz linux-stable-6c248aad81c8903981db9f12fd74189fa01b3789.tar.bz2 linux-stable-6c248aad81c8903981db9f12fd74189fa01b3789.zip |
Drivers: hv: Base autoeoi enablement based on hypervisor hints
Don't enable auto-eoi if the hypervisor recommends otherwise. This will
enable vAPIC functionality if available.
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/hv/hv.c')
-rw-r--r-- | drivers/hv/hv.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/hv/hv.c b/drivers/hv/hv.c index 665a64f1611e..12e7baecb84e 100644 --- a/drivers/hv/hv.c +++ b/drivers/hv/hv.c @@ -254,7 +254,10 @@ int hv_synic_init(unsigned int cpu) shared_sint.as_uint64 = 0; shared_sint.vector = HYPERVISOR_CALLBACK_VECTOR; shared_sint.masked = false; - shared_sint.auto_eoi = true; + if (ms_hyperv.hints & HV_X64_DEPRECATING_AEOI_RECOMMENDED) + shared_sint.auto_eoi = false; + else + shared_sint.auto_eoi = true; hv_set_synint_state(HV_X64_MSR_SINT0 + VMBUS_MESSAGE_SINT, shared_sint.as_uint64); |