Skip to content

Commit a79134f

Browse files
committed
Merge: lib/group_cpus: fix NULL pointer dereference from group_cpus_evenly()
MR: https://gitlab.com/redhat/centos-stream/src/kernel/centos-stream-10/-/merge_requests/1142 lib/group_cpus: fix NULL pointer dereference from group_cpus_evenly() JIRA: https://issues.redhat.com/browse/RHEL-100484 Signed-off-by: Ming Lei <[email protected]> Approved-by: Rafael Aquini <[email protected]> Approved-by: Herton R. Krzesinski <[email protected]> Approved-by: CKI KWF Bot <[email protected]> Merged-by: Julio Faracco <[email protected]>
2 parents d0ee5a8 + fd76827 commit a79134f

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

lib/group_cpus.c

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,9 @@ struct cpumask *group_cpus_evenly(unsigned int numgrps)
352352
int ret = -ENOMEM;
353353
struct cpumask *masks = NULL;
354354

355+
if (numgrps == 0)
356+
return NULL;
357+
355358
if (!zalloc_cpumask_var(&nmsk, GFP_KERNEL))
356359
return NULL;
357360

@@ -426,8 +429,12 @@ struct cpumask *group_cpus_evenly(unsigned int numgrps)
426429
#else /* CONFIG_SMP */
427430
struct cpumask *group_cpus_evenly(unsigned int numgrps)
428431
{
429-
struct cpumask *masks = kcalloc(numgrps, sizeof(*masks), GFP_KERNEL);
432+
struct cpumask *masks;
430433

434+
if (numgrps == 0)
435+
return NULL;
436+
437+
masks = kcalloc(numgrps, sizeof(*masks), GFP_KERNEL);
431438
if (!masks)
432439
return NULL;
433440

0 commit comments

Comments
 (0)