[arm-platforms:kvm-arm64/ptp 1/7] drivers/firmware/smccc/kvm_guest.c:12:13: warning: no previous prototype for function 'kvm_init_hyp_services'

kernel test robot lkp at intel.com
Tue Feb 2 17:55:02 EST 2021


tree:   https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git kvm-arm64/ptp
head:   fecd9f021d3220b48d00597bd8e04e4fa6fd9dee
commit: 0f90140a1f02cefb2ce98a94d7f01f5892b95fc2 [1/7] arm/arm64: Probe for the presence of KVM hypervisor
config: arm64-randconfig-r032-20210202 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 275c6af7d7f1ed63a03d05b4484413e447133269)
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
        # install arm64 cross compiling tool for clang build
        # apt-get install binutils-aarch64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/commit/?id=0f90140a1f02cefb2ce98a94d7f01f5892b95fc2
        git remote add arm-platforms https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git
        git fetch --no-tags arm-platforms kvm-arm64/ptp
        git checkout 0f90140a1f02cefb2ce98a94d7f01f5892b95fc2
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>

All warnings (new ones prefixed by >>):

>> drivers/firmware/smccc/kvm_guest.c:12:13: warning: no previous prototype for function 'kvm_init_hyp_services' [-Wmissing-prototypes]
   void __init kvm_init_hyp_services(void)
               ^
   drivers/firmware/smccc/kvm_guest.c:12:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void __init kvm_init_hyp_services(void)
   ^
   static 
>> drivers/firmware/smccc/kvm_guest.c:44:6: warning: no previous prototype for function 'kvm_arm_hyp_service_available' [-Wmissing-prototypes]
   bool kvm_arm_hyp_service_available(u32 func_id)
        ^
   drivers/firmware/smccc/kvm_guest.c:44:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   bool kvm_arm_hyp_service_available(u32 func_id)
   ^
   static 
   2 warnings generated.


vim +/kvm_init_hyp_services +12 drivers/firmware/smccc/kvm_guest.c

    11	
  > 12	void __init kvm_init_hyp_services(void)
    13	{
    14		int i;
    15		struct arm_smccc_res res;
    16	
    17		if (arm_smccc_1_1_get_conduit() != SMCCC_CONDUIT_HVC)
    18			return;
    19	
    20		arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_CALL_UID_FUNC_ID, &res);
    21		if (res.a0 != ARM_SMCCC_VENDOR_HYP_UID_KVM_REG_0 ||
    22		    res.a1 != ARM_SMCCC_VENDOR_HYP_UID_KVM_REG_1 ||
    23		    res.a2 != ARM_SMCCC_VENDOR_HYP_UID_KVM_REG_2 ||
    24		    res.a3 != ARM_SMCCC_VENDOR_HYP_UID_KVM_REG_3)
    25			return;
    26	
    27		memset(&res, 0, sizeof(res));
    28		arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_KVM_FEATURES_FUNC_ID, &res);
    29		for (i = 0; i < 32; ++i) {
    30			if (res.a0 & (i))
    31				set_bit(i + (32 * 0), __kvm_arm_hyp_services);
    32			if (res.a1 & (i))
    33				set_bit(i + (32 * 1), __kvm_arm_hyp_services);
    34			if (res.a2 & (i))
    35				set_bit(i + (32 * 2), __kvm_arm_hyp_services);
    36			if (res.a3 & (i))
    37				set_bit(i + (32 * 3), __kvm_arm_hyp_services);
    38		}
    39	
    40		pr_info("hypervisor services detected (0x%08lx 0x%08lx 0x%08lx 0x%08lx)\n",
    41			 res.a3, res.a2, res.a1, res.a0);
    42	}
    43	
  > 44	bool kvm_arm_hyp_service_available(u32 func_id)

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 31314 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20210203/fc8e7558/attachment-0001.gz>


More information about the linux-arm-kernel mailing list