Merge tag 'pm-6.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull power management fix from Rafael Wysocki: "Add missing locking annotations to two recently introduced list_for_each_entry_rcu() loops in the core device suspend/resume code (Johannes Berg)" * tag 'pm-6.17-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: PM: sleep: annotate RCU list iterations
This commit is contained in:
@@ -675,7 +675,7 @@ static void dpm_async_resume_subordinate(struct device *dev, async_func_t func)
|
||||
idx = device_links_read_lock();
|
||||
|
||||
/* Start processing the device's "async" consumers. */
|
||||
list_for_each_entry_rcu(link, &dev->links.consumers, s_node)
|
||||
list_for_each_entry_rcu_locked(link, &dev->links.consumers, s_node)
|
||||
if (READ_ONCE(link->status) != DL_STATE_DORMANT)
|
||||
dpm_async_with_cleanup(link->consumer, func);
|
||||
|
||||
@@ -1330,7 +1330,7 @@ static void dpm_async_suspend_superior(struct device *dev, async_func_t func)
|
||||
idx = device_links_read_lock();
|
||||
|
||||
/* Start processing the device's "async" suppliers. */
|
||||
list_for_each_entry_rcu(link, &dev->links.suppliers, c_node)
|
||||
list_for_each_entry_rcu_locked(link, &dev->links.suppliers, c_node)
|
||||
if (READ_ONCE(link->status) != DL_STATE_DORMANT)
|
||||
dpm_async_with_cleanup(link->supplier, func);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user