Hi BaoLu,
On Mon, 7 Feb 2022 14:41:41 +0800, Lu Baolu <baolu.lu@xxxxxxxxxxxxxxx>
wrote:
static void intel_iommu_release_device(struct device *dev)Now that info and sinfo are under RCU, should we use kfree_rcu?
{
- struct intel_iommu *iommu;
-
- iommu = device_to_iommu(dev, NULL, NULL);
- if (!iommu)
- return;
-
- dmar_remove_one_dev_info(dev);
+ struct device_domain_info *info = get_domain_info(dev);
+ unsigned long index = DEVI_IDX(info->segment, info->bus,
info->devfn);
+ xa_erase(&device_domain_array, index);
+ dev_iommu_priv_set(info->dev, NULL);
set_dma_ops(dev, NULL);
+ kfree(info);