|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 05/13] xen/passthrough: rework dom0_pvh_reqs to use it also on ARM
On Tue, 2014-03-11 at 15:49 +0000, Julien Grall wrote:
> DOM0 on ARM will have the same requirements as DOM0 PVH when iommu is enabled.
> Both PVH and ARM guest has paging mode translate enabled, so Xen can use it
> to know if it needs to check the requirements.
>
> Rename the function and remove "pvh" word in the panic message.
>
> Signed-off-by: Julien Grall <julien.grall@xxxxxxxxxx>
> Acked-by: Jan Beulich <jbeulich@xxxxxxxx>
> Cc: Xiantao Zhang <xiantao.zhang@xxxxxxxxx>
>
> ---
> Changes in v2:
> - IOMMU can be disabled on ARM if the platform doesn't have
> IOMMU.
> ---
> xen/drivers/passthrough/iommu.c | 13 ++++++++-----
> 1 file changed, 8 insertions(+), 5 deletions(-)
>
> diff --git a/xen/drivers/passthrough/iommu.c b/xen/drivers/passthrough/iommu.c
> index c70165a..3c63f87 100644
> --- a/xen/drivers/passthrough/iommu.c
> +++ b/xen/drivers/passthrough/iommu.c
> @@ -130,13 +130,17 @@ int iommu_domain_init(struct domain *d)
> return hd->platform_ops->init(d);
> }
>
> -static __init void check_dom0_pvh_reqs(struct domain *d)
> +static __init void check_dom0_reqs(struct domain *d)
> {
> - if ( !iommu_enabled )
> + if ( !paging_mode_translate(d) )
> + return;
> +
> + if ( is_pvh_domain(d) && !iommu_enabled )
Is is_pvh_domain going to be exposed to common code on ARM?
Or would a arch_check_dom0_reqs be useful here?
> panic("Presently, iommu must be enabled for pvh dom0\n");
>
> if ( iommu_passthrough )
> - panic("For pvh dom0, dom0-passthrough must not be enabled\n");
> + panic("Dom0 uses translate paging mode, dom0-passthrough must not be
> "
"paging translated mode" reads more natural to me.
> + "enabled\n");
>
> iommu_dom0_strict = 1;
> }
> @@ -145,8 +149,7 @@ void __init iommu_dom0_init(struct domain *d)
> {
> struct hvm_iommu *hd = domain_hvm_iommu(d);
>
> - if ( is_pvh_domain(d) )
> - check_dom0_pvh_reqs(d);
> + check_dom0_reqs(d);
>
> if ( !iommu_enabled )
> return;
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |