We are going to have multiple different types of PHB on the same system
with POWER8 + NVLink and PHBs will have different IOMMU ops. However
we only really care about one callback - create_table - so we can
relax the compatibility check here.

Signed-off-by: Alexey Kardashevskiy <a...@ozlabs.ru>
Reviewed-by: David Gibson <da...@gibson.dropbear.id.au>
---
 drivers/vfio/vfio_iommu_spapr_tce.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/vfio/vfio_iommu_spapr_tce.c 
b/drivers/vfio/vfio_iommu_spapr_tce.c
index 0582b72..3054e3f 100644
--- a/drivers/vfio/vfio_iommu_spapr_tce.c
+++ b/drivers/vfio/vfio_iommu_spapr_tce.c
@@ -1188,7 +1188,8 @@ static int tce_iommu_attach_group(void *iommu_data,
                        goto unlock_exit;
                }
                table_group_tmp = iommu_group_get_iommudata(tcegrp->grp);
-               if (table_group_tmp->ops != table_group->ops) {
+               if (table_group_tmp->ops->create_table !=
+                               table_group->ops->create_table) {
                        pr_warn("tce_vfio: Group %d is incompatible with group 
%d\n",
                                        iommu_group_id(iommu_group),
                                        iommu_group_id(tcegrp->grp));
-- 
2.5.0.rc3

Reply via email to