Hi Joerg, On 06/01/2017 12:01, Joerg Roedel wrote: > On Thu, Jan 05, 2017 at 07:04:36PM +0000, Eric Auger wrote: >> +static void intel_iommu_get_resv_regions(struct device *device, >> + struct list_head *head) >> +{ >> + struct iommu_resv_region *reg; >> + >> + reg = iommu_alloc_resv_region(IOAPIC_RANGE_START, >> + IOAPIC_RANGE_END - IOAPIC_RANGE_START + 1, >> + 0, IOMMU_RESV_NOMAP); >> + if (!reg) >> + return; >> + list_add_tail(®->list, head); >> +} > > That is different from what AMD does, can you also report the RMRR > regions for the device here (as direct-map regions)? if I return RMRR regions as direct mapped regions, iommu_group_create_direct_mappings will perform the 1-1 mapping. I am not familiar with the intel-iommu code but I guess this job currently is done in the intel driver: iommu_prepare_rmrr_dev -> iommu_prepare_identity_map ->domain_prepare_identity_map -> iommu_domain_identity_map? What is your feeling? Thanks Eric > > > > Joerg > -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html