The following commit has been merged into the x86/urgent branch of tip:

Commit-ID:     d7110a26e5905ec2fe3fc88bc6a538901accb72b
Gitweb:        
https://git.kernel.org/tip/d7110a26e5905ec2fe3fc88bc6a538901accb72b
Author:        Nathan Chancellor <natechancel...@gmail.com>
AuthorDate:    Wed, 08 Apr 2020 13:53:23 -07:00
Committer:     Borislav Petkov <b...@suse.de>
CommitterDate: Tue, 19 May 2020 19:30:28 +02:00

x86/mmiotrace: Use cpumask_available() for cpumask_var_t variables

When building with Clang + -Wtautological-compare and
CONFIG_CPUMASK_OFFSTACK unset:

  arch/x86/mm/mmio-mod.c:375:6: warning: comparison of array 'downed_cpus'
  equal to a null pointer is always false [-Wtautological-pointer-compare]
          if (downed_cpus == NULL &&
              ^~~~~~~~~~~    ~~~~
  arch/x86/mm/mmio-mod.c:405:6: warning: comparison of array 'downed_cpus'
  equal to a null pointer is always false [-Wtautological-pointer-compare]
          if (downed_cpus == NULL || cpumask_weight(downed_cpus) == 0)
              ^~~~~~~~~~~    ~~~~
  2 warnings generated.

Commit

  f7e30f01a9e2 ("cpumask: Add helper cpumask_available()")

added cpumask_available() to fix warnings of this nature. Use that here
so that clang does not warn regardless of CONFIG_CPUMASK_OFFSTACK's
value.

Reported-by: Sedat Dilek <sedat.di...@gmail.com>
Signed-off-by: Nathan Chancellor <natechancel...@gmail.com>
Signed-off-by: Borislav Petkov <b...@suse.de>
Reviewed-by: Nick Desaulniers <ndesaulni...@google.com>
Acked-by: Steven Rostedt (VMware) <rost...@goodmis.org>
Link: https://github.com/ClangBuiltLinux/linux/issues/982
Link: https://lkml.kernel.org/r/20200408205323.44490-1-natechancel...@gmail.com
---
 arch/x86/mm/mmio-mod.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/mm/mmio-mod.c b/arch/x86/mm/mmio-mod.c
index 109325d..43fd19b 100644
--- a/arch/x86/mm/mmio-mod.c
+++ b/arch/x86/mm/mmio-mod.c
@@ -372,7 +372,7 @@ static void enter_uniprocessor(void)
        int cpu;
        int err;
 
-       if (downed_cpus == NULL &&
+       if (!cpumask_available(downed_cpus) &&
            !alloc_cpumask_var(&downed_cpus, GFP_KERNEL)) {
                pr_notice("Failed to allocate mask\n");
                goto out;
@@ -402,7 +402,7 @@ static void leave_uniprocessor(void)
        int cpu;
        int err;
 
-       if (downed_cpus == NULL || cpumask_weight(downed_cpus) == 0)
+       if (!cpumask_available(downed_cpus) || cpumask_weight(downed_cpus) == 0)
                return;
        pr_notice("Re-enabling CPUs...\n");
        for_each_cpu(cpu, downed_cpus) {

Reply via email to