cpuset: lock vs unlock typo
Subsystems (2)
PATCH 1/1 cpuset: lock vs unlock typo
This will deadlock instead of unlocking.
Fixes f73eae8d8384 ('cpuset: simplify cpuset_node_allowed API')
Signed-off-by Dan Carpenter <[email protected]>
kernel/cpuset.c +1 -1
@@ -1992,7 +1992,7 @@ static int cpuset_css_online(struct cgroup_subsys_state *css)spin_lock_irq (&callback_lock); cs->mems_allowed = parent->mems_allowed;cpumask_copy (cs->cpus_allowed, parent->cpus_allowed); -spin_lock_irq (&callback_lock); +spin_unlock_irq (&callback_lock); out_unlock:mutex_unlock (&cpuset_mutex);return 0 ;
Quoted 4 lines · Dan Carpenter
This will deadlock instead of unlocking.
Fixes f73eae8d8384 ('cpuset: simplify cpuset_node_allowed API')Signed-off-by Dan Carpenter <[email protected]>
Shame on me. It strikes only if cgroup.clone_children is set, so I didn't catch it while testing the patch :-(
Acked-by Vladimir Davydov <[email protected]>
Thank you!
Quoted 14 lines
kernel/cpuset.c +1
-1@@ -1992,7 +1992,7 @@ static int cpuset_css_online(struct cgroup_subsys_state *css)spin_lock_irq (&callback_lock); cs->mems_allowed = parent->mems_allowed;cpumask_copy (cs->cpus_allowed, parent->cpus_allowed); -spin_lock_irq (&callback_lock); +spin_unlock_irq (&callback_lock); out_unlock:mutex_unlock (&cpuset_mutex);return 0 ;