Messages in this thread Patch in this message | | | From | Muchun Song <> | Subject | [PATCH v2] smp: Fix a potential usage of stale nr_cpus | Date | Sat, 18 Jul 2020 14:11:44 +0800 |
| |
When the cmdline of "nr_cpus" is not valid, the @nr_cpu_ids is assigned a stale value. The nr_cpus is only valid when get_option() return 1. So check the return value to prevent this.
Signed-off-by: Muchun Song <songmuchun@bytedance.com> --- changelog in v2: 1) Rework the commit log. 2) Rework the return value check.
kernel/smp.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/smp.c b/kernel/smp.c index a5a66fc28f4e..0bc260158047 100644 --- a/kernel/smp.c +++ b/kernel/smp.c @@ -772,8 +772,8 @@ static int __init nrcpus(char *str) { int nr_cpus; - get_option(&str, &nr_cpus); - if (nr_cpus > 0 && nr_cpus < nr_cpu_ids) + if ((get_option(&str, &nr_cpus) == 1) && + nr_cpus > 0 && nr_cpus < nr_cpu_ids) nr_cpu_ids = nr_cpus; return 0; -- 2.11.0
| |