All of lore.kernel.org
 help / color / mirror / Atom feed
* [avpatel:riscv_iommu_irqbypass_v2 13/18] drivers/iommu/riscv/iommu-ir.c:333:1: warning: control reaches end of non-void function
@ 2026-04-30  3:19 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-04-30  3:19 UTC (permalink / raw)
  To: Andrew Jones; +Cc: oe-kbuild-all, Anup Patel

tree:   https://github.com/avpatel/linux.git riscv_iommu_irqbypass_v2
head:   0ba166d111b762ae8f37075ba1266e345ae5ef59
commit: e3141898f38de6d63cb78f33d1b1e7bfb00d6e29 [13/18] iommu/riscv: Add guest file irqbypass support
config: um-allyesconfig (https://download.01.org/0day-ci/archive/20260430/202604301140.9miDefDl-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260430/202604301140.9miDefDl-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/202604301140.9miDefDl-lkp@intel.com/

All warnings (new ones prefixed by >>):

         |                                     ^~~~~~~~~~~~~~~~~~
   include/linux/bitfield.h:70:17: note: in expansion of macro 'BUILD_BUG_ON_MSG'
      70 |                 BUILD_BUG_ON_MSG(__builtin_constant_p(_val) ?           \
         |                 ^~~~~~~~~~~~~~~~
   include/linux/bitfield.h:91:17: note: in expansion of macro '__BF_FIELD_CHECK_MASK'
      91 |                 __BF_FIELD_CHECK_MASK(mask, val, pfx);                  \
         |                 ^~~~~~~~~~~~~~~~~~~~~
   include/linux/bitfield.h:138:17: note: in expansion of macro '__FIELD_PREP'
     138 |                 __FIELD_PREP(_mask, _val, "FIELD_PREP: ");              \
         |                 ^~~~~~~~~~~~
   drivers/iommu/riscv/iommu-ir.c:185:24: note: in expansion of macro 'FIELD_PREP'
     185 |                        FIELD_PREP(RISCV_IOMMU_PC_FSC_PPN, virt_to_pfn(domain->pgd_root)),
         |                        ^~~~~~~~~~
   drivers/iommu/riscv/iommu-ir.c:185:77: error: 'struct riscv_iommu_domain' has no member named 'pgd_root'
     185 |                        FIELD_PREP(RISCV_IOMMU_PC_FSC_PPN, virt_to_pfn(domain->pgd_root)),
         |                                                                             ^~
   include/linux/bitfield.h:92:33: note: in definition of macro '__FIELD_PREP'
      92 |                 ((typeof(mask))(val) << __bf_shf(mask)) & (mask);       \
         |                                 ^~~
   drivers/iommu/riscv/iommu-ir.c:185:24: note: in expansion of macro 'FIELD_PREP'
     185 |                        FIELD_PREP(RISCV_IOMMU_PC_FSC_PPN, virt_to_pfn(domain->pgd_root)),
         |                        ^~~~~~~~~~
   drivers/iommu/riscv/iommu-ir.c: At top level:
   drivers/iommu/riscv/iommu-ir.c:327:53: warning: 'struct riscv_iommu_ir_vcpu_info' declared inside parameter list will not be visible outside of this definition or declaration
     327 |                                              struct riscv_iommu_ir_vcpu_info *vcpu_info)
         |                                                     ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/iommu/riscv/iommu-ir.c: In function 'riscv_iommu_ir_vcpu_check_config':
   drivers/iommu/riscv/iommu-ir.c:329:50: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     329 |         return domain->msi_addr_mask == vcpu_info->msi_addr_mask &&
         |                                                  ^~
   drivers/iommu/riscv/iommu-ir.c:330:53: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     330 |                domain->msi_addr_pattern == vcpu_info->msi_addr_pattern &&
         |                                                     ^~
   drivers/iommu/riscv/iommu-ir.c:331:53: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     331 |                domain->group_index_bits == vcpu_info->group_index_bits &&
         |                                                     ^~
   drivers/iommu/riscv/iommu-ir.c:332:54: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     332 |                domain->group_index_shift == vcpu_info->group_index_shift;
         |                                                      ^~
   drivers/iommu/riscv/iommu-ir.c: At top level:
   drivers/iommu/riscv/iommu-ir.c:337:50: warning: 'struct riscv_iommu_ir_vcpu_info' declared inside parameter list will not be visible outside of this definition or declaration
     337 |                                           struct riscv_iommu_ir_vcpu_info *vcpu_info)
         |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/iommu/riscv/iommu-ir.c: In function 'riscv_iommu_ir_vcpu_new_config':
   drivers/iommu/riscv/iommu-ir.c:343:19: error: 'struct riscv_iommu_domain' has no member named 'pgd_mode'
     343 |         if (domain->pgd_mode)
         |                   ^~
   drivers/iommu/riscv/iommu-ir.c:348:42: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     348 |         domain->msi_addr_mask = vcpu_info->msi_addr_mask;
         |                                          ^~
   drivers/iommu/riscv/iommu-ir.c:349:45: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     349 |         domain->msi_addr_pattern = vcpu_info->msi_addr_pattern;
         |                                             ^~
   drivers/iommu/riscv/iommu-ir.c:350:45: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     350 |         domain->group_index_bits = vcpu_info->group_index_bits;
         |                                             ^~
   drivers/iommu/riscv/iommu-ir.c:351:46: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     351 |         domain->group_index_shift = vcpu_info->group_index_shift;
         |                                              ^~
   drivers/iommu/riscv/iommu-ir.c:355:19: error: 'struct riscv_iommu_domain' has no member named 'pgd_mode'
     355 |         if (domain->pgd_mode) {
         |                   ^~
   drivers/iommu/riscv/iommu-ir.c:373:66: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     373 |         idx = riscv_iommu_ir_compute_msipte_idx(domain, vcpu_info->gpa);
         |                                                                  ^~
   drivers/iommu/riscv/iommu-ir.c:376:46: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     376 |         riscv_iommu_ir_set_pte(pte, vcpu_info->hpa);
         |                                              ^~
   drivers/iommu/riscv/iommu-ir.c: In function 'riscv_iommu_ir_irq_set_vcpu_affinity':
   drivers/iommu/riscv/iommu-ir.c:409:55: error: passing argument 2 of 'riscv_iommu_ir_vcpu_check_config' from incompatible pointer type [-Wincompatible-pointer-types]
     409 |         if (!riscv_iommu_ir_vcpu_check_config(domain, vcpu_info))
         |                                                       ^~~~~~~~~
         |                                                       |
         |                                                       struct riscv_iommu_ir_vcpu_info *
   drivers/iommu/riscv/iommu-ir.c:327:79: note: expected 'struct riscv_iommu_ir_vcpu_info *' but argument is of type 'struct riscv_iommu_ir_vcpu_info *'
     327 |                                              struct riscv_iommu_ir_vcpu_info *vcpu_info)
         |                                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
   drivers/iommu/riscv/iommu-ir.c:410:69: error: passing argument 3 of 'riscv_iommu_ir_vcpu_new_config' from incompatible pointer type [-Wincompatible-pointer-types]
     410 |                 return riscv_iommu_ir_vcpu_new_config(domain, data, vcpu_info);
         |                                                                     ^~~~~~~~~
         |                                                                     |
         |                                                                     struct riscv_iommu_ir_vcpu_info *
   drivers/iommu/riscv/iommu-ir.c:337:76: note: expected 'struct riscv_iommu_ir_vcpu_info *' but argument is of type 'struct riscv_iommu_ir_vcpu_info *'
     337 |                                           struct riscv_iommu_ir_vcpu_info *vcpu_info)
         |                                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~
   drivers/iommu/riscv/iommu-ir.c:412:70: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     412 |         new_idx = riscv_iommu_ir_compute_msipte_idx(domain, vcpu_info->gpa);
         |                                                                      ^~
   drivers/iommu/riscv/iommu-ir.c:416:50: error: invalid use of undefined type 'struct riscv_iommu_ir_vcpu_info'
     416 |         riscv_iommu_ir_set_pte(&pteval, vcpu_info->hpa);
         |                                                  ^~
   drivers/iommu/riscv/iommu-ir.c: In function 'riscv_ir_set_imsic_global_config':
   drivers/iommu/riscv/iommu-ir.c:620:68: error: 'struct riscv_iommu_domain' has no member named 'numa_node'
     620 |                 domain->msi_root = iommu_alloc_pages_node_sz(domain->numa_node, GFP_KERNEL_ACCOUNT,
         |                                                                    ^~
   drivers/iommu/riscv/iommu-ir.c: In function 'riscv_iommu_ir_attach_paging_domain':
   drivers/iommu/riscv/iommu-ir.c:662:27: error: 'struct riscv_iommu_domain' has no member named 'pgd_mode'
     662 |                 if (domain->pgd_mode) {
         |                           ^~
   drivers/iommu/riscv/iommu-ir.c: In function 'riscv_iommu_ir_vcpu_check_config':
>> drivers/iommu/riscv/iommu-ir.c:333:1: warning: control reaches end of non-void function [-Wreturn-type]
     333 | }
         | ^


vim +333 drivers/iommu/riscv/iommu-ir.c

   325	
   326	static bool riscv_iommu_ir_vcpu_check_config(struct riscv_iommu_domain *domain,
   327						     struct riscv_iommu_ir_vcpu_info *vcpu_info)
   328	{
   329		return domain->msi_addr_mask == vcpu_info->msi_addr_mask &&
   330		       domain->msi_addr_pattern == vcpu_info->msi_addr_pattern &&
   331		       domain->group_index_bits == vcpu_info->group_index_bits &&
   332		       domain->group_index_shift == vcpu_info->group_index_shift;
 > 333	}
   334	

-- 
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-04-30  3:20 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-30  3:19 [avpatel:riscv_iommu_irqbypass_v2 13/18] drivers/iommu/riscv/iommu-ir.c:333:1: warning: control reaches end of non-void function kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.