tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 02994a9b68a17040658e1a32a4438a31ae6f273b commit: 822da186955cbcd69b4715b8a307053e6c756f30 [29178/30000] x86/ibt,paravirt: Use text_gen_insn() for paravirt_patch() config: x86_64-buildonly-randconfig-001-20240901 (https://download.01.org/0day-ci/archive/20240901/202409011810.7nvZJ2lQ-lkp@i...) compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240901/202409011810.7nvZJ2lQ-lkp@i...)
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/202409011810.7nvZJ2lQ-lkp@intel.com/
All errors (new ones prefixed by >>):
arch/x86/kernel/paravirt.c:65:2: error: implicit declaration of function '__text_gen_insn' [-Werror,-Wimplicit-function-declaration]
65 | __text_gen_insn(insn_buff, CALL_INSN_OPCODE, | ^
arch/x86/kernel/paravirt.c:65:29: error: use of undeclared identifier 'CALL_INSN_OPCODE'
65 | __text_gen_insn(insn_buff, CALL_INSN_OPCODE, | ^
arch/x86/kernel/paravirt.c:66:26: error: use of undeclared identifier 'CALL_INSN_SIZE'
66 | (void *)addr, target, CALL_INSN_SIZE); | ^ arch/x86/kernel/paravirt.c:67:9: error: use of undeclared identifier 'CALL_INSN_SIZE' 67 | return CALL_INSN_SIZE; | ^ arch/x86/kernel/paravirt.c:327:4: warning: cast from 'void (*)(struct mmu_gather *, struct page *)' to 'void (*)(struct mmu_gather *, void *)' converts to incompatible function type [-Wcast-function-type-strict] 327 | (void (*)(struct mmu_gather *, void *))tlb_remove_page, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 warning and 4 errors generated.
vim +/__text_gen_insn +65 arch/x86/kernel/paravirt.c
61 62 static unsigned paravirt_patch_call(void *insn_buff, const void *target, 63 unsigned long addr, unsigned len) 64 {
65 __text_gen_insn(insn_buff, CALL_INSN_OPCODE, 66 (void *)addr, target, CALL_INSN_SIZE);
67 return CALL_INSN_SIZE; 68 } 69