From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 12C402C9D for ; Fri, 17 Dec 2021 09:02:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1639731727; x=1671267727; h=date:from:to:cc:subject:message-id:mime-version; bh=4PCaldpWtbovduGDfm1gPlrd41u++3W3PVljxhmYNzc=; b=NyDT0TDhi8gUzxTPhfQntrvG4IB9vJntsIUQBvPXUWQMWLakkSC8Oi89 4zGWkj5BrEEgDCwJ17u43KKBDrjFKrI9GXYIrpSG+JR0GekY+w3w9jkJd kukFsPaQTuz7cR33sKMaKSEymUKAHdZOorFK4QIcGda7upeBZInJc3TAt e1f51dIHqyOrgYTj9pEEpdN7N+UmpWNc2pi8GHfBBvw20v5tTUBvbmsvF gxYm+bXt97s5qdS/oWCwl/PytX68j7VDh7mMr3hTTrJoRigtu1DYCNaUc w43ZE8FLBgl8W5EmwoEuQdCoMul7VfLQf8uMMlYdriZLEuo+Z9vXUByuq g==; X-IronPort-AV: E=McAfee;i="6200,9189,10200"; a="237255244" X-IronPort-AV: E=Sophos;i="5.88,213,1635231600"; d="scan'208";a="237255244" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Dec 2021 01:02:05 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,213,1635231600"; d="scan'208";a="466436386" Received: from lkp-server02.sh.intel.com (HELO 9f38c0981d9f) ([10.239.97.151]) by orsmga006.jf.intel.com with ESMTP; 17 Dec 2021 01:02:02 -0800 Received: from kbuild by 9f38c0981d9f with local (Exim 4.92) (envelope-from ) id 1my97q-0004WB-AA; Fri, 17 Dec 2021 09:02:02 +0000 Date: Fri, 17 Dec 2021 17:01:55 +0800 From: kernel test robot To: Isaku Yamahata Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org, linux-kernel@vger.kernel.org Subject: [intel-tdx:kvm-upstream 126/152] arch/x86/kvm/vmx/tdx_stubs.c:13:6: warning: no previous prototype for function 'tdx_inject_nmi' Message-ID: <202112171611.EkYfPiKg-lkp@intel.com> Precedence: bulk X-Mailing-List: llvm@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) tree: https://github.com/intel/tdx.git kvm-upstream head: bdfe06c17daab60c196ff80c1d98467a1d3734fa commit: e5add375b2478be4f63bfc75497bfaae0d514fa0 [126/152] KVM: TDX: Implement methods to inject NMI config: x86_64-randconfig-a013-20211216 (https://download.01.org/0day-ci/archive/20211217/202112171611.EkYfPiKg-lkp@intel.com/config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project dd245bab9fbb364faa1581e4f92ba3119a872fba) 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://github.com/intel/tdx/commit/e5add375b2478be4f63bfc75497bfaae0d514fa0 git remote add intel-tdx https://github.com/intel/tdx.git git fetch --no-tags intel-tdx kvm-upstream git checkout e5add375b2478be4f63bfc75497bfaae0d514fa0 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/kvm/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): arch/x86/kvm/vmx/tdx_stubs.c:4:13: warning: no previous prototype for function 'tdx_pre_kvm_init' [-Wmissing-prototypes] void __init tdx_pre_kvm_init(unsigned int *vcpu_size, ^ arch/x86/kvm/vmx/tdx_stubs.c:4:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void __init tdx_pre_kvm_init(unsigned int *vcpu_size, ^ static arch/x86/kvm/vmx/tdx_stubs.c:6:12: warning: no previous prototype for function 'tdx_hardware_setup' [-Wmissing-prototypes] int __init tdx_hardware_setup(struct kvm_x86_ops *x86_ops) { return -EOPNOTSUPP; } ^ arch/x86/kvm/vmx/tdx_stubs.c:6:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int __init tdx_hardware_setup(struct kvm_x86_ops *x86_ops) { return -EOPNOTSUPP; } ^ static arch/x86/kvm/vmx/tdx_stubs.c:7:6: warning: no previous prototype for function 'tdx_hardware_enable' [-Wmissing-prototypes] void tdx_hardware_enable(void) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:7:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_hardware_enable(void) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:8:6: warning: no previous prototype for function 'tdx_hardware_disable' [-Wmissing-prototypes] void tdx_hardware_disable(void) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:8:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_hardware_disable(void) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:10:5: warning: no previous prototype for function 'tdx_vcpu_create' [-Wmissing-prototypes] int tdx_vcpu_create(struct kvm_vcpu *vcpu) { return -EOPNOTSUPP; } ^ arch/x86/kvm/vmx/tdx_stubs.c:10:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int tdx_vcpu_create(struct kvm_vcpu *vcpu) { return -EOPNOTSUPP; } ^ static arch/x86/kvm/vmx/tdx_stubs.c:11:6: warning: no previous prototype for function 'tdx_vcpu_free' [-Wmissing-prototypes] void tdx_vcpu_free(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:11:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_vcpu_free(struct kvm_vcpu *vcpu) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:12:6: warning: no previous prototype for function 'tdx_vcpu_reset' [-Wmissing-prototypes] void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:12:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) {} ^ static >> arch/x86/kvm/vmx/tdx_stubs.c:13:6: warning: no previous prototype for function 'tdx_inject_nmi' [-Wmissing-prototypes] void tdx_inject_nmi(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:13:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_inject_nmi(struct kvm_vcpu *vcpu) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:14:12: warning: no previous prototype for function 'tdx_vcpu_run' [-Wmissing-prototypes] fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu) { return EXIT_FASTPATH_NONE; } ^ arch/x86/kvm/vmx/tdx_stubs.c:14:1: note: declare 'static' if the function is not intended to be used outside of this translation unit fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu) { return EXIT_FASTPATH_NONE; } ^ static arch/x86/kvm/vmx/tdx_stubs.c:15:6: warning: no previous prototype for function 'tdx_vcpu_load' [-Wmissing-prototypes] void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:15:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:16:6: warning: no previous prototype for function 'tdx_vcpu_put' [-Wmissing-prototypes] void tdx_vcpu_put(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:16:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_vcpu_put(struct kvm_vcpu *vcpu) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:17:6: warning: no previous prototype for function 'tdx_prepare_switch_to_guest' [-Wmissing-prototypes] void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:17:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:18:6: warning: no previous prototype for function 'tdx_handle_exit_irqoff' [-Wmissing-prototypes] void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:18:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:19:5: warning: no previous prototype for function 'tdx_handle_exit' [-Wmissing-prototypes] int tdx_handle_exit(struct kvm_vcpu *vcpu, ^ arch/x86/kvm/vmx/tdx_stubs.c:19:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int tdx_handle_exit(struct kvm_vcpu *vcpu, ^ static arch/x86/kvm/vmx/tdx_stubs.c:21:6: warning: no previous prototype for function 'tdx_is_emulated_msr' [-Wmissing-prototypes] bool tdx_is_emulated_msr(u32 index, bool write) { return false; } ^ arch/x86/kvm/vmx/tdx_stubs.c:21:1: note: declare 'static' if the function is not intended to be used outside of this translation unit bool tdx_is_emulated_msr(u32 index, bool write) { return false; } ^ static arch/x86/kvm/vmx/tdx_stubs.c:22:5: warning: no previous prototype for function 'tdx_get_msr' [-Wmissing-prototypes] int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1; } ^ arch/x86/kvm/vmx/tdx_stubs.c:22:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1; } ^ static arch/x86/kvm/vmx/tdx_stubs.c:23:5: warning: no previous prototype for function 'tdx_set_msr' [-Wmissing-prototypes] int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1; } ^ arch/x86/kvm/vmx/tdx_stubs.c:23:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1; } ^ static arch/x86/kvm/vmx/tdx_stubs.c:25:6: warning: no previous prototype for function 'tdx_apicv_post_state_restore' [-Wmissing-prototypes] void tdx_apicv_post_state_restore(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:25:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_apicv_post_state_restore(struct kvm_vcpu *vcpu) {} ^ static arch/x86/kvm/vmx/tdx_stubs.c:26:5: warning: no previous prototype for function 'tdx_deliver_posted_interrupt' [-Wmissing-prototypes] int tdx_deliver_posted_interrupt(struct kvm_vcpu *vcpu, int vector) { return 0; } ^ arch/x86/kvm/vmx/tdx_stubs.c:26:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int tdx_deliver_posted_interrupt(struct kvm_vcpu *vcpu, int vector) { return 0; } ^ static arch/x86/kvm/vmx/tdx_stubs.c:27:6: warning: no previous prototype for function 'tdx_get_exit_info' [-Wmissing-prototypes] void tdx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, ^ arch/x86/kvm/vmx/tdx_stubs.c:27:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void tdx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, ^ static arch/x86/kvm/vmx/tdx_stubs.c:30:5: warning: no previous prototype for function 'tdx_dev_ioctl' [-Wmissing-prototypes] int tdx_dev_ioctl(void __user *argp) { return -EOPNOTSUPP; } ^ arch/x86/kvm/vmx/tdx_stubs.c:30:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int tdx_dev_ioctl(void __user *argp) { return -EOPNOTSUPP; } ^ static arch/x86/kvm/vmx/tdx_stubs.c:31:5: warning: no previous prototype for function 'tdx_vm_ioctl' [-Wmissing-prototypes] int tdx_vm_ioctl(struct kvm *kvm, void __user *argp) { return -EOPNOTSUPP; } ^ vim +/tdx_inject_nmi +13 arch/x86/kvm/vmx/tdx_stubs.c 9 10 int tdx_vcpu_create(struct kvm_vcpu *vcpu) { return -EOPNOTSUPP; } 11 void tdx_vcpu_free(struct kvm_vcpu *vcpu) {} 12 void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) {} > 13 void tdx_inject_nmi(struct kvm_vcpu *vcpu) {} 14 fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu) { return EXIT_FASTPATH_NONE; } 15 void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) {} 16 void tdx_vcpu_put(struct kvm_vcpu *vcpu) {} 17 void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu) {} 18 void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu) {} 19 int tdx_handle_exit(struct kvm_vcpu *vcpu, 20 enum exit_fastpath_completion fastpath) { return 0; } 21 bool tdx_is_emulated_msr(u32 index, bool write) { return false; } 22 int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1; } 23 int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1; } 24 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============7554277470798427080==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: [intel-tdx:kvm-upstream 126/152] arch/x86/kvm/vmx/tdx_stubs.c:13:6: warning: no previous prototype for function 'tdx_inject_nmi' Date: Fri, 17 Dec 2021 17:01:55 +0800 Message-ID: <202112171611.EkYfPiKg-lkp@intel.com> List-Id: --===============7554277470798427080== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable tree: https://github.com/intel/tdx.git kvm-upstream head: bdfe06c17daab60c196ff80c1d98467a1d3734fa commit: e5add375b2478be4f63bfc75497bfaae0d514fa0 [126/152] KVM: TDX: Implem= ent methods to inject NMI config: x86_64-randconfig-a013-20211216 (https://download.01.org/0day-ci/ar= chive/20211217/202112171611.EkYfPiKg-lkp(a)intel.com/config) compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project dd245b= ab9fbb364faa1581e4f92ba3119a872fba) reproduce (this is a W=3D1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/intel/tdx/commit/e5add375b2478be4f63bfc75497bf= aae0d514fa0 git remote add intel-tdx https://github.com/intel/tdx.git git fetch --no-tags intel-tdx kvm-upstream git checkout e5add375b2478be4f63bfc75497bfaae0d514fa0 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dclang make.cross W=3D= 1 O=3Dbuild_dir ARCH=3Dx86_64 SHELL=3D/bin/bash arch/x86/kvm/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): arch/x86/kvm/vmx/tdx_stubs.c:4:13: warning: no previous prototype for fu= nction 'tdx_pre_kvm_init' [-Wmissing-prototypes] void __init tdx_pre_kvm_init(unsigned int *vcpu_size, ^ arch/x86/kvm/vmx/tdx_stubs.c:4:1: note: declare 'static' if the function= is not intended to be used outside of this translation unit void __init tdx_pre_kvm_init(unsigned int *vcpu_size, ^ static = arch/x86/kvm/vmx/tdx_stubs.c:6:12: warning: no previous prototype for fu= nction 'tdx_hardware_setup' [-Wmissing-prototypes] int __init tdx_hardware_setup(struct kvm_x86_ops *x86_ops) { return -EOP= NOTSUPP; } ^ arch/x86/kvm/vmx/tdx_stubs.c:6:1: note: declare 'static' if the function= is not intended to be used outside of this translation unit int __init tdx_hardware_setup(struct kvm_x86_ops *x86_ops) { return -EOP= NOTSUPP; } ^ static = arch/x86/kvm/vmx/tdx_stubs.c:7:6: warning: no previous prototype for fun= ction 'tdx_hardware_enable' [-Wmissing-prototypes] void tdx_hardware_enable(void) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:7:1: note: declare 'static' if the function= is not intended to be used outside of this translation unit void tdx_hardware_enable(void) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:8:6: warning: no previous prototype for fun= ction 'tdx_hardware_disable' [-Wmissing-prototypes] void tdx_hardware_disable(void) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:8:1: note: declare 'static' if the function= is not intended to be used outside of this translation unit void tdx_hardware_disable(void) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:10:5: warning: no previous prototype for fu= nction 'tdx_vcpu_create' [-Wmissing-prototypes] int tdx_vcpu_create(struct kvm_vcpu *vcpu) { return -EOPNOTSUPP; } ^ arch/x86/kvm/vmx/tdx_stubs.c:10:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit int tdx_vcpu_create(struct kvm_vcpu *vcpu) { return -EOPNOTSUPP; } ^ static = arch/x86/kvm/vmx/tdx_stubs.c:11:6: warning: no previous prototype for fu= nction 'tdx_vcpu_free' [-Wmissing-prototypes] void tdx_vcpu_free(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:11:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_vcpu_free(struct kvm_vcpu *vcpu) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:12:6: warning: no previous prototype for fu= nction 'tdx_vcpu_reset' [-Wmissing-prototypes] void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:12:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) {} ^ static = >> arch/x86/kvm/vmx/tdx_stubs.c:13:6: warning: no previous prototype for fu= nction 'tdx_inject_nmi' [-Wmissing-prototypes] void tdx_inject_nmi(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:13:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_inject_nmi(struct kvm_vcpu *vcpu) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:14:12: warning: no previous prototype for f= unction 'tdx_vcpu_run' [-Wmissing-prototypes] fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu) { return EXIT_FASTPATH_NO= NE; } ^ arch/x86/kvm/vmx/tdx_stubs.c:14:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu) { return EXIT_FASTPATH_NO= NE; } ^ static = arch/x86/kvm/vmx/tdx_stubs.c:15:6: warning: no previous prototype for fu= nction 'tdx_vcpu_load' [-Wmissing-prototypes] void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:15:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:16:6: warning: no previous prototype for fu= nction 'tdx_vcpu_put' [-Wmissing-prototypes] void tdx_vcpu_put(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:16:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_vcpu_put(struct kvm_vcpu *vcpu) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:17:6: warning: no previous prototype for fu= nction 'tdx_prepare_switch_to_guest' [-Wmissing-prototypes] void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:17:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:18:6: warning: no previous prototype for fu= nction 'tdx_handle_exit_irqoff' [-Wmissing-prototypes] void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:18:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:19:5: warning: no previous prototype for fu= nction 'tdx_handle_exit' [-Wmissing-prototypes] int tdx_handle_exit(struct kvm_vcpu *vcpu, ^ arch/x86/kvm/vmx/tdx_stubs.c:19:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit int tdx_handle_exit(struct kvm_vcpu *vcpu, ^ static = arch/x86/kvm/vmx/tdx_stubs.c:21:6: warning: no previous prototype for fu= nction 'tdx_is_emulated_msr' [-Wmissing-prototypes] bool tdx_is_emulated_msr(u32 index, bool write) { return false; } ^ arch/x86/kvm/vmx/tdx_stubs.c:21:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit bool tdx_is_emulated_msr(u32 index, bool write) { return false; } ^ static = arch/x86/kvm/vmx/tdx_stubs.c:22:5: warning: no previous prototype for fu= nction 'tdx_get_msr' [-Wmissing-prototypes] int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1;= } ^ arch/x86/kvm/vmx/tdx_stubs.c:22:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1;= } ^ static = arch/x86/kvm/vmx/tdx_stubs.c:23:5: warning: no previous prototype for fu= nction 'tdx_set_msr' [-Wmissing-prototypes] int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1;= } ^ arch/x86/kvm/vmx/tdx_stubs.c:23:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1;= } ^ static = arch/x86/kvm/vmx/tdx_stubs.c:25:6: warning: no previous prototype for fu= nction 'tdx_apicv_post_state_restore' [-Wmissing-prototypes] void tdx_apicv_post_state_restore(struct kvm_vcpu *vcpu) {} ^ arch/x86/kvm/vmx/tdx_stubs.c:25:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_apicv_post_state_restore(struct kvm_vcpu *vcpu) {} ^ static = arch/x86/kvm/vmx/tdx_stubs.c:26:5: warning: no previous prototype for fu= nction 'tdx_deliver_posted_interrupt' [-Wmissing-prototypes] int tdx_deliver_posted_interrupt(struct kvm_vcpu *vcpu, int vector) { re= turn 0; } ^ arch/x86/kvm/vmx/tdx_stubs.c:26:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit int tdx_deliver_posted_interrupt(struct kvm_vcpu *vcpu, int vector) { re= turn 0; } ^ static = arch/x86/kvm/vmx/tdx_stubs.c:27:6: warning: no previous prototype for fu= nction 'tdx_get_exit_info' [-Wmissing-prototypes] void tdx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, ^ arch/x86/kvm/vmx/tdx_stubs.c:27:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit void tdx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, ^ static = arch/x86/kvm/vmx/tdx_stubs.c:30:5: warning: no previous prototype for fu= nction 'tdx_dev_ioctl' [-Wmissing-prototypes] int tdx_dev_ioctl(void __user *argp) { return -EOPNOTSUPP; } ^ arch/x86/kvm/vmx/tdx_stubs.c:30:1: note: declare 'static' if the functio= n is not intended to be used outside of this translation unit int tdx_dev_ioctl(void __user *argp) { return -EOPNOTSUPP; } ^ static = arch/x86/kvm/vmx/tdx_stubs.c:31:5: warning: no previous prototype for fu= nction 'tdx_vm_ioctl' [-Wmissing-prototypes] int tdx_vm_ioctl(struct kvm *kvm, void __user *argp) { return -EOPNOTSUP= P; } ^ vim +/tdx_inject_nmi +13 arch/x86/kvm/vmx/tdx_stubs.c 9 = 10 int tdx_vcpu_create(struct kvm_vcpu *vcpu) { return -EOPNOTSUPP; } 11 void tdx_vcpu_free(struct kvm_vcpu *vcpu) {} 12 void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) {} > 13 void tdx_inject_nmi(struct kvm_vcpu *vcpu) {} 14 fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu) { return EXIT_FASTPAT= H_NONE; } 15 void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) {} 16 void tdx_vcpu_put(struct kvm_vcpu *vcpu) {} 17 void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu) {} 18 void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu) {} 19 int tdx_handle_exit(struct kvm_vcpu *vcpu, 20 enum exit_fastpath_completion fastpath) { return 0; } 21 bool tdx_is_emulated_msr(u32 index, bool write) { return false; } 22 int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { retur= n 1; } 23 int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { retur= n 1; } 24 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============7554277470798427080==--