Re: [PATCH] kprobes: stacktrace: Recover the address changed by kretprobe

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

 



Hi Masami,

I love your patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v5.12-rc1 next-20210304]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Masami-Hiramatsu/kprobes-stacktrace-Recover-the-address-changed-by-kretprobe/20210304-212528
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git f69d02e37a85645aa90d18cacfff36dba370f797
config: parisc-allyesconfig (attached as .config)
compiler: hppa-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/0day-ci/linux/commit/2204ff150821a6a3c13b4fa10784b5efb3e3adc8
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Masami-Hiramatsu/kprobes-stacktrace-Recover-the-address-changed-by-kretprobe/20210304-212528
        git checkout 2204ff150821a6a3c13b4fa10784b5efb3e3adc8
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=parisc 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

   kernel/kprobes.c:1847:12: warning: no previous prototype for 'kprobe_exceptions_notify' [-Wmissing-prototypes]
    1847 | int __weak kprobe_exceptions_notify(struct notifier_block *self,
         |            ^~~~~~~~~~~~~~~~~~~~~~~~
   kernel/kprobes.c: In function 'kretprobe_real_stack_tsk':
>> kernel/kprobes.c:1874:30: error: 'kretprobe_trampoline' undeclared (first use in this function); did you mean 'kretprobe_blackpoint'?
    1874 |  if (addr != (unsigned long)&kretprobe_trampoline)
         |                              ^~~~~~~~~~~~~~~~~~~~
         |                              kretprobe_blackpoint
   kernel/kprobes.c:1874:30: note: each undeclared identifier is reported only once for each function it appears in
   kernel/kprobes.c: In function '__kretprobe_trampoline_handler':
   kernel/kprobes.c:1904:21: error: 'kretprobe_trampoline' undeclared (first use in this function); did you mean 'kretprobe_blackpoint'?
    1904 |     (unsigned long)&kretprobe_trampoline, &node);
         |                     ^~~~~~~~~~~~~~~~~~~~
         |                     kretprobe_blackpoint


vim +1874 kernel/kprobes.c

  1865	
  1866	/* This assumes the tsk is current or the task which is not running. */
  1867	unsigned long kretprobe_real_stack_tsk(struct task_struct *tsk,
  1868					       unsigned long addr,
  1869					       struct llist_node **cur)
  1870	{
  1871		struct kretprobe_instance *ri = NULL;
  1872		struct llist_node *node = *cur;
  1873	
> 1874		if (addr != (unsigned long)&kretprobe_trampoline)
  1875			return addr;
  1876	
  1877		if (!node)
  1878			node = tsk->kretprobe_instances.first;
  1879		else
  1880			node = node->next;
  1881	
  1882		while (node) {
  1883			ri = container_of(node, struct kretprobe_instance, llist);
  1884			if (ri->ret_addr != (void *)&kretprobe_trampoline) {
  1885				*cur = node;
  1886				return (unsigned long)ri->ret_addr;
  1887			}
  1888			node = node->next;
  1889		}
  1890		return 0;
  1891	}
  1892	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux