Use list_for_each_entry_safe() instead of list_entry()
to simplify code.

Signed-off-by: Yijing Wang <wangyij...@huawei.com>
---
 drivers/iommu/intel-iommu.c |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index f256ffc..e020dcf 100644
--- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c
@@ -2101,13 +2101,11 @@ static inline void unlink_domain_info(struct 
device_domain_info *info)
 
 static void domain_remove_dev_info(struct dmar_domain *domain)
 {
-       struct device_domain_info *info;
+       struct device_domain_info *info, *tmp;
        unsigned long flags, flags2;
 
        spin_lock_irqsave(&device_domain_lock, flags);
-       while (!list_empty(&domain->devices)) {
-               info = list_entry(domain->devices.next,
-                       struct device_domain_info, link);
+       list_for_each_entry_safe(info, tmp, &domain->devices, link) {
                unlink_domain_info(info);
                spin_unlock_irqrestore(&device_domain_lock, flags);
 
-- 
1.7.1


_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

Reply via email to