From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751210AbdBLIcQ (ORCPT ); Sun, 12 Feb 2017 03:32:16 -0500 Received: from pandora.armlinux.org.uk ([78.32.30.218]:54938 "EHLO pandora.armlinux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751136AbdBLIcP (ORCPT ); Sun, 12 Feb 2017 03:32:15 -0500 Date: Sun, 12 Feb 2017 08:31:59 +0000 From: Russell King - ARM Linux To: kbuild test robot Cc: kbuild-all@01.org, linux-kernel@vger.kernel.org, Thomas Gleixner Subject: Re: include/linux/kprobes.h:361:2: error: invalid use of undefined type 'struct kprobe_ctlblk' Message-ID: <20170212083159.GS27312@n2100.armlinux.org.uk> References: <201702121556.110UGXQK%fengguang.wu@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201702121556.110UGXQK%fengguang.wu@intel.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The facts of this are: linux/kprobes.h includes asm/kprobes.h linux/kprobes.h wants the architecture to define struct kprobe_ctlblk. arch/mn10300/include/asm/kprobes.h fails to define this structure. So, I've no idea how kprobes can even work on this architecture. AFAICS it should not allow kprobes to be enabled. This problem needs resolving by the mn10300 maintainer. I can do nothing about it. On Sun, Feb 12, 2017 at 03:41:10PM +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: 1ce42845f987e92eabfc6e026d44d826c25c74a5 > commit: b2c0b2cbb282f0cf42518ffacbe197e6f2884168 nmi: create generic NMI backtrace implementation > date: 1 year, 7 months ago > config: mn10300-allyesconfig (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 > :::::: CC: Steven Rostedt > > --- > 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.