[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] hw/xen_pt: Don't grant opregion permissions
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH] hw/xen_pt: Don't grant opregion permissions |
Date: |
Mon, 15 Jun 2020 08:10:24 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 |
Hi Grzegorz,
On 6/15/20 1:21 AM, Grzegorz Uriasz wrote:
> With the upstreaming of linux based stubdomains to xen, qemu can't
> assume it runs inside dom0 - permission assignment must be moved to
> libxl running in dom0. This xen patch:
> https://lists.xenproject.org/archives/html/xen-devel/2020-06/msg00973.html
> implements granting the required permissions to the stubdomain running
> qemu. This patch removes granting opregion permissions in qemu - this
> should be fine as when qemu is running inside dom0 the memory mapping will
> be successfully created without first explicitly granting the permission.
>
> Signed-off-by: Grzegorz Uriasz <gorbak25@gmail.com>
> ---
> hw/xen/xen_pt_graphics.c | 13 -------------
> 1 file changed, 13 deletions(-)
>
> diff --git a/hw/xen/xen_pt_graphics.c b/hw/xen/xen_pt_graphics.c
> index 7d46e9c209..303674365b 100644
> --- a/hw/xen/xen_pt_graphics.c
> +++ b/hw/xen/xen_pt_graphics.c
> @@ -283,19 +283,6 @@ void igd_write_opregion(XenPCIPassthroughState *s,
> uint32_t val)
> igd_guest_opregion = (unsigned long)(val & ~XEN_PCI_INTEL_OPREGION_MASK)
> | (igd_host_opregion &
> XEN_PCI_INTEL_OPREGION_MASK);
>
> - ret = xc_domain_iomem_permission(xen_xc, xen_domid,
> - (unsigned long)(igd_host_opregion >> XC_PAGE_SHIFT),
> - XEN_PCI_INTEL_OPREGION_PAGES,
> - XEN_PCI_INTEL_OPREGION_ENABLE_ACCESSED);
> -
> - if (ret) {
> - XEN_PT_ERR(&s->dev, "[%d]:Can't enable to access IGD host opregion:"
> - " 0x%lx.\n", ret,
> - (unsigned long)(igd_host_opregion >> XC_PAGE_SHIFT)),
> - igd_guest_opregion = 0;
> - return;
> - }
Shouldn't this be somehow versioned? I.e. if the libxl does not have
the change then keep the current code?
> -
> ret = xc_domain_memory_mapping(xen_xc, xen_domid,
> (unsigned long)(igd_guest_opregion >> XC_PAGE_SHIFT),
> (unsigned long)(igd_host_opregion >> XC_PAGE_SHIFT),
>