Re: [linux-next:master 6470/6646] include/linux/kprobes.h:477:9: error: implicit declaration of function 'kprobe_fault_handler'; did you mean 'kprobe_page_fault'?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 15 Jun 2019 10:55:07 +0800 kbuild test robot <lkp@xxxxxxxxx> wrote:

> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
> head:   f4788d37bc84e27ac9370be252afb451bf6ef718
> commit: 4dd635bce90e8b6ed31c08cd654deca29f4d9d66 [6470/6646] mm, kprobes: generalize and rename notify_page_fault() as kprobe_page_fault()
> config: mips-allmodconfig (attached as .config)
> compiler: mips-linux-gcc (GCC) 7.4.0
> reproduce:
>         wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         git checkout 4dd635bce90e8b6ed31c08cd654deca29f4d9d66
>         # save the attached .config to linux build tree
>         GCC_VERSION=7.4.0 make.cross ARCH=mips 
> 
> If you fix the issue, kindly add following tag
> Reported-by: kbuild test robot <lkp@xxxxxxxxx>
> 
> All errors (new ones prefixed by >>):
> 
>    In file included from net//sctp/offload.c:11:0:
>    include/linux/kprobes.h: In function 'kprobe_page_fault':
> >> include/linux/kprobes.h:477:9: error: implicit declaration of function 'kprobe_fault_handler'; did you mean 'kprobe_page_fault'? [-Werror=implicit-function-declaration]
>      return kprobe_fault_handler(regs, trap);

Urgh, OK, thanks.

kprobe_fault_handler() is only ever defined and referenced in arch code
and generic code has no right to be assuming that the architecture
actually provides it.  And so it is with mips (at least).

The !CONFIG_KPROBES stub version of kprobe_fault_handler() should not
have been placed in include/linux/kprobes.h!  Each arch should have
defined its own, if that proved necessary.

Oh well, ho hum.  Hopefully Anshuman will be able to come up with a fix
for mips and any similarly-affected architectures.

Also, please very carefully check that this patchset is correct for all
architectures!  kprobe_fault_handler() could conceivably do different
things on different architectures.




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux