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

Re: [PATCH v2 1/2] xen+tools: Report Interrupt Controller Virtualization capabilities on x86


  • To: Jane Malalane <jane.malalane@xxxxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Thu, 10 Feb 2022 11:03:21 +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=NJb1qmxhgZ53HJ1YejXoqaBY8B52fDDlokKmhnzGshU=; b=bHaQQO6vNwX7AT9wmuMXD9HOynJoWlCf9mIBM1xf6wNF/gB8C3YvNW3DuxzrH0RUEM9o6y0Rm6+1iXr8xoRg7ewhx/+FqUp/KjhGJNSOxsg68LXTlEngXE4xDhqD08AA6SAt/0ZZqpSQYFNPEFDG4Xw9JAYCx/gDWpDP/p10Khg0lAL8a/Fvo2TGwb4yveYPs7Tx6r46kDuSCUzzTMYrpfKVfHjcjnm/b2aQaAt2k7A21RnlPunRApcvemdY1RY1J2LhgRTexB6xlviFJQb1vLFD7ePmHU54teQo3VYVQtsYBnwZyjwDQZQZ0+nYl48ySPEYcftLf4HeHpWwJFGc7Q==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BpbE+pjOXBr6uI8fT7vSLh+sOVipxklR4k1k4p2Fc7VnD4A7wfPEA+BQuikoqg6DopsTlAWxE57+o+LJMnO8aCNyMHXTILkklTVEz1OOrGquawCK8xwluquxI3nsQzEZFaGSP2MeAAj8E0UOuGDn2RJdKt/fmb6xNX0LEjnvovgQ+6bvVwuRfb9c1g2nIYvubkCjDrzFbw2DMuFU+h7zWye0I7QjlXyXI2LpZlzRnyX9yy9sbS7OksxIk2szblDY8JlkJKnxfAEGzX7VP8reyzvwF/xl2/MsGhqGWT8VeHZWW/uqyktuFHQBLWhW3CXzEaaNZQpQoFTkiz5bME1aHg==
  • Authentication-results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, Jun Nakajima <jun.nakajima@xxxxxxxxx>, Kevin Tian <kevin.tian@xxxxxxxxx>
  • Delivery-date: Thu, 10 Feb 2022 10:03:45 +0000
  • Ironport-data: A9a23:kxfS8q6bDrTbxtDFQTGuPgxRtEnBchMFZxGqfqrLsTDasY5as4F+v jYZUWjQPqmJYWr8KYogPYiypxsCvZTUmtQ2QQpt+SwzHi5G8cbLO4+Ufxz6V8+wwmwvb67FA +E2MISowBUcFyeEzvuV3zyIQUBUjclkfJKlYAL/En03FV8MpBsJ00o5wbZj29Yw2LBVPivW0 T/Mi5yHULOa82Yc3lI8s8pvfzs24ZweEBtB1rAPTagjUG32zhH5P7pGTU2FFFPqQ5E8IwKPb 72rIIdVXI/u10xF5tuNyt4Xe6CRK1LYFVDmZnF+A8BOjvXez8CbP2lS2Pc0MC9qZzu1c99Z4 tlk7LCNayoVY4aPgqM8fRNEIxNmMvgTkFPHCSDXXc27ykTHdz3nwul0DVFwNoodkgp1KTgQr 7pCcmlLN03dwbLtqF64YrAEasALNs7kMZlZonh95TrYEewnUdbIRKCiCdpwgmlp3ZgVRae2i 8wxZhxTNRLNUy92O2gwMLYxhdWlqVv4WmgNwL6SjfVuuDWCpOBr65DTN97Sds2PVN9itE+Sr WLb/Ez0GhgfcteYzFKt6Wmwj+XCmSf6XoM6F7Ci8PNuxlqJyQQ7AhAMSUGyp/X/j0ekQs9eM GQd4C9opq83nGSoQ8f8WVukoXeClh8aR9dUVeY97WmlyLfSpQCQBWEGTztIQN0gqMIyAzct0 zehgNfBFTFp9rqPRhq15rqS6D+/JyURBWsDfjMfCxsI5cH5p4M+hQ6JScxseIa3gcfyAirY2 C2RoW41gLB7pcwW06S2+3jXjjTqoYLGJiY37AjKWmOu7itieZWoIYev7DDmAe1oddjDCAPb5 T5dxpbYvLtm4YyxeDKlaukkRZ2Uxdu5bRafmxlOMZM9xwa19Cv2FWxP2w1WKEBsO8cCXDbmZ k7PpA9cjKNu0GuWgbxfONzoVZlzpUT0PZG8D62PMIISCnRkXFLfpElTiVisM3cBeaTGuYU2I t+lfMmlFh724ow3nWPtF4/xPVLGrx3SJF8/p7iml3xLMpLEPRZ5rIvp1nPVN4jVC4ve/m3oH y53bZfi9vmmeLSWjtPr2YASN0sWCnMwGIr7rcdaHsbafFY6RDp7U6eKkexwE2CAo0izvryRl p1achUGoGcTeFWdcVnaApydQO+HsWlDQYITYnV3YAfAN4kLaoez9qYPH6bbjpF8nNGPOcVcF qFfE+3ZW6wnYm2ep1w1MMmsxKQ/JU/DrV/fYEKYjM0XIscIq/rhoYS/IGMCNUAmU0KKiCfJi +P8iF2LG8dfL+mgZe6PAM+SI5qKlSF1sMp5XlfSI8kVf0Pp8YNwLDf2gONxKMYJQSgvDBPAv +pPKRtH9+TLvaEv99zF2fKNo4uzSrMsFUtGBWjLq72xMHCCrGakxIZBVseOfCzcCzyoqPnzO 70NwqGuKuADkXZLr5F4T+Rhw5Uh6oa9vLRd1AllQinGNgz5FrN6L3Ca9sBTrakRlKRBsA67V xvXqNlXMLmEIu3/F1sVKFZ3Z+iPz6hMyDLT8e40MAPx4youpOiLVkBbPh+tji1BLeQqbNN5k Ll54MNPsl6xkBsnNNqCnxt4zWXUIyxSSbgju7EbHJTv1lghxGZdbMGOESTx+pyONYlBaxF4P j+OiaPerL1A3U6eIWErHH3A0OcB15QDvBdGkA0LK1iTw4eXg/Y22Fta8CgtTxQTxRJCirohN m9uPkxzBKOP4zY325QTAzHyQ1lMVE+D50j861oVj2mIHUCnW1vEIHA5JevQrlsS9HhRf2QD8 byVoIo/ve0GoC0lMvMOZHNY
  • Ironport-hdrordr: A9a23:4jWPMam4wQ8xDj8y5H2Xw7G3pn/pDfO1imdD5ihNYBxZY6Wkfp +V88jzhCWZtN9OYhwdcLC7WZVpQRvnhPlICK0qTM2ftWjdyRCVxeRZg7cKrAeQeREWmtQtsJ uINpIOdeEYbmIK8/oSgjPIaurIqePvmMvD5Za8854ud3ATV0gJ1XYHNu/xKDwReOApP+tcKH LKjfA32wZINE5nJfhSQRI+Lpr+juyOsKijTQ8NBhYh5gXLpTS06ITiGxzd+hsFSTtAzZor7G CAymXCl+iemsD+7iWZ+37Y7pxQltek4txfBPaUgsxQDjn3kA6naKloRrXHljEop+OE7kosjb D30l0dFvU2z0mUUnC+oBPr1QWl+DEy60X6wVvdunfnqdyRfkNNN+NxwaZiNjfJ4Uspu99xlI hR2XiCipZRBRTc2Azg+tnhTXhR5wSJiEtntdRWo21UUIMYZrMUh5cY5llpHJAJGz+/wJw7Ed NpENrX6J9tABynhkjizylSKeGXLzcO9k/seDlBhiXV6UkboJlB9TpY+CRF9U1wsa7USPF/lp P52+pT5fVzp/QtHNJA7dE6ML+K41z2MGPx2V2pUCfa/YE8SjvwQs3Mkf0IDN/DQu188HJ1ou WHbG9l
  • Ironport-sdr: hrRUobbaazwqW8DbfFa0lawlILxQVgc/DwSF4Pr1wjmljuYURszjZPtthWUkUAP4uuoP1aRfIA hGYZJQoVO8AewsilUPeBO2P33gxDkuSn0upUYk1AsfhaAXFV6PPY9FgfAEEOPE86TA/9AcmVIw BCrTzVwJeVc+FYB1O7G+NtSbmatuYweE0VpXjfGo8oi+NWuUB4pOj67vyGkM+EZfzvcPBk1agU fk1/UOnXcAlma6pMUoe1a7APg2A66HPxQPrKqStFihAg3ffV/5QGHDpH9GjQH4zGU9ZaFCxr6n kt3Fks6Dhpfi5LmPYTAfHIiR
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Mon, Feb 07, 2022 at 06:21:00PM +0000, Jane Malalane wrote:
> diff --git a/xen/arch/x86/hvm/vmx/vmcs.c b/xen/arch/x86/hvm/vmx/vmcs.c
> index 7ab15e07a0..4060aef1bd 100644
> --- a/xen/arch/x86/hvm/vmx/vmcs.c
> +++ b/xen/arch/x86/hvm/vmx/vmcs.c
> @@ -343,6 +343,15 @@ static int vmx_init_vmcs_config(bool bsp)
>              MSR_IA32_VMX_PROCBASED_CTLS2, &mismatch);
>      }
>  
> +    /* Check whether hardware supports accelerated xapic and x2apic. */
> +    if ( bsp )
> +    {
> +        assisted_xapic_available = cpu_has_vmx_virtualize_apic_accesses;
> +        assisted_x2apic_available = (cpu_has_vmx_apic_reg_virt ||
> +                                     cpu_has_vmx_virtual_intr_delivery) &&
> +                                    cpu_has_vmx_virtualize_x2apic_mode;

I've been think about this, and it seems kind of asymmetric that for
xAPIC mode we report hw assisted support only with
virtualize_apic_accesses available, while for x2APIC we require
virtualize_x2apic_mode plus either apic_reg_virt or
virtual_intr_delivery.

I think we likely need to be more consistent here, and report hw
assisted x2APIC support as long as virtualize_x2apic_mode is
available.

This will likely have some effect on patch 2 also, as you will have to
adjust vmx_vlapic_msr_changed.

Thanks, Roger.



 


Rackspace

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