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>] [thread-next>] [day] [month] [year] [list]
Message-ID: <202405210052.DIrMXJNz-lkp@intel.com>
Date: Tue, 21 May 2024 00:31:18 +0800
From: kernel test robot <lkp@...el.com>
To: Suren Baghdasaryan <surenb@...gle.com>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
	Andrew Morton <akpm@...ux-foundation.org>,
	Linux Memory Management List <linux-mm@...ck.org>,
	Kent Overstreet <kent.overstreet@...ux.dev>
Subject: include/asm-generic/percpu.h:31:40: error: implicit declaration of
 function 'raw_smp_processor_id'

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   eb6a9339efeb6f3d2b5c86fdf2382cdc293eca2c
commit: 24e44cc22aa3112082f2ee23137d048c73ca96d5 mm: percpu: enable per-cpu allocation tagging
date:   4 weeks ago
config: mips-randconfig-r133-20240520 (https://download.01.org/0day-ci/archive/20240521/202405210052.DIrMXJNz-lkp@intel.com/config)
compiler: mips-linux-gcc (GCC) 13.2.0
reproduce: (https://download.01.org/0day-ci/archive/20240521/202405210052.DIrMXJNz-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202405210052.DIrMXJNz-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from include/linux/compiler_types.h:151,
                    from <command-line>:
   include/linux/alloc_tag.h: In function '__alloc_tag_ref_set':
>> include/asm-generic/percpu.h:31:40: error: implicit declaration of function 'raw_smp_processor_id' [-Werror=implicit-function-declaration]
      31 | #define __my_cpu_offset per_cpu_offset(raw_smp_processor_id())
         |                                        ^~~~~~~~~~~~~~~~~~~~
   include/linux/compiler-gcc.h:35:33: note: in definition of macro 'RELOC_HIDE'
      35 |         (typeof(ptr)) (__ptr + (off));                                  \
         |                                 ^~~
   include/asm-generic/percpu.h:44:31: note: in expansion of macro 'SHIFT_PERCPU_PTR'
      44 | #define arch_raw_cpu_ptr(ptr) SHIFT_PERCPU_PTR(ptr, __my_cpu_offset)
         |                               ^~~~~~~~~~~~~~~~
   include/asm-generic/percpu.h:31:25: note: in expansion of macro 'per_cpu_offset'
      31 | #define __my_cpu_offset per_cpu_offset(raw_smp_processor_id())
         |                         ^~~~~~~~~~~~~~
   include/asm-generic/percpu.h:44:53: note: in expansion of macro '__my_cpu_offset'
      44 | #define arch_raw_cpu_ptr(ptr) SHIFT_PERCPU_PTR(ptr, __my_cpu_offset)
         |                                                     ^~~~~~~~~~~~~~~
   include/linux/percpu-defs.h:242:9: note: in expansion of macro 'arch_raw_cpu_ptr'
     242 |         arch_raw_cpu_ptr(ptr);                                          \
         |         ^~~~~~~~~~~~~~~~
   include/asm-generic/percpu.h:72:10: note: in expansion of macro 'raw_cpu_ptr'
      72 |         *raw_cpu_ptr(&(pcp)) op val;                                    \
         |          ^~~~~~~~~~~
   include/asm-generic/percpu.h:156:9: note: in expansion of macro 'raw_cpu_generic_to_op'
     156 |         raw_cpu_generic_to_op(pcp, val, op);                            \
         |         ^~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/percpu.h:401:41: note: in expansion of macro 'this_cpu_generic_to_op'
     401 | #define this_cpu_add_1(pcp, val)        this_cpu_generic_to_op(pcp, val, +=)
         |                                         ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/percpu-defs.h:365:25: note: in expansion of macro 'this_cpu_add_1'
     365 |                 case 1: stem##1(variable, __VA_ARGS__);break;           \
         |                         ^~~~
   include/linux/percpu-defs.h:491:41: note: in expansion of macro '__pcpu_size_call'
     491 | #define this_cpu_add(pcp, val)          __pcpu_size_call(this_cpu_add_, pcp, val)
         |                                         ^~~~~~~~~~~~~~~~
   include/linux/percpu-defs.h:501:41: note: in expansion of macro 'this_cpu_add'
     501 | #define this_cpu_inc(pcp)               this_cpu_add(pcp, 1)
         |                                         ^~~~~~~~~~~~
   include/linux/alloc_tag.h:117:9: note: in expansion of macro 'this_cpu_inc'
     117 |         this_cpu_inc(tag->counters->calls);
         |         ^~~~~~~~~~~~
   In file included from include/linux/smp.h:119,
                    from include/linux/percpu.h:8,
                    from include/linux/context_tracking_state.h:5,
                    from include/linux/hardirq.h:5,
                    from include/linux/interrupt.h:11,
                    from include/drm/drm_util.h:35,
                    from drivers/gpu/drm/xe/xe_device.h:12,
                    from drivers/gpu/drm/xe/xe_bb.c:10:
   arch/mips/include/asm/smp.h: At top level:
>> arch/mips/include/asm/smp.h:26:19: error: static declaration of 'raw_smp_processor_id' follows non-static declaration
      26 | static inline int raw_smp_processor_id(void)
         |                   ^~~~~~~~~~~~~~~~~~~~
   include/asm-generic/percpu.h:31:40: note: previous implicit declaration of 'raw_smp_processor_id' with type 'int()'
      31 | #define __my_cpu_offset per_cpu_offset(raw_smp_processor_id())
         |                                        ^~~~~~~~~~~~~~~~~~~~
   include/linux/compiler-gcc.h:35:33: note: in definition of macro 'RELOC_HIDE'
      35 |         (typeof(ptr)) (__ptr + (off));                                  \
         |                                 ^~~
   include/asm-generic/percpu.h:44:31: note: in expansion of macro 'SHIFT_PERCPU_PTR'
      44 | #define arch_raw_cpu_ptr(ptr) SHIFT_PERCPU_PTR(ptr, __my_cpu_offset)
         |                               ^~~~~~~~~~~~~~~~
   include/asm-generic/percpu.h:31:25: note: in expansion of macro 'per_cpu_offset'
      31 | #define __my_cpu_offset per_cpu_offset(raw_smp_processor_id())
         |                         ^~~~~~~~~~~~~~
   include/asm-generic/percpu.h:44:53: note: in expansion of macro '__my_cpu_offset'
      44 | #define arch_raw_cpu_ptr(ptr) SHIFT_PERCPU_PTR(ptr, __my_cpu_offset)
         |                                                     ^~~~~~~~~~~~~~~
   include/linux/percpu-defs.h:242:9: note: in expansion of macro 'arch_raw_cpu_ptr'
     242 |         arch_raw_cpu_ptr(ptr);                                          \
         |         ^~~~~~~~~~~~~~~~
   include/asm-generic/percpu.h:72:10: note: in expansion of macro 'raw_cpu_ptr'
      72 |         *raw_cpu_ptr(&(pcp)) op val;                                    \
         |          ^~~~~~~~~~~
   include/asm-generic/percpu.h:156:9: note: in expansion of macro 'raw_cpu_generic_to_op'
     156 |         raw_cpu_generic_to_op(pcp, val, op);                            \
         |         ^~~~~~~~~~~~~~~~~~~~~
   include/asm-generic/percpu.h:401:41: note: in expansion of macro 'this_cpu_generic_to_op'
     401 | #define this_cpu_add_1(pcp, val)        this_cpu_generic_to_op(pcp, val, +=)
         |                                         ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/percpu-defs.h:365:25: note: in expansion of macro 'this_cpu_add_1'
     365 |                 case 1: stem##1(variable, __VA_ARGS__);break;           \
         |                         ^~~~
   include/linux/percpu-defs.h:491:41: note: in expansion of macro '__pcpu_size_call'
     491 | #define this_cpu_add(pcp, val)          __pcpu_size_call(this_cpu_add_, pcp, val)
         |                                         ^~~~~~~~~~~~~~~~
   include/linux/percpu-defs.h:501:41: note: in expansion of macro 'this_cpu_add'
     501 | #define this_cpu_inc(pcp)               this_cpu_add(pcp, 1)
         |                                         ^~~~~~~~~~~~
   include/linux/alloc_tag.h:117:9: note: in expansion of macro 'this_cpu_inc'
     117 |         this_cpu_inc(tag->counters->calls);
         |         ^~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/raw_smp_processor_id +31 include/asm-generic/percpu.h

acdac87202a408 travis@....com 2008-01-30  23  
acdac87202a408 travis@....com 2008-01-30  24  /*
acdac87202a408 travis@....com 2008-01-30  25   * Determine the offset for the currently active processor.
acdac87202a408 travis@....com 2008-01-30  26   * An arch may define __my_cpu_offset to provide a more effective
acdac87202a408 travis@....com 2008-01-30  27   * means of obtaining the offset to the per cpu variables of the
acdac87202a408 travis@....com 2008-01-30  28   * current processor.
acdac87202a408 travis@....com 2008-01-30  29   */
acdac87202a408 travis@....com 2008-01-30  30  #ifndef __my_cpu_offset
acdac87202a408 travis@....com 2008-01-30 @31  #define __my_cpu_offset per_cpu_offset(raw_smp_processor_id())
1e8352784abaed Hugh Dickins   2008-02-23  32  #endif
1e8352784abaed Hugh Dickins   2008-02-23  33  #ifdef CONFIG_DEBUG_PREEMPT
acdac87202a408 travis@....com 2008-01-30  34  #define my_cpu_offset per_cpu_offset(smp_processor_id())
acdac87202a408 travis@....com 2008-01-30  35  #else
acdac87202a408 travis@....com 2008-01-30  36  #define my_cpu_offset __my_cpu_offset
acdac87202a408 travis@....com 2008-01-30  37  #endif
acdac87202a408 travis@....com 2008-01-30  38  

:::::: The code at line 31 was first introduced by commit
:::::: acdac87202a408133ee8f7985076de9d2e0dc5ab percpu: make the asm-generic/percpu.h more "generic"

:::::: TO: travis@....com <travis@....com>
:::::: CC: Ingo Molnar <mingo@...e.hu>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ