lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Mon, 17 Oct 2022 18:36:58 +0800
From:   kernel test robot <lkp@...el.com>
To:     Mark Rutland <mark.rutland@....com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [mark:arm64/ftrace/per-callsite-ops 7/11]
 include/linux/ftrace.h:60:47: warning: 'struct dyn_ftrace' declared inside
 parameter list will not be visible outside of this definition or declaration

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git arm64/ftrace/per-callsite-ops
head:   c38c50315b2f4311f78a93848e088ac6c77e6aa5
commit: fd70dc6e91f8948e2def0e145b3874bac45a1295 [7/11] WIP: ftrace: add DYNAMIC_FTRACE_WITH_CALL_OPS
config: parisc-allyesconfig
compiler: hppa-linux-gcc (GCC) 12.1.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/mark/linux.git/commit/?id=fd70dc6e91f8948e2def0e145b3874bac45a1295
        git remote add mark https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git
        git fetch --no-tags mark arm64/ftrace/per-callsite-ops
        git checkout fd70dc6e91f8948e2def0e145b3874bac45a1295
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=parisc SHELL=/bin/bash arch/parisc/kernel/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>

All warnings (new ones prefixed by >>):

   In file included from include/linux/kprobes.h:28,
                    from include/linux/kgdb.h:19,
                    from arch/parisc/kernel/traps.c:47:
>> include/linux/ftrace.h:60:47: warning: 'struct dyn_ftrace' declared inside parameter list will not be visible outside of this definition or declaration
      60 | struct ftrace_ops *ftrace_find_rec_ops(struct dyn_ftrace *rec);
         |                                               ^~~~~~~~~~
   arch/parisc/kernel/traps.c:338:6: warning: no previous prototype for 'transfer_pim_to_trap_frame' [-Wmissing-prototypes]
     338 | void transfer_pim_to_trap_frame(struct pt_regs *regs)
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/traps.c:479:14: warning: no previous prototype for 'handle_interruption' [-Wmissing-prototypes]
     479 | void notrace handle_interruption(int code, struct pt_regs *regs)
         |              ^~~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/traps.c:806:13: warning: no previous prototype for 'initialize_ivt' [-Wmissing-prototypes]
     806 | void __init initialize_ivt(const void *iva)
         |             ^~~~~~~~~~~~~~
   arch/parisc/kernel/traps.c: In function 'initialize_ivt':
   arch/parisc/kernel/traps.c:813:14: warning: variable 'hpmcp' set but not used [-Wunused-but-set-variable]
     813 |         u32 *hpmcp;
         |              ^~~~~
   arch/parisc/kernel/traps.c: At top level:
   arch/parisc/kernel/traps.c:858:14: warning: no previous prototype for 'early_trap_init' [-Wmissing-prototypes]
     858 | void  __init early_trap_init(void)
         |              ^~~~~~~~~~~~~~~
--
   In file included from arch/parisc/kernel/time.c:31:
>> include/linux/ftrace.h:60:47: warning: 'struct dyn_ftrace' declared inside parameter list will not be visible outside of this definition or declaration
      60 | struct ftrace_ops *ftrace_find_rec_ops(struct dyn_ftrace *rec);
         |                                               ^~~~~~~~~~
   arch/parisc/kernel/time.c:64:25: warning: no previous prototype for 'timer_interrupt' [-Wmissing-prototypes]
      64 | irqreturn_t __irq_entry timer_interrupt(int irq, void *dev_id)
         |                         ^~~~~~~~~~~~~~~
   arch/parisc/kernel/time.c:155:6: warning: no previous prototype for 'start_cpu_itimer' [-Wmissing-prototypes]
     155 | void start_cpu_itimer(void)
         |      ^~~~~~~~~~~~~~~~
   arch/parisc/kernel/time.c:238:13: warning: no previous prototype for 'time_init' [-Wmissing-prototypes]
     238 | void __init time_init(void)
         |             ^~~~~~~~~
--
   In file included from include/linux/perf_event.h:52,
                    from include/linux/trace_events.h:10,
                    from include/trace/syscall.h:7,
                    from include/linux/syscalls.h:88,
                    from arch/parisc/kernel/sys_parisc.c:22:
>> include/linux/ftrace.h:60:47: warning: 'struct dyn_ftrace' declared inside parameter list will not be visible outside of this definition or declaration
      60 | struct ftrace_ops *ftrace_find_rec_ops(struct dyn_ftrace *rec);
         |                                               ^~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:247:15: warning: no previous prototype for 'arch_mmap_rnd' [-Wmissing-prototypes]
     247 | unsigned long arch_mmap_rnd(void)
         |               ^~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:275:26: warning: no previous prototype for 'sys_mmap2' [-Wmissing-prototypes]
     275 | asmlinkage unsigned long sys_mmap2(unsigned long addr, unsigned long len,
         |                          ^~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:285:26: warning: no previous prototype for 'sys_mmap' [-Wmissing-prototypes]
     285 | asmlinkage unsigned long sys_mmap(unsigned long addr, unsigned long len,
         |                          ^~~~~~~~
   arch/parisc/kernel/sys_parisc.c:328:17: warning: no previous prototype for 'parisc_truncate64' [-Wmissing-prototypes]
     328 | asmlinkage long parisc_truncate64(const char __user * path,
         |                 ^~~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:334:17: warning: no previous prototype for 'parisc_ftruncate64' [-Wmissing-prototypes]
     334 | asmlinkage long parisc_ftruncate64(unsigned int fd,
         |                 ^~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:341:20: warning: no previous prototype for 'parisc_pread64' [-Wmissing-prototypes]
     341 | asmlinkage ssize_t parisc_pread64(unsigned int fd, char __user *buf, size_t count,
         |                    ^~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:347:20: warning: no previous prototype for 'parisc_pwrite64' [-Wmissing-prototypes]
     347 | asmlinkage ssize_t parisc_pwrite64(unsigned int fd, const char __user *buf,
         |                    ^~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:353:20: warning: no previous prototype for 'parisc_readahead' [-Wmissing-prototypes]
     353 | asmlinkage ssize_t parisc_readahead(int fd, unsigned int high, unsigned int low,
         |                    ^~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:359:17: warning: no previous prototype for 'parisc_fadvise64_64' [-Wmissing-prototypes]
     359 | asmlinkage long parisc_fadvise64_64(int fd,
         |                 ^~~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:367:17: warning: no previous prototype for 'parisc_sync_file_range' [-Wmissing-prototypes]
     367 | asmlinkage long parisc_sync_file_range(int fd,
         |                 ^~~~~~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:375:17: warning: no previous prototype for 'parisc_fallocate' [-Wmissing-prototypes]
     375 | asmlinkage long parisc_fallocate(int fd, int mode, u32 offhi, u32 offlo,
         |                 ^~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:382:6: warning: no previous prototype for 'parisc_personality' [-Wmissing-prototypes]
     382 | long parisc_personality(unsigned long personality)
         |      ^~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:422:17: warning: no previous prototype for 'parisc_timerfd_create' [-Wmissing-prototypes]
     422 | asmlinkage long parisc_timerfd_create(int clockid, int flags)
         |                 ^~~~~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:428:17: warning: no previous prototype for 'parisc_signalfd4' [-Wmissing-prototypes]
     428 | asmlinkage long parisc_signalfd4(int ufd, sigset_t __user *user_mask,
         |                 ^~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:445:17: warning: no previous prototype for 'parisc_eventfd2' [-Wmissing-prototypes]
     445 | asmlinkage long parisc_eventfd2(unsigned int count, int flags)
         |                 ^~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:451:17: warning: no previous prototype for 'parisc_userfaultfd' [-Wmissing-prototypes]
     451 | asmlinkage long parisc_userfaultfd(int flags)
         |                 ^~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:457:17: warning: no previous prototype for 'parisc_pipe2' [-Wmissing-prototypes]
     457 | asmlinkage long parisc_pipe2(int __user *fildes, int flags)
         |                 ^~~~~~~~~~~~
   arch/parisc/kernel/sys_parisc.c:463:17: warning: no previous prototype for 'parisc_inotify_init1' [-Wmissing-prototypes]
     463 | asmlinkage long parisc_inotify_init1(int flags)
         |                 ^~~~~~~~~~~~~~~~~~~~
--
   In file included from include/linux/perf_event.h:52,
                    from include/linux/trace_events.h:10,
                    from include/trace/trace_events.h:21,
                    from include/trace/define_trace.h:102,
                    from include/trace/events/syscalls.h:73,
                    from arch/parisc/kernel/ptrace.c:35:
>> include/linux/ftrace.h:60:47: warning: 'struct dyn_ftrace' declared inside parameter list will not be visible outside of this definition or declaration
      60 | struct ftrace_ops *ftrace_find_rec_ops(struct dyn_ftrace *rec);
         |                                               ^~~~~~~~~~
   arch/parisc/kernel/ptrace.c:315:6: warning: no previous prototype for 'do_syscall_trace_enter' [-Wmissing-prototypes]
     315 | long do_syscall_trace_enter(struct pt_regs *regs)
         |      ^~~~~~~~~~~~~~~~~~~~~~
   arch/parisc/kernel/ptrace.c:370:6: warning: no previous prototype for 'do_syscall_trace_exit' [-Wmissing-prototypes]
     370 | void do_syscall_trace_exit(struct pt_regs *regs)
         |      ^~~~~~~~~~~~~~~~~~~~~
--
   In file included from include/linux/perf_event.h:52,
                    from include/linux/trace_events.h:10,
                    from include/trace/syscall.h:7,
                    from include/linux/syscalls.h:88,
                    from arch/parisc/kernel/parisc_ksyms.c:16:
>> include/linux/ftrace.h:60:47: warning: 'struct dyn_ftrace' declared inside parameter list will not be visible outside of this definition or declaration
      60 | struct ftrace_ops *ftrace_find_rec_ops(struct dyn_ftrace *rec);
         |                                               ^~~~~~~~~~
--
   In file included from arch/parisc/kernel/smp.c:30:
>> include/linux/ftrace.h:60:47: warning: 'struct dyn_ftrace' declared inside parameter list will not be visible outside of this definition or declaration
      60 | struct ftrace_ops *ftrace_find_rec_ops(struct dyn_ftrace *rec);
         |                                               ^~~~~~~~~~
   arch/parisc/kernel/smp.c:120:1: warning: no previous prototype for 'ipi_interrupt' [-Wmissing-prototypes]
     120 | ipi_interrupt(int irq, void *dev_id)
         | ^~~~~~~~~~~~~
   arch/parisc/kernel/smp.c:311:6: warning: no previous prototype for 'smp_callin' [-Wmissing-prototypes]
     311 | void smp_callin(unsigned long pdce_proc)
         |      ^~~~~~~~~~
--
   In file included from arch/parisc/kernel/ftrace.c:14:
>> include/linux/ftrace.h:60:47: warning: 'struct dyn_ftrace' declared inside parameter list will not be visible outside of this definition or declaration
      60 | struct ftrace_ops *ftrace_find_rec_ops(struct dyn_ftrace *rec);
         |                                               ^~~~~~~~~~
   arch/parisc/kernel/ftrace.c:56:20: warning: no previous prototype for 'ftrace_function_trampoline' [-Wmissing-prototypes]
      56 | void notrace __hot ftrace_function_trampoline(unsigned long parent,
         |                    ^~~~~~~~~~~~~~~~~~~~~~~~~~


vim +60 include/linux/ftrace.h

    39	
    40	#ifdef CONFIG_FUNCTION_TRACER
    41	struct ftrace_ops;
    42	struct ftrace_regs;
    43	/*
    44	 * If the arch's mcount caller does not support all of ftrace's
    45	 * features, then it must call an indirect function that
    46	 * does. Or at least does enough to prevent any unwelcome side effects.
    47	 *
    48	 * Also define the function prototype that these architectures use
    49	 * to call the ftrace_ops_list_func().
    50	 */
    51	#if !ARCH_SUPPORTS_FTRACE_OPS
    52	# define FTRACE_FORCE_LIST_FUNC 1
    53	void arch_ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip);
    54	#else
    55	# define FTRACE_FORCE_LIST_FUNC 0
    56	void arch_ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip,
    57				       struct ftrace_ops *op, struct ftrace_regs *fregs);
    58	#endif
    59	extern const struct ftrace_ops ftrace_list_ops;
  > 60	struct ftrace_ops *ftrace_find_rec_ops(struct dyn_ftrace *rec);
    61	#endif /* CONFIG_FUNCTION_TRACER */
    62	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

View attachment "config" of type "text/plain" (315978 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ