[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 3/3] hvm/pirq: allow control domains usage of PHYSDEVOP_{un,}map_pirq
- To: Alex Olson <this.is.a0lson@xxxxxxxxx>
- From: Jan Beulich <jbeulich@xxxxxxxx>
- Date: Thu, 3 Mar 2022 17:47:48 +0100
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.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=1txL8oqdo3qklpwPLNQCZjr0HvUSAQAWmmZ2cmrh+mY=; b=lbaRJxofXdB92ixVMRPgsduLSm7G2ejqspiqk/bHj6VAw3T/4inbRJODGdN62ToF2dKEuk98JAiKgTasZQ5GvBhGrhFxcG0stxHGAH3g1n3I/IE4w5aYM/9ZM2q/f8Cxu8ySplRD/ZYHzJ7L1TL29TZDaszuNU217mXBP510IpAY3Ta05C3gnc0mDBLHwpaMWblwm/gtU/D/rAt2wxb2QiNTE/0SpvufmPsgE8UBBw4XlXQ5057RJPNLl9WXjRtTHEvnoxLCRLugxUXpCkF0xd6k2ZkzEnRerYKrsq7tLoglVzagcHTB5n4ErONb6WHiLnfxcTWcDuVUp54RRgYPLw==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZNhaOyJYtTehCdrVHWHs1YyMVVoSUQpvdkFImboL7VxqgQxDatboNJoJEPhWcGsXSJwyyxBvb9QhsMYkH1m/xKhdCg2xah2WlY7Ukf1UtAsQMyKlUQKOvs7C288X7RM7mvIzpKWTIln6HGR3F3+YBsAoYGCI6UcQ/aH0E8J2kSPkUE3N6Uq5xaaFU4uWtJWBQiO5PyxzXfqpG02xtSb35/UuGgXaujPHWz2sHXjZO+/XS9RwkRFz/HtQLJUvVE37JvssSA2kNvBYoDgR7Xyja/V8FK5yz3wESFjQjWWteZfPR5XSGRhHsAfMPA93O6pjf4Y6c8rCCMNDp2jGkX6T3g==
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
- Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Roger Pau Monne <roger.pau@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
- Delivery-date: Thu, 03 Mar 2022 16:47:58 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On 03.03.2022 17:45, Alex Olson wrote:
> --- a/xen/arch/x86/hvm/hypercall.c
> +++ b/xen/arch/x86/hvm/hypercall.c
> @@ -84,6 +84,17 @@ static long hvm_physdev_op(int cmd,
> XEN_GUEST_HANDLE_PARAM(void) arg)
>
> switch ( cmd )
> {
> +
> + case PHYSDEVOP_manage_pci_add:
> + case PHYSDEVOP_manage_pci_remove:
> + case PHYSDEVOP_pci_device_add:
> + case PHYSDEVOP_pci_device_remove:
> + case PHYSDEVOP_manage_pci_add_ext:
> + case PHYSDEVOP_prepare_msix:
> + case PHYSDEVOP_release_msix:
> + if ( is_control_domain(currd) )
> + break;
These are all operations which I think are purposefully permitted to
be invoked by the hardware domain only. That's where all the devices
live when they're not passed through to guests.
Jan
|