Merge git://www.linux-watchdog.org/linux-watchdog
[cascardo/linux.git] / drivers / vfio / vfio_iommu_spapr_tce.c
index 0582b72..80378dd 100644 (file)
@@ -331,14 +331,12 @@ static void tce_iommu_free_table(struct iommu_table *tbl);
 static void tce_iommu_release(void *iommu_data)
 {
        struct tce_container *container = iommu_data;
-       struct iommu_table_group *table_group;
        struct tce_iommu_group *tcegrp;
        long i;
 
        while (tce_groups_attached(container)) {
                tcegrp = list_first_entry(&container->group_list,
                                struct tce_iommu_group, next);
-               table_group = iommu_group_get_iommudata(tcegrp->grp);
                tce_iommu_detach_group(iommu_data, tcegrp->grp);
        }
 
@@ -1188,7 +1186,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));