lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Mon, 13 Sep 2021 02:23:10 +0800
From:   kernel test robot <lkp@...el.com>
To:     Ard Biesheuvel <ardb@...nel.org>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [ardb:arm32-ti-in-task 4/7] include/linux/percpu-defs.h:240:1:
 error: braced-group within expression allowed only inside a function

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git arm32-ti-in-task
head:   1a3074da6972ec4df258a8503ef5541362b0d0d1
commit: 59803622c2c2614e91a19cf9a00a2d96095c2132 [4/7] ARM: smp: use a per-CPU variable to record the CPU number
config: arm-allyesconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?id=59803622c2c2614e91a19cf9a00a2d96095c2132
        git remote add ardb git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git
        git fetch --no-tags ardb arm32-ti-in-task
        git checkout 59803622c2c2614e91a19cf9a00a2d96095c2132
        # save the attached .config to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

All errors (new ones prefixed by >>):

   In file included from include/asm-generic/percpu.h:7,
                    from arch/arm/include/asm/percpu.h:41,
                    from include/linux/irqflags.h:17,
                    from arch/arm/include/asm/bitops.h:28,
                    from include/linux/bitops.h:33,
                    from include/linux/kernel.h:12,
                    from arch/arm/common/mcpm_entry.c:10:
>> include/linux/percpu-defs.h:240:1: error: braced-group within expression allowed only inside a function
     240 | ({                                                                      \
         | ^
   arch/arm/include/asm/smp.h:21:34: note: in expansion of macro 'raw_cpu_ptr'
      21 | #define raw_smp_processor_id() (*raw_cpu_ptr(&cpu_number))
         |                                  ^~~~~~~~~~~
   include/linux/smp.h:258:31: note: in expansion of macro 'raw_smp_processor_id'
     258 | #define __smp_processor_id(x) raw_smp_processor_id(x)
         |                               ^~~~~~~~~~~~~~~~~~~~
   include/linux/smp.h:265:29: note: in expansion of macro '__smp_processor_id'
     265 | # define smp_processor_id() __smp_processor_id()
         |                             ^~~~~~~~~~~~~~~~~~
   arch/arm/include/asm/proc-fns.h:114:52: note: in expansion of macro 'smp_processor_id'
     114 | #define PROC_VTABLE(f)                  cpu_vtable[smp_processor_id()]->f
         |                                                    ^~~~~~~~~~~~~~~~
   arch/arm/include/asm/proc-fns.h:137:41: note: in expansion of macro 'PROC_VTABLE'
     137 | #define cpu_reset                       PROC_VTABLE(reset)
         |                                         ^~~~~~~~~~~
   arch/arm/common/mcpm_entry.c:237:16: note: in expansion of macro 'cpu_reset'
     237 | typedef typeof(cpu_reset) phys_reset_t;
         |                ^~~~~~~~~
   arch/arm/common/mcpm_entry.c: In function 'mcpm_cpu_power_down':
>> arch/arm/common/mcpm_entry.c:302:9: error: called object 'phys_reset' is not a function or function pointer
     302 |         phys_reset(__pa_symbol(mcpm_entry_point), false);
         |         ^~~~~~~~~~
   arch/arm/common/mcpm_entry.c:243:22: note: declared here
     243 |         phys_reset_t phys_reset;
         |                      ^~~~~~~~~~
   arch/arm/common/mcpm_entry.c: In function 'nocache_trampoline':
   arch/arm/common/mcpm_entry.c:391:9: error: called object 'phys_reset' is not a function or function pointer
     391 |         phys_reset(__pa_symbol(mcpm_entry_point), false);
         |         ^~~~~~~~~~
   arch/arm/common/mcpm_entry.c:379:22: note: declared here
     379 |         phys_reset_t phys_reset;
         |                      ^~~~~~~~~~
--
   In file included from include/asm-generic/percpu.h:7,
                    from arch/arm/include/asm/percpu.h:41,
                    from include/linux/irqflags.h:17,
                    from arch/arm/include/asm/bitops.h:28,
                    from include/linux/bitops.h:33,
                    from include/linux/kernel.h:12,
                    from include/linux/list.h:9,
                    from include/linux/preempt.h:11,
                    from include/linux/spinlock.h:55,
                    from include/linux/mmzone.h:8,
                    from include/linux/gfp.h:6,
                    from include/linux/mm.h:10,
                    from arch/arm/include/asm/cacheflush.h:10,
                    from arch/arm/include/asm/mcpm.h:30,
                    from arch/arm/include/asm/arm-cci.h:12,
                    from include/linux/arm-cci.h:14,
                    from arch/arm/mach-sunxi/mc_smp.c:14:
>> include/linux/percpu-defs.h:240:1: error: braced-group within expression allowed only inside a function
     240 | ({                                                                      \
         | ^
   arch/arm/include/asm/smp.h:21:34: note: in expansion of macro 'raw_cpu_ptr'
      21 | #define raw_smp_processor_id() (*raw_cpu_ptr(&cpu_number))
         |                                  ^~~~~~~~~~~
   include/linux/smp.h:258:31: note: in expansion of macro 'raw_smp_processor_id'
     258 | #define __smp_processor_id(x) raw_smp_processor_id(x)
         |                               ^~~~~~~~~~~~~~~~~~~~
   include/linux/smp.h:265:29: note: in expansion of macro '__smp_processor_id'
     265 | # define smp_processor_id() __smp_processor_id()
         |                             ^~~~~~~~~~~~~~~~~~
   arch/arm/include/asm/proc-fns.h:114:52: note: in expansion of macro 'smp_processor_id'
     114 | #define PROC_VTABLE(f)                  cpu_vtable[smp_processor_id()]->f
         |                                                    ^~~~~~~~~~~~~~~~
   arch/arm/include/asm/proc-fns.h:137:41: note: in expansion of macro 'PROC_VTABLE'
     137 | #define cpu_reset                       PROC_VTABLE(reset)
         |                                         ^~~~~~~~~~~
   arch/arm/mach-sunxi/mc_smp.c:650:16: note: in expansion of macro 'cpu_reset'
     650 | typedef typeof(cpu_reset) phys_reset_t;
         |                ^~~~~~~~~
   arch/arm/mach-sunxi/mc_smp.c: In function 'nocache_trampoline':
>> arch/arm/mach-sunxi/mc_smp.c:660:9: error: called object 'phys_reset' is not a function or function pointer
     660 |         phys_reset(__pa_symbol(sunxi_mc_smp_resume), false);
         |         ^~~~~~~~~~
   arch/arm/mach-sunxi/mc_smp.c:654:22: note: declared here
     654 |         phys_reset_t phys_reset;
         |                      ^~~~~~~~~~


vim +240 include/linux/percpu-defs.h

62fde54123fb64 Tejun Heo 2014-06-17  238  
6fbc07bbe2b5a8 Tejun Heo 2014-06-17  239  #define raw_cpu_ptr(ptr)						\
6fbc07bbe2b5a8 Tejun Heo 2014-06-17 @240  ({									\
6fbc07bbe2b5a8 Tejun Heo 2014-06-17  241  	__verify_pcpu_ptr(ptr);						\
6fbc07bbe2b5a8 Tejun Heo 2014-06-17  242  	arch_raw_cpu_ptr(ptr);						\
6fbc07bbe2b5a8 Tejun Heo 2014-06-17  243  })
62fde54123fb64 Tejun Heo 2014-06-17  244  

:::::: The code at line 240 was first introduced by commit
:::::: 6fbc07bbe2b5a898532f970c5a397f8789ace0d5 percpu: invoke __verify_pcpu_ptr() from the generic part of accessors and operations

:::::: TO: Tejun Heo <tj@...nel.org>
:::::: CC: Tejun Heo <tj@...nel.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (79187 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ