LKML Archive mirror
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Suren Baghdasaryan <surenb@google.com>
Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>,
	Linux Memory Management List <linux-mm@kvack.org>,
	Kent Overstreet <kent.overstreet@linux.dev>
Subject: include/asm-generic/percpu.h:31:40: error: implicit declaration of function 'raw_smp_processor_id'
Date: Tue, 21 May 2024 00:31:18 +0800	[thread overview]
Message-ID: <202405210052.DIrMXJNz-lkp@intel.com> (raw)

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@intel.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@sgi.com 2008-01-30  23  
acdac87202a408 travis@sgi.com 2008-01-30  24  /*
acdac87202a408 travis@sgi.com 2008-01-30  25   * Determine the offset for the currently active processor.
acdac87202a408 travis@sgi.com 2008-01-30  26   * An arch may define __my_cpu_offset to provide a more effective
acdac87202a408 travis@sgi.com 2008-01-30  27   * means of obtaining the offset to the per cpu variables of the
acdac87202a408 travis@sgi.com 2008-01-30  28   * current processor.
acdac87202a408 travis@sgi.com 2008-01-30  29   */
acdac87202a408 travis@sgi.com 2008-01-30  30  #ifndef __my_cpu_offset
acdac87202a408 travis@sgi.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@sgi.com 2008-01-30  34  #define my_cpu_offset per_cpu_offset(smp_processor_id())
acdac87202a408 travis@sgi.com 2008-01-30  35  #else
acdac87202a408 travis@sgi.com 2008-01-30  36  #define my_cpu_offset __my_cpu_offset
acdac87202a408 travis@sgi.com 2008-01-30  37  #endif
acdac87202a408 travis@sgi.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@sgi.com <travis@sgi.com>
:::::: CC: Ingo Molnar <mingo@elte.hu>

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

             reply	other threads:[~2024-05-20 16:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-20 16:31 kernel test robot [this message]
2024-05-24 15:58 ` include/asm-generic/percpu.h:31:40: error: implicit declaration of function 'raw_smp_processor_id' Kent Overstreet
2024-05-25  8:08   ` Philip Li
2024-05-25  8:32     ` Kent Overstreet

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202405210052.DIrMXJNz-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=kent.overstreet@linux.dev \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=surenb@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).