arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:633:12: error: no previous prototype for 'kvm_arch_post_init_vm'

Paolo Bonzini pbonzini at redhat.com
Sat Sep 12 02:52:16 EDT 2020


On 11/09/20 13:43, kernel test robot wrote:
>>> arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:633:12: error: no previous prototype for 'kvm_arch_post_init_vm' [-Werror=missing-prototypes]
>      633 | int __weak kvm_arch_post_init_vm(struct kvm *kvm)
>          |            ^~~~~~~~~~~~~~~~~~~~~
>>> arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:642:13: error: no previous prototype for 'kvm_arch_pre_destroy_vm' [-Werror=missing-prototypes]
>      642 | void __weak kvm_arch_pre_destroy_vm(struct kvm *kvm)
>          |             ^~~~~~~~~~~~~~~~~~~~~~~
>    cc1: all warnings being treated as errors

This makes little sense, the prototypes are in include/linux/kvm_host.h
Also this code is not architecture-dependent...

kvm-ppc guys, can you reproduce it?

Paolo

> 
> 
> Hi Junaid,
> 
> FYI, the error/warning still remains.
> 
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head:   e5bd0d2afe7061562c483d301e4aabb51b13fcfa
> commit: 1aa9b9572b10529c2e64e2b8f44025d86e124308 kvm: x86: mmu: Recovery of shattered NX large pages
> date:   10 months ago
> config: powerpc-defconfig (attached as .config)
> compiler: powerpc64-linux-gcc (GCC) 9.3.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
>         git checkout 1aa9b9572b10529c2e64e2b8f44025d86e124308
>         # save the attached .config to linux build tree
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=powerpc 
> 
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp at intel.com>
> 
> All errors (new ones prefixed by >>):
> 
>>> arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:633:12: error: no previous prototype for 'kvm_arch_post_init_vm' [-Werror=missing-prototypes]
>      633 | int __weak kvm_arch_post_init_vm(struct kvm *kvm)
>          |            ^~~~~~~~~~~~~~~~~~~~~
>>> arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:642:13: error: no previous prototype for 'kvm_arch_pre_destroy_vm' [-Werror=missing-prototypes]
>      642 | void __weak kvm_arch_pre_destroy_vm(struct kvm *kvm)
>          |             ^~~~~~~~~~~~~~~~~~~~~~~
>    cc1: all warnings being treated as errors
> 
> # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1aa9b9572b10529c2e64e2b8f44025d86e124308
> git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> git fetch --no-tags linus xlnx/master
> git checkout 1aa9b9572b10529c2e64e2b8f44025d86e124308
> vim +/kvm_arch_post_init_vm +633 arch/powerpc/kvm/../../../virt/kvm/kvm_main.c
> 
>    628	
>    629	/*
>    630	 * Called after the VM is otherwise initialized, but just before adding it to
>    631	 * the vm_list.
>    632	 */
>  > 633	int __weak kvm_arch_post_init_vm(struct kvm *kvm)
>    634	{
>    635		return 0;
>    636	}
>    637	
>    638	/*
>    639	 * Called just after removing the VM from the vm_list, but before doing any
>    640	 * other destruction.
>    641	 */
>  > 642	void __weak kvm_arch_pre_destroy_vm(struct kvm *kvm)
>    643	{
>    644	}
>    645	
> 
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
> 




More information about the linux-arm-kernel mailing list