[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 12/12] xen/arm: call iomem_permit_access for passthrough devices
On 15/04/2020 02:02, Stefano Stabellini wrote: iomem_permit_access should be called for MMIO regions of devices assigned to a domain. Currently it is not called for MMIO regions of passthrough devices of Dom0less guests. This patch fixes it. You can already have cases today where the MMIO regions are mapped to the guest but the guest doesn't have permission on them. Can you explain why this is a problem here? Cheers, Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxx> --- xen/arch/arm/domain_build.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c index d0fc497d07..d3d42eef5d 100644 --- a/xen/arch/arm/domain_build.c +++ b/xen/arch/arm/domain_build.c @@ -1846,6 +1846,17 @@ static int __init handle_passthrough_prop(struct kernel_info *kinfo, return -EINVAL; }+ res = iomem_permit_access(kinfo->d, paddr_to_pfn(mstart),+ paddr_to_pfn(PAGE_ALIGN(mstart + size - 1))); + if ( res ) + { + printk(XENLOG_ERR "Unable to permit to dom%d access to" + " 0x%"PRIx64" - 0x%"PRIx64"\n", + kinfo->d->domain_id, + mstart & PAGE_MASK, PAGE_ALIGN(mstart + size) - 1); + return res; + } + res = map_regions_p2mt(kinfo->d, gaddr_to_gfn(gstart), PFN_DOWN(size), -- Julien Grall
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |