|
@@ -1446,7 +1446,7 @@ EXPORT_SYMBOL_GPL(pm_genpd_add_subdomain);
|
|
|
int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd,
|
|
|
struct generic_pm_domain *subdomain)
|
|
|
{
|
|
|
- struct gpd_link *link;
|
|
|
+ struct gpd_link *l, *link;
|
|
|
int ret = -EINVAL;
|
|
|
|
|
|
if (IS_ERR_OR_NULL(genpd) || IS_ERR_OR_NULL(subdomain))
|
|
@@ -1462,7 +1462,7 @@ int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd,
|
|
|
goto out;
|
|
|
}
|
|
|
|
|
|
- list_for_each_entry(link, &genpd->master_links, master_node) {
|
|
|
+ list_for_each_entry_safe(link, l, &genpd->master_links, master_node) {
|
|
|
if (link->slave != subdomain)
|
|
|
continue;
|
|
|
|