torture: Don't leak shuffle_tmp_mask when shuffler kthread fails to start

If torture_shuffle_init() successfully allocates shuffle_tmp_mask but
then fails to create the torture_shuffle kthread, the cpumask is never
freed.

Free the cpumask directly on the kthread-creation error path.

Signed-off-by: Joel Fernandes <joelagnelf@nvidia.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
This commit is contained in:
Joel Fernandes 2026-07-18 13:15:35 -04:00 committed by Paul E. McKenney
parent ed55bb9150
commit aaf43c458c

View File

@ -577,6 +577,8 @@ static int torture_shuffle(void *arg)
*/
int torture_shuffle_init(long shuffint)
{
int ret;
shuffle_interval = shuffint;
shuffle_idle_cpu = -1;
@ -587,7 +589,10 @@ int torture_shuffle_init(long shuffint)
}
/* Create the shuffler thread */
return torture_create_kthread(torture_shuffle, NULL, shuffler_task);
ret = torture_create_kthread(torture_shuffle, NULL, shuffler_task);
if (ret)
free_cpumask_var(shuffle_tmp_mask);
return ret;
}
EXPORT_SYMBOL_GPL(torture_shuffle_init);