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

[PATCH] x86/vmx: remove dead code to create domains without a vLAPIC


  • To: <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Roger Pau Monne <roger.pau@xxxxxxxxxx>
  • Date: Tue, 15 Feb 2022 12:28:35 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=mSr8Z0lH9cOgDLnRQ/ZeXDRRLeFk+M9X/cjQ9dZMbPE=; b=YhIsDO82oI8bqoROWDKcu1SPxq9PowqODA2oDnUrTzlkkGZm52Xa2mSRqI6kHahLOCtP0GpRc8SVXJAj3p8kScKijy2FVB3g4R+0gNPIUTamPoqJ9cIy+MBWy0/Jqe7x26tkwtEzyeIXXCiNe4h5RgeWvPXMEzzJnrQfO63r1tY5ZGdp3AV8pvsFO5jyBVKBi+GWiJ9YKcS2hF1pVzoqvnikP8N2d+KKFZvPt11qF78EPXs8xvD3JyjRF/EI1q/ucUJK1VIkAxzkLuCx3MzczI8K1wOnK3IMhgnxFmuzY4/iwX2Rj8nuywvVQsWIGTLu1ZGHqcqFnF+dK9nVQz+8Nw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gANDWWIlaOhj2ED5LGcLvYmYWeFmX0XNJDDtHURKoI37YtqPaqzYvl9ndtR/r4b1SEl5svPaznaIpqyQv5xLPB5ec5q44cbzIGnxjIgqpGH8AvRfIW9a/Vsn/MlfkdtsYy6G/fewV3n+lOdJy3XUTXQhFnj3hjytqpujTkgXndd9vgaMdMjwygMJlcqAUjsdJ9Ci9Gq4l/bQQBZvvymraF7QFza8YU9d32QXEgsO8sddCp8k0mq30qkBc4WYPAVU2Uz5M90aaZiQ9ce+mFh+/dzEeXVoTorAzksv3vIfVE7KQMv+yfxPwfyWC/Nb/KxO3wlIw7aFtONDFk7/UVXJag==
  • Authentication-results: esa3.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: Roger Pau Monne <roger.pau@xxxxxxxxxx>, Jun Nakajima <jun.nakajima@xxxxxxxxx>, Kevin Tian <kevin.tian@xxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Tue, 15 Feb 2022 11:29:09 +0000
  • Ironport-data: A9a23:KUKjGalABBs8Lfkaiudjn7/o5gx/IURdPkR7XQ2eYbSJt1+Wr1Gzt xIeUWnUMqyIZ2D8KNB+bYm39BgC7ZCGx9RqQAZo/n1gQyMWpZLJC+rCIxarNUt+DCFioGGLT Sk6QoOdRCzhZiaE/n9BClVlxJVF/fngqoDUUYYoAQgsA180IMsdoUg7wbRh2Nc12YLR7z6l4 rseneWOYDdJ5BYsWo4kw/rrRMRH5amaVJsw5zTSVNgT1LPsvyB94KE3fMldG0DQUIhMdtNWc s6YpF2PEsE1yD92Yj+tuu6TnkTn2dc+NyDW4pZdc/DKbhSvOkXee0v0XRYRQR4/ttmHozx+4 OptlsLqcQ4vArTvocIBdh55Eg9cPrITrdcrIVDn2SCS50jPcn+qyPRyFkAme4Yf/46bA0kXq 6ZecmpUKEne2aTmm9pXScE17ignBNPsM44F/Glp0BnSDOo8QICFSKLPjTNd9Gls3JsVRaiPD yYfQTtPdC6aUzwMAWc0Is0yofeBvEvWeQQN/Tp5ooJoujOOnWSdyoPFMtDYZ9iLTsV9hVuDq yTN+GGRKg4eHMySz3yC6H3EruzCgyL9Hp4THbuQ9/h2jVnVzWsWYDUGWF3+rfSnh0qWX9NEN 1dS6icotbI19kGgUp/6RRLQiHyZuFgaUtlZEew/4SmMzLbZ50CSAW1sc9JaQIV47olsH2Vsj wLX2YOybdByjFGLYU291enOlTq0BTE2FEkeQCglTCUn4Ma29enfkSnzZtpkFae0iPj8Fjfx3 y2GoUACulkDsSIY//7lpA6a2lpAsrCMF1dovVuPAgpJ+yskPNbNWmC+1bTMAR+sxq69R0LJg nULktP2AAsmXcDUz3zlrAng8diUCxe53N/03AQH83oJrW3FF5ufkWd4um8WGauRGpxYEQIFm WeK0e+r2LddPWGxcYh8aJ+rBsIhwMDITIq5Cq+EPocTOsEqLmdrGR2CgmbKgQjQfLUEy/lja f93j+7wZZrlNUiX5GXvHLpMuVPa7is/2XnSVfjGI+ePitKjiIquYe5dajOmN7lhhIvd+Vm92 4sPZqOilkQEOMWjM3a/zGLmBQ1TRZTNLcut8JI/my/qClcOJVzN/NeImu1/ItQ8xfwK/goKl 1nkMnJlJJPErSSvAS2Ba2x5aaOpWpB6rHkhOjcrM0ru0H8mCbtDJo9GH3fuVbV4puFl09BuS PwJJ5eJDvhVE2yV8DUBd5jt6odlcU3z1w6JOiOkZhk5foJhGFOVqoO1IFO3+XlcFDezuOs/v 6akilHRT60cSlkwF83Rcv+ukQ+85CBPhOJoUkLUCdBPY0GwopNyIin8g6ZvccEBIBnO3BWA0 AOSDUtKrOXBudZtotLImbqFv8GiFO4nRhhWGGzS7LCXMyjG/zX8nd8cAbjQJT2EDTH64qSvY +lR3srQCvxfkQYYqZd4HpZq0bk6u4nlqYhFw1k2B37MdVmqVO9teyHUwclVu6RR7bZFog/qC FmX89xXNLjVasPoFFkdeFgsYuiZjKxGnzDT6bI+IVng5T8x972CCB0AMx6JgS1bDb10LIJ6n rtx5J9Is1Sy2kgwL9KLriFI7GDdfHUPXpIuuoweHIK22BEgzUtPYMCEByL7iH1Vhw6g7qX+z ueouZf/
  • Ironport-hdrordr: A9a23:YbpmM61Z6R5RX6utSkZ7ggqjBIckLtp133Aq2lEZdPUMSL38qy ncpoV+6faUskdoZJhOo7G90cW7K080sKQFg7X5Xo3SJzUO2lHJEGgK1+KLqAEIWReOldK1vp 0NT0EKMrPN5C9B4voSjjPULz9q+qjhzEnhv5a5855Cd3ASV51d
  • Ironport-sdr: dGa1dvm2qB/b8vpmNDeN2gCgUG0Gj2WBbn4PN1OFZXpuIICXpD/dvSR2nu4oHpjJJFGtWhkqJG OqfBRpjfXka8pfQm5uc7cCtXy0QRU8cEFPzSpSkycvn04pnokJnP20TgwdrFihPUC0Yy1BDq6U /KNFVCCuRK1m87NOdmqTOG9v6TPaw1dU3yWUF1D/95Lrjkajo/aAqIOFfGMHN+XVQprmpjC9ZB 1XQEdgPA/fhlEehyDlSRIkxGpMrPxkwZNx0ZKdptB+B+Dx6IDWRxJiD6FCwdmAPrqr/m1EumlF ZB8tC0Eu0MQE9gIZrmXy1Wwp
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

After the removal of PVHv1 it's no longer supported to create a domain
using hardware virtualization extensions and without a local APIC:
PVHv2 mandates domains to always have a LAPIC. Remove some stale code
in VMCS construction and related helpers that catered for that
use-case.

No functional change.

Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
---
 xen/arch/x86/hvm/vmx/vmcs.c | 14 --------------
 xen/arch/x86/hvm/vmx/vmx.c  |  4 ++--
 2 files changed, 2 insertions(+), 16 deletions(-)

diff --git a/xen/arch/x86/hvm/vmx/vmcs.c b/xen/arch/x86/hvm/vmx/vmcs.c
index 7ab15e07a0..9eda8a5f0f 100644
--- a/xen/arch/x86/hvm/vmx/vmcs.c
+++ b/xen/arch/x86/hvm/vmx/vmcs.c
@@ -1123,20 +1123,6 @@ static int construct_vmcs(struct vcpu *v)
     /* Do not enable Monitor Trap Flag unless start single step debug */
     v->arch.hvm.vmx.exec_control &= ~CPU_BASED_MONITOR_TRAP_FLAG;
 
-    if ( !has_vlapic(d) )
-    {
-        /* Disable virtual apics, TPR */
-        v->arch.hvm.vmx.secondary_exec_control &=
-            ~(SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES
-              | SECONDARY_EXEC_APIC_REGISTER_VIRT
-              | SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY);
-        v->arch.hvm.vmx.exec_control &= ~CPU_BASED_TPR_SHADOW;
-
-        /* In turn, disable posted interrupts. */
-        __vmwrite(PIN_BASED_VM_EXEC_CONTROL,
-                  vmx_pin_based_exec_control & ~PIN_BASED_POSTED_INTERRUPT);
-    }
-
     vmx_update_cpu_exec_control(v);
 
     __vmwrite(VM_EXIT_CONTROLS, vmexit_ctl);
diff --git a/xen/arch/x86/hvm/vmx/vmx.c b/xen/arch/x86/hvm/vmx/vmx.c
index 36c8a12cfe..0f98fb4f29 100644
--- a/xen/arch/x86/hvm/vmx/vmx.c
+++ b/xen/arch/x86/hvm/vmx/vmx.c
@@ -419,7 +419,7 @@ static void domain_creation_finished(struct domain *d)
     gfn_t gfn = gaddr_to_gfn(APIC_DEFAULT_PHYS_BASE);
     bool ipat;
 
-    if ( !has_vlapic(d) || mfn_eq(apic_access_mfn, INVALID_MFN) )
+    if ( mfn_eq(apic_access_mfn, INVALID_MFN) )
         return;
 
     ASSERT(epte_get_entry_emt(d, gfn, apic_access_mfn, 0, &ipat,
@@ -3317,7 +3317,7 @@ static void vmx_install_vlapic_mapping(struct vcpu *v)
 {
     paddr_t virt_page_ma, apic_page_ma;
 
-    if ( !has_vlapic(v->domain) || mfn_eq(apic_access_mfn, INVALID_MFN) )
+    if ( mfn_eq(apic_access_mfn, INVALID_MFN) )
         return;
 
     ASSERT(cpu_has_vmx_virtualize_apic_accesses);
-- 
2.34.1




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.