[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [PATCH v5 1/2] xen+tools: Report Interrupt Controller Virtualization capabilities on x86
- To: Jane Malalane <jane.malalane@xxxxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
- From: "Tian, Kevin" <kevin.tian@xxxxxxxxx>
- Date: Mon, 14 Mar 2022 06:40:10 +0000
- Accept-language: en-US
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; 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=czyHI8KkCYHqEByd+ZuhEe+bUHITDOyIXb9DONK4qFo=; b=UxNuT1oFHahsdj9ET9vLnuZ9oCXu5OqJyif9dFnhMGxpGIJC3DdH0nVHuG/ROpNhmQf8aC3nPJTSa5d5A1IbBdFCz/QscNTPeaGjLQh/dScmzfBvd7C4zQy1bqRk6dG5iLxgdTr4ouAYvM3T0llS3DjB5imY4VfXeGs8FKBsutUTH06a7CilPNVBJUEuAaCbtvCnFemyytbrF8Laf3D9FJg+cIvZcwwbdaKvYeeKoZH6x7e+eB/22MuU/BXfHCGxNUpHd4Llf5nsqWdTN6ryaZblaVdtrW9GdNYEVnsPFmj0BSPTkiy8reJSBQoYpRaK6bwVXvS12h1ri5gkW1PzHw==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=JjGgBLn0/LbdXFARncJ0a6YHSL0bBKzd1t3iNy1NXphtil57/gOnzv6h89dbmsDWlMvWFtqYcechTPzQtbDZ2lArYmuGgss8hWqtKm+njoTvdgvuqUqW6KCOwTzo+gd8uEL1IvZFIQPdJmC+o9s6IV4zN8CJLv5RXs5Fxlm2Oc/RsIn2vQAAPSCILdZ1FpnjOENMR+cPJwk2rJDdA7l00GifIJj3GMxW3+L7gju/MbMfNektblt6HgMLDcwHVkTOMvaxW3qypj4aNNZoUrnRYq5cC9A3Tp9OEy2H+dvqgvgN/sdgd6Ul64Ns6kJSXPcB5ApyOMJAn9o8nPaUVwqBIg==
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com;
- Cc: Wei Liu <wl@xxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, "Gross, Jurgen" <jgross@xxxxxxxx>, "Cooper, Andrew" <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, "Beulich, Jan" <JBeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Bertrand Marquis <bertrand.marquis@xxxxxxx>, "Nakajima, Jun" <jun.nakajima@xxxxxxxxx>, Pau Monné, Roger <roger.pau@xxxxxxxxxx>
- Delivery-date: Mon, 14 Mar 2022 06:40:34 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Thread-index: AQHYMjTwrgWmuXEjA0e1vahO/5egnKy+d+KA
- Thread-topic: [PATCH v5 1/2] xen+tools: Report Interrupt Controller Virtualization capabilities on x86
> From: Jane Malalane <jane.malalane@xxxxxxxxxx>
> Sent: Monday, March 7, 2022 11:06 PM
>
> Add XEN_SYSCTL_PHYSCAP_ARCH_ASSISTED_xapic and
> XEN_SYSCTL_PHYSCAP_ARCH_ASSISTED_x2apic to report accelerated xapic
> and x2apic, on x86 hardware.
> No such features are currently implemented on AMD hardware.
>
> HW assisted xAPIC virtualization will be reported if HW, at the
> minimum, supports virtualize_apic_accesses as this feature alone means
> that an access to the APIC page will cause an APIC-access VM exit. An
> APIC-access VM exit provides a VMM with information about the access
> causing the VM exit, unlike a regular EPT fault, thus simplifying some
> internal handling.
>
> HW assisted x2APIC virtualization will be reported if HW supports
> virtualize_x2apic_mode and, at least, either apic_reg_virt or
> virtual_intr_delivery. This is due to apic_reg_virt and
> virtual_intr_delivery preventing a VM exit from occuring or at least
> replacing a regular EPT fault VM-exit with an APIC-access VM-exit on
> read and write APIC accesses, respectively. This also means that
> sysctl follows the conditionals in vmx_vlapic_msr_changed().
>
> For that purpose, also add an arch-specific "capabilities" parameter
> to struct xen_sysctl_physinfo.
>
> Note that this interface is intended to be compatible with AMD so that
> AVIC support can be introduced in a future patch. Unlike Intel that
> has multiple controls for APIC Virtualization, AMD has one global
> 'AVIC Enable' control bit, so fine-graining of APIC virtualization
> control cannot be done on a common interface.
>
> Suggested-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> Signed-off-by: Jane Malalane <jane.malalane@xxxxxxxxxx>
Can you add some explanation why this capability needs to be
reported to toolstack?
Thanks
Kevin
|