Even when a page doesn't need mapping, we should check whether softirq processing should be invoked. Otherwise with sufficiently much RAM chances of a to-be-mapped page actually occurring with the loop counter having the "right" value may become diminishingly small.
Reported-by: Andrew Cooper <[email protected]> Signed-off-by: Jan Beulich <[email protected]> --- a/xen/drivers/passthrough/x86/iommu.c +++ b/xen/drivers/passthrough/x86/iommu.c @@ -226,9 +226,8 @@ void __hwdom_init arch_iommu_hwdom_init( int rc; if ( !hwdom_iommu_map(d, pfn, max_pfn) ) - continue; - - if ( paging_mode_translate(d) ) + rc = 0; + else if ( paging_mode_translate(d) ) rc = set_identity_p2m_entry(d, pfn, p2m_access_rw, 0); else rc = iommu_map(d, _dfn(pfn), _mfn(pfn), PAGE_ORDER_4K, _______________________________________________ Xen-devel mailing list [email protected] https://lists.xenproject.org/mailman/listinfo/xen-devel
