>>> On 23.06.15 at 11:57, <tiejun.c...@intel.com> wrote:
> --- a/xen/drivers/passthrough/vtd/iommu.c
> +++ b/xen/drivers/passthrough/vtd/iommu.c
> @@ -1839,7 +1839,7 @@ static int rmrr_identity_mapping(struct domain *d, 
> bool_t map,
>  
>              while ( base_pfn < end_pfn )
>              {
> -                if ( intel_iommu_unmap_page(d, base_pfn) )
> +                if ( guest_physmap_remove_page(d, base_pfn, base_pfn, 0) )
>                      ret = -ENXIO;
>                  base_pfn++;
>              }
> @@ -1855,8 +1855,7 @@ static int rmrr_identity_mapping(struct domain *d, 
> bool_t map,
>  
>      while ( base_pfn < end_pfn )
>      {
> -        int err = intel_iommu_map_page(d, base_pfn, base_pfn,
> -                                       IOMMUF_readable|IOMMUF_writable);
> +        int err = set_identity_p2m_entry(d, base_pfn, p2m_access_rw);

Shouldn't the two continue to be the inverse of one another?
Maybe guest_physmap_remove_page() does what you want,
but it looks like at least an abuse.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

Reply via email to