lkml.org 
[lkml]   [2019]   [Sep]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.2 150/185] x86/mm: Fix cpumask_of_node() error condition
    Date
    From: Peter Zijlstra <peterz@infradead.org>

    [ Upstream commit bc04a049f058a472695aa22905d57e2b1f4c77d9 ]

    When CONFIG_DEBUG_PER_CPU_MAPS=y we validate that the @node argument of
    cpumask_of_node() is a valid node_id. It however forgets to check for
    negative numbers. Fix this by explicitly casting to unsigned int.

    (unsigned)node >= nr_node_ids

    verifies: 0 <= node < nr_node_ids

    Also ammend the error message to match the condition.

    Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Yunsheng Lin <linyunsheng@huawei.com>
    Link: https://lkml.kernel.org/r/20190903075352.GY2369@hirez.programming.kicks-ass.net
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    arch/x86/mm/numa.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
    index e6dad600614c2..4123100e0eafe 100644
    --- a/arch/x86/mm/numa.c
    +++ b/arch/x86/mm/numa.c
    @@ -861,9 +861,9 @@ void numa_remove_cpu(int cpu)
    */
    const struct cpumask *cpumask_of_node(int node)
    {
    - if (node >= nr_node_ids) {
    + if ((unsigned)node >= nr_node_ids) {
    printk(KERN_WARNING
    - "cpumask_of_node(%d): node > nr_node_ids(%u)\n",
    + "cpumask_of_node(%d): (unsigned)node >= nr_node_ids(%u)\n",
    node, nr_node_ids);
    dump_stack();
    return cpu_none_mask;
    --
    2.20.1
    \
     
     \ /
      Last update: 2019-09-22 21:23    [W:4.036 / U:0.128 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site