* [linux-next:master 13043/13390] arch/loongarch/kernel/traps.c:707:21: error: implicit declaration of function 'kgdb_breakpoint_handler'; did you mean 'kprobe_breakpoint_handler'?
@ 2023-08-30 8:53 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-08-30 8:53 UTC (permalink / raw)
To: Qing Zhang
Cc: oe-kbuild-all, Linux Memory Management List, Huacai Chen,
Binbin Zhou, Hui Li, Randy Dunlap
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 56585460cc2ec44fc5d66924f0a116f57080f0dc
commit: 2888e8718e96bc7c4261da90b5967ae0c4dcb320 [13043/13390] LoongArch: Add basic KGDB & KDB support
config: loongarch-allnoconfig (https://download.01.org/0day-ci/archive/20230830/202308301605.1sXs81Sf-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230830/202308301605.1sXs81Sf-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202308301605.1sXs81Sf-lkp@intel.com/
All errors (new ones prefixed by >>):
arch/loongarch/kernel/traps.c:373:6: warning: no previous prototype for 'show_registers' [-Wmissing-prototypes]
373 | void show_registers(struct pt_regs *regs)
| ^~~~~~~~~~~~~~
arch/loongarch/kernel/traps.c:441:6: warning: no previous prototype for 'force_fcsr_sig' [-Wmissing-prototypes]
441 | void force_fcsr_sig(unsigned long fcsr, void __user *fault_addr,
| ^~~~~~~~~~~~~~
arch/loongarch/kernel/traps.c:460:5: warning: no previous prototype for 'process_fpemu_return' [-Wmissing-prototypes]
460 | int process_fpemu_return(int sig, void __user *fault_addr, unsigned long fcsr)
| ^~~~~~~~~~~~~~~~~~~~
arch/loongarch/kernel/traps.c:495:25: warning: no previous prototype for 'do_fpe' [-Wmissing-prototypes]
495 | asmlinkage void noinstr do_fpe(struct pt_regs *regs, unsigned long fcsr)
| ^~~~~~
arch/loongarch/kernel/traps.c:522:25: warning: no previous prototype for 'do_ade' [-Wmissing-prototypes]
522 | asmlinkage void noinstr do_ade(struct pt_regs *regs)
| ^~~~~~
arch/loongarch/kernel/traps.c:536:25: warning: no previous prototype for 'do_ale' [-Wmissing-prototypes]
536 | asmlinkage void noinstr do_ale(struct pt_regs *regs)
| ^~~~~~
arch/loongarch/kernel/traps.c:597:25: warning: no previous prototype for 'do_bce' [-Wmissing-prototypes]
597 | asmlinkage void noinstr do_bce(struct pt_regs *regs)
| ^~~~~~
arch/loongarch/kernel/traps.c:686:25: warning: no previous prototype for 'do_bp' [-Wmissing-prototypes]
686 | asmlinkage void noinstr do_bp(struct pt_regs *regs)
| ^~~~~
arch/loongarch/kernel/traps.c: In function 'do_bp':
>> arch/loongarch/kernel/traps.c:707:21: error: implicit declaration of function 'kgdb_breakpoint_handler'; did you mean 'kprobe_breakpoint_handler'? [-Werror=implicit-function-declaration]
707 | if (kgdb_breakpoint_handler(regs))
| ^~~~~~~~~~~~~~~~~~~~~~~
| kprobe_breakpoint_handler
arch/loongarch/kernel/traps.c: At top level:
arch/loongarch/kernel/traps.c:770:25: warning: no previous prototype for 'do_watch' [-Wmissing-prototypes]
770 | asmlinkage void noinstr do_watch(struct pt_regs *regs)
| ^~~~~~~~
arch/loongarch/kernel/traps.c:823:25: warning: no previous prototype for 'do_ri' [-Wmissing-prototypes]
823 | asmlinkage void noinstr do_ri(struct pt_regs *regs)
| ^~~~~
arch/loongarch/kernel/traps.c: In function 'do_ri':
arch/loongarch/kernel/traps.c:826:22: warning: variable 'opcode' set but not used [-Wunused-but-set-variable]
826 | unsigned int opcode = 0;
| ^~~~~~
arch/loongarch/kernel/traps.c: At top level:
arch/loongarch/kernel/traps.c:918:25: warning: no previous prototype for 'do_fpu' [-Wmissing-prototypes]
918 | asmlinkage void noinstr do_fpu(struct pt_regs *regs)
| ^~~~~~
arch/loongarch/kernel/traps.c:935:25: warning: no previous prototype for 'do_lsx' [-Wmissing-prototypes]
935 | asmlinkage void noinstr do_lsx(struct pt_regs *regs)
| ^~~~~~
arch/loongarch/kernel/traps.c:957:25: warning: no previous prototype for 'do_lasx' [-Wmissing-prototypes]
957 | asmlinkage void noinstr do_lasx(struct pt_regs *regs)
| ^~~~~~~
arch/loongarch/kernel/traps.c:992:25: warning: no previous prototype for 'do_lbt' [-Wmissing-prototypes]
992 | asmlinkage void noinstr do_lbt(struct pt_regs *regs)
| ^~~~~~
arch/loongarch/kernel/traps.c:1023:25: warning: no previous prototype for 'do_reserved' [-Wmissing-prototypes]
1023 | asmlinkage void noinstr do_reserved(struct pt_regs *regs)
| ^~~~~~~~~~~
arch/loongarch/kernel/traps.c:1042:17: warning: no previous prototype for 'cache_parity_error' [-Wmissing-prototypes]
1042 | asmlinkage void cache_parity_error(void)
| ^~~~~~~~~~~~~~~~~~
arch/loongarch/kernel/traps.c:1051:25: warning: no previous prototype for 'handle_loongarch_irq' [-Wmissing-prototypes]
1051 | asmlinkage void noinstr handle_loongarch_irq(struct pt_regs *regs)
| ^~~~~~~~~~~~~~~~~~~~
arch/loongarch/kernel/traps.c:1062:25: warning: no previous prototype for 'do_vint' [-Wmissing-prototypes]
1062 | asmlinkage void noinstr do_vint(struct pt_regs *regs, unsigned long sp)
| ^~~~~~~
cc1: some warnings being treated as errors
vim +707 arch/loongarch/kernel/traps.c
685
686 asmlinkage void noinstr do_bp(struct pt_regs *regs)
687 {
688 bool user = user_mode(regs);
689 unsigned int opcode, bcode;
690 unsigned long era = exception_era(regs);
691 irqentry_state_t state = irqentry_enter(regs);
692
693 if (regs->csr_prmd & CSR_PRMD_PIE)
694 local_irq_enable();
695
696 if (__get_inst(&opcode, (u32 *)era, user))
697 goto out_sigsegv;
698
699 bcode = (opcode & 0x7fff);
700
701 /*
702 * notify the kprobe handlers, if instruction is likely to
703 * pertain to them.
704 */
705 switch (bcode) {
706 case BRK_KDB:
> 707 if (kgdb_breakpoint_handler(regs))
708 goto out;
709 else
710 break;
711 case BRK_KPROBE_BP:
712 if (kprobe_breakpoint_handler(regs))
713 goto out;
714 else
715 break;
716 case BRK_KPROBE_SSTEPBP:
717 if (kprobe_singlestep_handler(regs))
718 goto out;
719 else
720 break;
721 case BRK_UPROBE_BP:
722 if (uprobe_breakpoint_handler(regs))
723 goto out;
724 else
725 break;
726 case BRK_UPROBE_XOLBP:
727 if (uprobe_singlestep_handler(regs))
728 goto out;
729 else
730 break;
731 default:
732 current->thread.trap_nr = read_csr_excode();
733 if (notify_die(DIE_TRAP, "Break", regs, bcode,
734 current->thread.trap_nr, SIGTRAP) == NOTIFY_STOP)
735 goto out;
736 else
737 break;
738 }
739
740 switch (bcode) {
741 case BRK_BUG:
742 bug_handler(regs);
743 break;
744 case BRK_DIVZERO:
745 die_if_kernel("Break instruction in kernel code", regs);
746 force_sig_fault(SIGFPE, FPE_INTDIV, (void __user *)regs->csr_era);
747 break;
748 case BRK_OVERFLOW:
749 die_if_kernel("Break instruction in kernel code", regs);
750 force_sig_fault(SIGFPE, FPE_INTOVF, (void __user *)regs->csr_era);
751 break;
752 default:
753 die_if_kernel("Break instruction in kernel code", regs);
754 force_sig_fault(SIGTRAP, TRAP_BRKPT, (void __user *)regs->csr_era);
755 break;
756 }
757
758 out:
759 if (regs->csr_prmd & CSR_PRMD_PIE)
760 local_irq_disable();
761
762 irqentry_exit(regs, state);
763 return;
764
765 out_sigsegv:
766 force_sig(SIGSEGV);
767 goto out;
768 }
769
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-08-30 8:54 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-30 8:53 [linux-next:master 13043/13390] arch/loongarch/kernel/traps.c:707:21: error: implicit declaration of function 'kgdb_breakpoint_handler'; did you mean 'kprobe_breakpoint_handler'? kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox