Message ID | 1462344751-28281-6-git-send-email-aik@ozlabs.ru (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, May 04, 2016 at 04:52:17PM +1000, Alexey Kardashevskiy wrote: > At the moment IOMMU MR only translate to the system memory. > However if some new code changes this, we will need clear indication why > it is not working so here is the check. > > Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> > Reviewed-by: David Gibson <david@gibson.dropbear.id.au> Alex, I think this is a reasonable sanity check regardless of what happens with the rest of the series. Can you apply this? > --- > Changes: > v15: > * added some spaces > > v14: > * new to the series > --- > hw/vfio/common.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/hw/vfio/common.c b/hw/vfio/common.c > index f32cc49..6d23d0f 100644 > --- a/hw/vfio/common.c > +++ b/hw/vfio/common.c > @@ -266,6 +266,12 @@ static void vfio_iommu_map_notify(Notifier *n, void *data) > > trace_vfio_iommu_map_notify(iova, iova + iotlb->addr_mask); > > + if (iotlb->target_as != &address_space_memory) { > + error_report("Wrong target AS \"%s\", only system memory is allowed", > + iotlb->target_as->name ? iotlb->target_as->name : "none"); > + return; > + } > + > /* > * The IOMMU TLB entry we have just covers translation through > * this IOMMU to its immediate target. We need to translate
diff --git a/hw/vfio/common.c b/hw/vfio/common.c index f32cc49..6d23d0f 100644 --- a/hw/vfio/common.c +++ b/hw/vfio/common.c @@ -266,6 +266,12 @@ static void vfio_iommu_map_notify(Notifier *n, void *data) trace_vfio_iommu_map_notify(iova, iova + iotlb->addr_mask); + if (iotlb->target_as != &address_space_memory) { + error_report("Wrong target AS \"%s\", only system memory is allowed", + iotlb->target_as->name ? iotlb->target_as->name : "none"); + return; + } + /* * The IOMMU TLB entry we have just covers translation through * this IOMMU to its immediate target. We need to translate