Re: [PATCH v14 10/22] vfio iommu type1: Add support for mediated devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 17 Nov 2016 02:16:22 +0530
Kirti Wankhede <kwankhede@xxxxxxxxxx> wrote:
> @@ -931,6 +1344,24 @@ static void vfio_iommu_type1_detach_group(void *iommu_data,
>  
>  	mutex_lock(&iommu->lock);
>  
> +	if (iommu->external_domain) {
> +		group = find_iommu_group(iommu->external_domain, iommu_group);
> +		if (group) {
> +			list_del(&group->next);
> +			kfree(group);
> +
> +			if (list_empty(&iommu->external_domain->group_list)) {
> +				vfio_sanity_check_pfn_list(iommu);
> +
> +				if (!IS_IOMMU_CAP_DOMAIN_IN_CONTAINER(iommu))
> +					vfio_iommu_unmap_unpin_all(iommu);
> +
> +				kfree(iommu->external_domain);

I advised in one place that I didn't understand why  we were checking
iommu->external_domain before walking the pfn_list, but we do have
several checks still in place for if(iommu->external_domain), so I
think we better be setting to NULL after we free it.

I haven't finished my review yet, but if this ends up being the only
comment and you agree, I can add:

iommu->external_domain = NULL;

here on commit.  Thanks,

Alex
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux