[PATCH] rcu: Avoid kthread_stop on invalid pointer if rcutorture reader startup fails
rcu_torture_init kmallocs the array of reader threads, then creates each one with kthread_run, cleaning up with rcu_torture_cleanup if this fails. rcu_torture_cleanup calls kthread_stop on any non-NULL pointer in the array; however, any readers after the one that failed to start up will have invalid pointers, not null pointers. Avoid this by using kzalloc instead. Signed-off-by: Josh Triplett <josh@freedesktop.org> Acked-by: Paul E. McKenney <paulmck@us.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
3c29e03d91
commit
2860aaba4d
1 changed files with 1 additions and 1 deletions
|
@ -780,7 +780,7 @@ rcu_torture_init(void)
|
|||
writer_task = NULL;
|
||||
goto unwind;
|
||||
}
|
||||
reader_tasks = kmalloc(nrealreaders * sizeof(reader_tasks[0]),
|
||||
reader_tasks = kzalloc(nrealreaders * sizeof(reader_tasks[0]),
|
||||
GFP_KERNEL);
|
||||
if (reader_tasks == NULL) {
|
||||
VERBOSE_PRINTK_ERRSTRING("out of memory");
|
||||
|
|
Loading…
Reference in a new issue