[ardb:arm64-ro-page-tables-pkvm-v5.17 16/26] arch/arm64/kvm/mmu.c:517:13: warning: no previous prototype for 'kvm_hyp_debug_uart_set_basep'

From: kernel test robot
Date: Fri Jan 28 2022 - 22:32:39 EST


tree: git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git arm64-ro-page-tables-pkvm-v5.17
head: b38f2df95cbf61e70bc32017da5318d1cb03e3e3
commit: ed0901f32dbd42aab0cd95a848ea943273062b2f [16/26] [DONOTMERGE] KVM: arm64: Add debug UART hacks at EL2
config: arm64-allyesconfig (https://download.01.org/0day-ci/archive/20220129/202201291152.MDHD6psp-lkp@xxxxxxxxx/config)
compiler: aarch64-linux-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/ardb/linux.git/commit/?id=ed0901f32dbd42aab0cd95a848ea943273062b2f
git remote add ardb git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git
git fetch --no-tags ardb arm64-ro-page-tables-pkvm-v5.17
git checkout ed0901f32dbd42aab0cd95a848ea943273062b2f
# 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=arm64 SHELL=/bin/bash arch/arm64/kvm/

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

All warnings (new ones prefixed by >>):

>> arch/arm64/kvm/mmu.c:517:13: warning: no previous prototype for 'kvm_hyp_debug_uart_set_basep' [-Wmissing-prototypes]
517 | void __init kvm_hyp_debug_uart_set_basep(struct alt_instr *alt,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/arm64/include/asm/kvm_host.h:28,
from include/linux/kvm_host.h:43,
from arch/arm64/kvm/mmu.c:8:
arch/arm64/kvm/mmu.c: In function 'kvm_hyp_debug_uart_set_basep':
>> arch/arm64/include/asm/kvm_asm.h:183:29: warning: initialization of 'void *' from 'long unsigned int' makes pointer from integer without a cast [-Wint-conversion]
183 | void *val = (ptr); \
| ^
arch/arm64/kvm/mmu.c:522:25: note: in expansion of macro 'kvm_ksym_ref'
522 | u64 addr = (u64)kvm_ksym_ref(arm64_kvm_hyp_debug_uart_addr);
| ^~~~~~~~~~~~
arch/arm64/include/asm/kvm_asm.h:183:29: note: (near initialization for 'addr')
183 | void *val = (ptr); \
| ^
arch/arm64/kvm/mmu.c:522:25: note: in expansion of macro 'kvm_ksym_ref'
522 | u64 addr = (u64)kvm_ksym_ref(arm64_kvm_hyp_debug_uart_addr);
| ^~~~~~~~~~~~


vim +/kvm_hyp_debug_uart_set_basep +517 arch/arm64/kvm/mmu.c

516
> 517 void __init kvm_hyp_debug_uart_set_basep(struct alt_instr *alt,
518 __le32 *origptr, __le32 *updptr,
519 int nr_inst)
520 {
521 int i;
522 u64 addr = (u64)kvm_ksym_ref(arm64_kvm_hyp_debug_uart_addr);
523
524 BUG_ON(nr_inst != 4);
525
526 for (i = 0; i < 4; ++i) {
527 u32 insn = le32_to_cpu(origptr[i]);
528
529 insn = aarch64_insn_encode_immediate(AARCH64_INSN_IMM_16,
530 insn,
531 addr & 0xffff);
532 BUG_ON(insn == AARCH64_BREAK_FAULT);
533 updptr[i] = cpu_to_le32(insn);
534 addr >>= 16;
535 }
536 }
537

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