Lines Matching refs:pdom_dev_data

32 static void remove_dev_pasid(struct pdom_dev_data *pdom_dev_data)  in remove_dev_pasid()  argument
35 amd_iommu_clear_gcr3(pdom_dev_data->dev_data, pdom_dev_data->pasid); in remove_dev_pasid()
37 list_del(&pdom_dev_data->list); in remove_dev_pasid()
38 kfree(pdom_dev_data); in remove_dev_pasid()
45 struct pdom_dev_data *pdom_dev_data; in remove_pdom_dev_pasid() local
50 for_each_pdom_dev_data(pdom_dev_data, pdom) { in remove_pdom_dev_pasid()
51 if (pdom_dev_data->dev_data == dev_data && in remove_pdom_dev_pasid()
52 pdom_dev_data->pasid == pasid) { in remove_pdom_dev_pasid()
53 remove_dev_pasid(pdom_dev_data); in remove_pdom_dev_pasid()
63 struct pdom_dev_data *pdom_dev_data; in sva_arch_invalidate_secondary_tlbs() local
71 for_each_pdom_dev_data(pdom_dev_data, sva_pdom) { in sva_arch_invalidate_secondary_tlbs()
72 amd_iommu_dev_flush_pasid_pages(pdom_dev_data->dev_data, in sva_arch_invalidate_secondary_tlbs()
73 pdom_dev_data->pasid, in sva_arch_invalidate_secondary_tlbs()
82 struct pdom_dev_data *pdom_dev_data, *next; in sva_mn_release() local
91 for_each_pdom_dev_data_safe(pdom_dev_data, next, sva_pdom) in sva_mn_release()
92 remove_dev_pasid(pdom_dev_data); in sva_mn_release()
105 struct pdom_dev_data *pdom_dev_data; in iommu_sva_set_dev_pasid() local
120 pdom_dev_data = kzalloc(sizeof(*pdom_dev_data), GFP_KERNEL); in iommu_sva_set_dev_pasid()
121 if (pdom_dev_data == NULL) in iommu_sva_set_dev_pasid()
124 pdom_dev_data->pasid = pasid; in iommu_sva_set_dev_pasid()
125 pdom_dev_data->dev_data = dev_data; in iommu_sva_set_dev_pasid()
133 kfree(pdom_dev_data); in iommu_sva_set_dev_pasid()
137 list_add(&pdom_dev_data->list, &sva_pdom->dev_data_list); in iommu_sva_set_dev_pasid()