Messages in this thread | | | Date | Mon, 27 May 2013 11:03:38 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH 1/1] sched/autogroup: Fix race with task_groups list |
| |
On Fri, May 24, 2013 at 06:07:49PM +0200, Gerald Schaefer wrote: > In autogroup_create(), a tg is allocated and added to the task_groups > list. If CONFIG_RT_GROUP_SCHED is set, this tg is then modified while on > the list, without locking. This can race with someone walking the list, > like __enable_runtime() during CPU unplug, and result in a use-after-free > bug. > > To fix this, move sched_online_group(), which adds the tg to the list, > to the end of the autogroup_create() function after the modification. > > Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Ah indeed, nice catch. Thanks!
| |