Hi folks, After a long time of evolution, the drivers/iommu/intel/iommu.c becomes a bit messy. This series tries to cleanup and refactor the driver to make it more concise.
It includes, - Remove some unnecessary code, includes and prototypes; - Move creating per-device driver data from domain_attach to device_probe callback. - Use an array for global per-device driver data so that they could be searched repidly. - Use the rculist for per-domain device driver data and remove the existing spinlock. - Code style fix. Your comments are very appreciated. Best regards, baolu Change log: v1: initial post - https://lore.kernel.org/linux-iommu/[email protected]/ v2: - Avoid migration of large amounts of code. - Split the cleanup patches into separated ones for convenient code review. - This version of series is available on github: https://github.com/LuBaolu/intel-iommu/commits/iommu-vtd-cleanup-v2 Lu Baolu (11): iommu/vt-d: Remove intel_iommu::domains iommu/vt-d: Remove finding domain in dmar_insert_one_dev_info() iommu/vt-d: Remove iova_cache_get/put() iommu/vt-d: Remove domain and devinfo mempool iommu/vt-d: Remove DEFER_DEVICE_DOMAIN_INFO iommu/vt-d: Remove unnecessary includes iommu/vt-d: Remove unnecessary prototypes iommu/vt-d: Fix indentation of goto labels iommu/vt-d: Remove commented code iommu/vt-d: Use xarray for global device_domain_info iommu/vt-d: Use rculist for per-domain device list include/linux/intel-iommu.h | 6 +- drivers/iommu/intel/debugfs.c | 14 +- drivers/iommu/intel/iommu.c | 597 +++++++++------------------------- drivers/iommu/intel/pasid.c | 12 +- drivers/iommu/intel/svm.c | 6 +- 5 files changed, 165 insertions(+), 470 deletions(-) -- 2.25.1 _______________________________________________ iommu mailing list [email protected] https://lists.linuxfoundation.org/mailman/listinfo/iommu
