lib/nmi-backtrace.c needs linux/kprobes.h to get at the definition of
NOKPROBE_SYMBOL().

I guess MN10300 does not support CONFIG_KPROBES=y.  CONFIG_KPROBES=y
requires the architecture asm/kprobes.h to define this structure,
and mn10300 does not.

I guess that as things like the scheduler also include linux/kprobes.h,
this is not the only instance of this error when building mn10300 with
KPROBES enabled.

So, I guess that there's nothing that can be done about the build error
other than "don't build mn10300 with KPROBES enabled".

On Sun, Nov 13, 2016 at 09:09:26AM +0800, kbuild test robot wrote:
> Hi Russell,
> 
> FYI, the error/warning still remains.
> 
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
> master
> head:   86e4ee760ef2f7571e233a3abf065ffd0bb4089d
> commit: b2c0b2cbb282f0cf42518ffacbe197e6f2884168 nmi: create generic NMI 
> backtrace implementation
> date:   1 year, 4 months ago
> config: mn10300-allmodconfig (attached as .config)
> compiler: am33_2.0-linux-gcc (GCC) 6.2.0
> reproduce:
>         wget 
> https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross
>  -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         git checkout b2c0b2cbb282f0cf42518ffacbe197e6f2884168
>         # save the attached .config to linux build tree
>         make.cross ARCH=mn10300 
> 
> All errors (new ones prefixed by >>):
> 
>    In file included from lib/nmi_backtrace.c:17:0:
>    include/linux/kprobes.h: In function 'get_kprobe_ctlblk':
> >> include/linux/kprobes.h:361:2: error: invalid use of undefined type 
> >> 'struct kprobe_ctlblk'
>      return this_cpu_ptr(&kprobe_ctlblk);
>      ^~~~~~
> 
> vim +361 include/linux/kprobes.h
> 
> e65845235 Ananth N Mavinakayanahalli 2005-11-07  355  {
> b76834bc1 Christoph Lameter          2010-12-06  356          
> __this_cpu_write(current_kprobe, NULL);
> e65845235 Ananth N Mavinakayanahalli 2005-11-07  357  }
> e65845235 Ananth N Mavinakayanahalli 2005-11-07  358  
> e65845235 Ananth N Mavinakayanahalli 2005-11-07  359  static inline struct 
> kprobe_ctlblk *get_kprobe_ctlblk(void)
> e65845235 Ananth N Mavinakayanahalli 2005-11-07  360  {
> bdffd893a Christoph Lameter          2014-04-29 @361          return 
> this_cpu_ptr(&kprobe_ctlblk);
> e65845235 Ananth N Mavinakayanahalli 2005-11-07  362  }
> e65845235 Ananth N Mavinakayanahalli 2005-11-07  363  
> ^1da177e4 Linus Torvalds             2005-04-16  364  int 
> register_kprobe(struct kprobe *p);
> 
> :::::: The code at line 361 was first introduced by commit
> :::::: bdffd893a0e9c431304142d12d9a0a21d365c502 tracing: Replace 
> __get_cpu_var uses with this_cpu_ptr
> 
> :::::: TO: Christoph Lameter <c...@linux.com>
> :::::: CC: Steven Rostedt <rost...@goodmis.org>
> 
> ---
> 0-DAY kernel test infrastructure                Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all                   Intel Corporation



-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.

Reply via email to