[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] iommu: avoid triggering ASSERT_UNREACHABLE() on ARM...

On 26.09.2019 12:03, Paul Durrant wrote:
> ...when the IOMMU is not enabled.
> 80ff3d338dc9 "iommu: tidy up iommu_use_hap_pt() and need_iommu_pt_sync()
> macros" introduced CONFIG_IOMMU_FORCE_PT_SHARE, which causes the global
> 'iommu_hap_pt_share' option to be replaced with a #define-d value of true.
> In this configuration, calling clear_iommu_hap_pt_share() will result
> trigger the aforementioned ASSERT.
> CONFIG_IOMMU_FORCE_PT_SHARE is always selected for ARM builds and,
> because clear_iommu_hap_pt_share() is called by the common iommu_setup()
> function if the IOMMU is not enabled, it is no longer safe to disable the
> IOMMU on ARM systems.
> However, running with the IOMMU disabled is a valid configuration for ARM
> systems, so this patch rectifies the problem by removing the call to
> clear_iommu_hap_pt_share() from common code. As a side effect of this,
> however, it becomes possible on x86 systems for iommu_enabled to be false
> but iommu_hap_pt_share to be true. Thus the code in sysctl.c
> needs to be changed to make sure that XEN_SYSCTL_PHYSCAP_iommu_hap_pt_share
> is not erroneously advertised when the IOMMU has been disabled.
> Signed-off-by: Paul Durrant <paul.durrant@xxxxxxxxxx>
> Reported-by: Oleksandr <olekstysh@xxxxxxxxx>

Preferably with the adjustments mantioned elsewhere
Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.