oe-kbuild-all.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [dcui-tdx:decui/mainline/v6-dda 8/13] drivers/hv/hv.c:240:25: error: implicit declaration of function 'cc_mkdec'
@ 2023-05-06 12:54 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-05-06 12:54 UTC (permalink / raw)
  To: Dexuan Cui; +Cc: oe-kbuild-all

tree:   https://github.com/dcui/tdx decui/mainline/v6-dda
head:   cef8eab38588585b3c876df8d1ccf5831a6bf54f
commit: 2150e36e423a0c9a6b08a0550d0853eb5bb5f6bd [8/13] Drivers: hv: vmbus: Support TDX guests
config: arm64-allyesconfig (https://download.01.org/0day-ci/archive/20230506/202305062052.XidgtRIc-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 12.1.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://github.com/dcui/tdx/commit/2150e36e423a0c9a6b08a0550d0853eb5bb5f6bd
        git remote add dcui-tdx https://github.com/dcui/tdx
        git fetch --no-tags dcui-tdx decui/mainline/v6-dda
        git checkout 2150e36e423a0c9a6b08a0550d0853eb5bb5f6bd
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm64 olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202305062052.XidgtRIc-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/hv/hv.c: In function 'hv_synic_enable_regs':
>> drivers/hv/hv.c:240:25: error: implicit declaration of function 'cc_mkdec' [-Werror=implicit-function-declaration]
     240 |                         cc_mkdec(virt_to_phys(hv_cpu->synic_message_page))
         |                         ^~~~~~~~
   cc1: some warnings being treated as errors


vim +/cc_mkdec +240 drivers/hv/hv.c

   209	
   210	/*
   211	 * hv_synic_init - Initialize the Synthetic Interrupt Controller.
   212	 *
   213	 * If it is already initialized by another entity (ie x2v shim), we need to
   214	 * retrieve the initialized message and event pages.  Otherwise, we create and
   215	 * initialize the message and event pages.
   216	 */
   217	void hv_synic_enable_regs(unsigned int cpu)
   218	{
   219		struct hv_per_cpu_context *hv_cpu
   220			= per_cpu_ptr(hv_context.cpu_context, cpu);
   221		union hv_synic_simp simp;
   222		union hv_synic_siefp siefp;
   223		union hv_synic_sint shared_sint;
   224		union hv_synic_scontrol sctrl;
   225	
   226		/* Setup the Synic's message page */
   227		simp.as_uint64 = hv_get_register(HV_REGISTER_SIMP);
   228		simp.simp_enabled = 1;
   229	
   230		if (hv_isolation_type_snp() || hv_root_partition) {
   231			/* Mask out vTOM bit. ioremap_cache() maps decrypted */
   232			u64 base = (simp.base_simp_gpa << HV_HYP_PAGE_SHIFT) &
   233					~ms_hyperv.shared_gpa_boundary;
   234			hv_cpu->synic_message_page
   235				= (void *)ioremap_cache(base, HV_HYP_PAGE_SIZE);
   236			if (!hv_cpu->synic_message_page)
   237				pr_err("Fail to map synic message page.\n");
   238		} else {
   239			simp.base_simp_gpa =
 > 240				cc_mkdec(virt_to_phys(hv_cpu->synic_message_page))
   241				>> HV_HYP_PAGE_SHIFT;
   242		}
   243	
   244		hv_set_register(HV_REGISTER_SIMP, simp.as_uint64);
   245	
   246		/* Setup the Synic's event page */
   247		siefp.as_uint64 = hv_get_register(HV_REGISTER_SIEFP);
   248		siefp.siefp_enabled = 1;
   249	
   250		if (hv_isolation_type_snp() || hv_root_partition) {
   251			/* Mask out vTOM bit. ioremap_cache() maps decrypted */
   252			u64 base = (siefp.base_siefp_gpa << HV_HYP_PAGE_SHIFT) &
   253					~ms_hyperv.shared_gpa_boundary;
   254			hv_cpu->synic_event_page
   255				= (void *)ioremap_cache(base, HV_HYP_PAGE_SIZE);
   256			if (!hv_cpu->synic_event_page)
   257				pr_err("Fail to map synic event page.\n");
   258		} else {
   259			siefp.base_siefp_gpa =
   260				cc_mkdec(virt_to_phys(hv_cpu->synic_event_page))
   261				>> HV_HYP_PAGE_SHIFT;
   262		}
   263	
   264		hv_set_register(HV_REGISTER_SIEFP, siefp.as_uint64);
   265	
   266		/* Setup the shared SINT. */
   267		if (vmbus_irq != -1)
   268			enable_percpu_irq(vmbus_irq, 0);
   269		shared_sint.as_uint64 = hv_get_register(HV_REGISTER_SINT0 +
   270						VMBUS_MESSAGE_SINT);
   271	
   272		shared_sint.vector = vmbus_interrupt;
   273		shared_sint.masked = false;
   274	
   275		/*
   276		 * On architectures where Hyper-V doesn't support AEOI (e.g., ARM64),
   277		 * it doesn't provide a recommendation flag and AEOI must be disabled.
   278		 */
   279	#ifdef HV_DEPRECATING_AEOI_RECOMMENDED
   280		shared_sint.auto_eoi =
   281				!(ms_hyperv.hints & HV_DEPRECATING_AEOI_RECOMMENDED);
   282	#else
   283		shared_sint.auto_eoi = 0;
   284	#endif
   285		hv_set_register(HV_REGISTER_SINT0 + VMBUS_MESSAGE_SINT,
   286					shared_sint.as_uint64);
   287	
   288		/* Enable the global synic bit */
   289		sctrl.as_uint64 = hv_get_register(HV_REGISTER_SCONTROL);
   290		sctrl.enable = 1;
   291	
   292		hv_set_register(HV_REGISTER_SCONTROL, sctrl.as_uint64);
   293	}
   294	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-05-06 12:55 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-06 12:54 [dcui-tdx:decui/mainline/v6-dda 8/13] drivers/hv/hv.c:240:25: error: implicit declaration of function 'cc_mkdec' kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).