Building the Linux kernel with Clang and LLVM
 help / color / mirror / Atom feed
* [avpatel:riscv_trace_acpi_support_v1 17/87] drivers/iommu/riscv/iommu.c:1286:15: error: call to undeclared function 'virt_to_pfn'; ISO C99 and later do not support implicit function declarations
@ 2026-10-02  1:17 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-10-02  1:17 UTC (permalink / raw)
  To: Andrew Jones; +Cc: llvm, oe-kbuild-all, Anup Patel

tree:   https://github.com/avpatel/linux.git riscv_trace_acpi_support_v1
head:   dc5b9586f90cc15314085bdaa74661fc00d1688f
commit: bfe2d47be5bc1b02f6c04d095fb71116d417241c [17/87] iommu/riscv: Add IRQ domain for interrupt remapping
config: um-randconfig-2001-20261002 (https://download.01.org/0day-ci/archive/20261002/202610020353.oHLYlNLw-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project d7e4505dd447d115d85fdea45cd71030ac1d86ee)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261002/202610020353.oHLYlNLw-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202610020353.oHLYlNLw-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from drivers/iommu/riscv/iommu.c:18:
   In file included from include/linux/crash_dump.h:5:
   In file included from include/linux/kexec.h:20:
   In file included from arch/um/include/asm/io.h:24:
   include/asm-generic/io.h:1209:55: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
    1209 |         return (port > MMIO_UPPER_LIMIT) ? NULL : PCI_IOBASE + port;
         |                                                   ~~~~~~~~~~ ^
>> drivers/iommu/riscv/iommu.c:1286:15: error: call to undeclared function 'virt_to_pfn'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
    1286 |                 dc.msiptp = virt_to_pfn(domain->msi_root) |
         |                             ^
   drivers/iommu/riscv/iommu.c:1286:15: note: did you mean 'virt_to_pte'?
   arch/um/include/asm/pgtable.h:284:15: note: 'virt_to_pte' declared here
     284 | extern pte_t *virt_to_pte(struct mm_struct *mm, unsigned long addr);
         |               ^
   1 warning and 1 error generated.


vim +/virt_to_pfn +1286 drivers/iommu/riscv/iommu.c

  1260	
  1261	static int riscv_iommu_attach_paging_domain(struct iommu_domain *iommu_domain,
  1262						    struct device *dev,
  1263						    struct iommu_domain *old)
  1264	{
  1265		struct riscv_iommu_domain *domain = iommu_domain_to_riscv(iommu_domain);
  1266		struct riscv_iommu_device *iommu = dev_to_iommu(dev);
  1267		struct riscv_iommu_info *info = dev_iommu_priv_get(dev);
  1268		struct pt_iommu_riscv_64_hw_info pt_info;
  1269		struct riscv_iommu_dc dc = {0};
  1270		int ret;
  1271	
  1272		pt_iommu_riscv_64_hw_info(&domain->riscvpt, &pt_info);
  1273	
  1274		if (!riscv_iommu_pt_supported(iommu, pt_info.fsc_iosatp_mode))
  1275			return -ENODEV;
  1276	
  1277		ret = riscv_iommu_ir_attach_paging_domain(domain, dev);
  1278		if (ret)
  1279			return ret;
  1280	
  1281		dc.fsc = FIELD_PREP(RISCV_IOMMU_PC_FSC_MODE, pt_info.fsc_iosatp_mode) |
  1282			 FIELD_PREP(RISCV_IOMMU_PC_FSC_PPN, pt_info.ppn);
  1283		dc.ta = FIELD_PREP(RISCV_IOMMU_PC_TA_PSCID, domain->pscid) | RISCV_IOMMU_PC_TA_V;
  1284	
  1285		if (domain->msi_root) {
> 1286			dc.msiptp = virt_to_pfn(domain->msi_root) |
  1287				    FIELD_PREP(RISCV_IOMMU_DC_MSIPTP_MODE,
  1288					       RISCV_IOMMU_DC_MSIPTP_MODE_FLAT);
  1289			dc.msi_addr_mask = domain->msi_addr_mask;
  1290			dc.msi_addr_pattern = domain->msi_addr_pattern;
  1291		}
  1292	
  1293		if (riscv_iommu_bond_link(domain, dev))
  1294			return -ENOMEM;
  1295	
  1296		riscv_iommu_iodir_update(iommu, dev, &dc);
  1297		riscv_iommu_bond_unlink(info->domain, dev);
  1298		info->domain = domain;
  1299	
  1300		return 0;
  1301	}
  1302	

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

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

only message in thread, other threads:[~2026-10-02  1:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-02  1:17 [avpatel:riscv_trace_acpi_support_v1 17/87] drivers/iommu/riscv/iommu.c:1286:15: error: call to undeclared function 'virt_to_pfn'; ISO C99 and later do not support implicit function declarations 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