mirror of
https://github.com/torvalds/linux.git
synced 2024-12-01 00:21:32 +00:00
Merge branch 'for-4.14-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
Pull cgroup fix from Tejun Heo: "The recent migration code updates assumed that migrations always execute from the top to the bottom once and didn't clean up internal states after each migration round; however, cgroup_transfer_tasks() repeats the inner steps multiple times and the garbage internal states from the previous iteration led to OOPS. Waiman fixed the bug by reinitializing the relevant states at the end of each migration round" * 'for-4.14-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup: cgroup: Reinit cgroup_taskset structure before cgroup_migrate_execute() returns
This commit is contained in:
commit
847d9fb477
@ -2311,6 +2311,14 @@ out_release_tset:
|
||||
list_del_init(&cset->mg_node);
|
||||
}
|
||||
spin_unlock_irq(&css_set_lock);
|
||||
|
||||
/*
|
||||
* Re-initialize the cgroup_taskset structure in case it is reused
|
||||
* again in another cgroup_migrate_add_task()/cgroup_migrate_execute()
|
||||
* iteration.
|
||||
*/
|
||||
tset->nr_tasks = 0;
|
||||
tset->csets = &tset->src_csets;
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user