[jolsa-perf:bpf/fprobe_link 3/10] include/linux/fprobe.h:20:33: error: field 'ops' has incomplete type

From: kernel test robot
Date: Wed Feb 02 2022 - 22:21:45 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git bpf/fprobe_link
head: f35f5b111d32e11c2201dcbfa5e3c8c0560a0a43
commit: 5292dedae3df76ecaa8b83f3a440172a78fff570 [3/10] bpf: Add support to attach kprobe program with fprobe
config: arc-randconfig-r043-20220130 (https://download.01.org/0day-ci/archive/20220203/202202031105.OEGj0FZz-lkp@xxxxxxxxx/config)
compiler: arc-elf-gcc (GCC) 11.2.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://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git/commit/?id=5292dedae3df76ecaa8b83f3a440172a78fff570
git remote add jolsa-perf https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
git fetch --no-tags jolsa-perf bpf/fprobe_link
git checkout 5292dedae3df76ecaa8b83f3a440172a78fff570
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash kernel/bpf/

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

All errors (new ones prefixed by >>):

In file included from kernel/bpf/syscall.c:35:
>> include/linux/fprobe.h:20:33: error: field 'ops' has incomplete type
20 | struct ftrace_ops ops;
| ^~~


vim +/ops +20 include/linux/fprobe.h

8249a1c232ade1 Masami Hiramatsu 2022-01-26 9
8249a1c232ade1 Masami Hiramatsu 2022-01-26 10 /**
8249a1c232ade1 Masami Hiramatsu 2022-01-26 11 * struct fprobe - ftrace based probe.
8249a1c232ade1 Masami Hiramatsu 2022-01-26 12 * @ops: The ftrace_ops.
8249a1c232ade1 Masami Hiramatsu 2022-01-26 13 * @nmissed: The counter for missing events.
8249a1c232ade1 Masami Hiramatsu 2022-01-26 14 * @flags: The status flag.
806149decce8b0 Masami Hiramatsu 2022-01-26 15 * @rethook: The rethook data structure. (internal data)
8249a1c232ade1 Masami Hiramatsu 2022-01-26 16 * @entry_handler: The callback function for function entry.
806149decce8b0 Masami Hiramatsu 2022-01-26 17 * @exit_handler: The callback function for function exit.
8249a1c232ade1 Masami Hiramatsu 2022-01-26 18 */
8249a1c232ade1 Masami Hiramatsu 2022-01-26 19 struct fprobe {
8249a1c232ade1 Masami Hiramatsu 2022-01-26 @20 struct ftrace_ops ops;
8249a1c232ade1 Masami Hiramatsu 2022-01-26 21 unsigned long nmissed;
8249a1c232ade1 Masami Hiramatsu 2022-01-26 22 unsigned int flags;
806149decce8b0 Masami Hiramatsu 2022-01-26 23 struct rethook *rethook;
806149decce8b0 Masami Hiramatsu 2022-01-26 24
8249a1c232ade1 Masami Hiramatsu 2022-01-26 25 void (*entry_handler)(struct fprobe *fp, unsigned long entry_ip, struct pt_regs *regs);
806149decce8b0 Masami Hiramatsu 2022-01-26 26 void (*exit_handler)(struct fprobe *fp, unsigned long entry_ip, struct pt_regs *regs);
8249a1c232ade1 Masami Hiramatsu 2022-01-26 27 };
8249a1c232ade1 Masami Hiramatsu 2022-01-26 28

:::::: The code at line 20 was first introduced by commit
:::::: 8249a1c232ade17392af10f640a79a5200744474 fprobe: Add ftrace based probe APIs

:::::: TO: Masami Hiramatsu <mhiramat@xxxxxxxxxx>
:::::: CC: Masami Hiramatsu <mhiramat@xxxxxxxxxx>

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