drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:2048:12: warning: stack frame size (1184) exceeds limit (1024) in 'arm_smmu_atc_inv_master'
From: kernel test robot
Date: Mon Jun 23 2025 - 10:33:13 EST
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 86731a2a651e58953fc949573895f2fa6d456841
commit: 6de80d619203c672e5c011e8715bd965d27b69cf iommu/arm-smmu-v3: Add struct arm_smmu_impl_ops
date: 10 months ago
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20250623/202506232202.d7l6AowE-lkp@xxxxxxxxx/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250623/202506232202.d7l6AowE-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202506232202.d7l6AowE-lkp@xxxxxxxxx/
All warnings (new ones prefixed by >>):
In file included from drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:12:
In file included from include/linux/acpi.h:39:
In file included from include/acpi/acpi_io.h:7:
In file included from arch/arm64/include/asm/acpi.h:14:
In file included from include/linux/memblock.h:12:
In file included from include/linux/mm.h:2228:
include/linux/vmstat.h:500:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
500 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
501 | item];
| ~~~~
include/linux/vmstat.h:507:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
507 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
508 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:514:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
514 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
include/linux/vmstat.h:519:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
519 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
520 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:528:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
528 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
529 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:2066:5: warning: stack frame size (1232) exceeds limit (1024) in 'arm_smmu_atc_inv_domain' [-Wframe-larger-than]
2066 | int arm_smmu_atc_inv_domain(struct arm_smmu_domain *smmu_domain,
| ^
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:2141:13: warning: stack frame size (1216) exceeds limit (1024) in '__arm_smmu_tlb_inv_range' [-Wframe-larger-than]
2141 | static void __arm_smmu_tlb_inv_range(struct arm_smmu_cmdq_ent *cmd,
| ^
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1259:28: warning: stack frame size (1232) exceeds limit (1024) in 'arm_smmu_alloc_cd_ptr' [-Wframe-larger-than]
1259 | static struct arm_smmu_cd *arm_smmu_alloc_cd_ptr(struct arm_smmu_master *master,
| ^
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:1320:13: warning: stack frame size (1184) exceeds limit (1024) in 'arm_smmu_cd_writer_sync_entry' [-Wframe-larger-than]
1320 | static void arm_smmu_cd_writer_sync_entry(struct arm_smmu_entry_writer *writer)
| ^
>> drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:2048:12: warning: stack frame size (1184) exceeds limit (1024) in 'arm_smmu_atc_inv_master' [-Wframe-larger-than]
2048 | static int arm_smmu_atc_inv_master(struct arm_smmu_master *master,
| ^
10 warnings generated.
vim +/arm_smmu_atc_inv_master +2048 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2047
1d5f34f0002f9f drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Jason Gunthorpe 2024-06-25 @2048 static int arm_smmu_atc_inv_master(struct arm_smmu_master *master,
1d5f34f0002f9f drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Jason Gunthorpe 2024-06-25 2049 ioasid_t ssid)
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2050 {
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2051 int i;
9e773aee8c3e1b drivers/iommu/arm-smmu-v3.c Rob Herring 2020-02-24 2052 struct arm_smmu_cmdq_ent cmd;
93f9f7958f12a1 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Zhen Lei 2021-08-17 2053 struct arm_smmu_cmdq_batch cmds;
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2054
1d5f34f0002f9f drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Jason Gunthorpe 2024-06-25 2055 arm_smmu_atc_inv_to_cmd(ssid, 0, 0, &cmd);
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2056
56ae8866f3b408 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Nicolin Chen 2024-08-29 2057 arm_smmu_cmdq_batch_init(master->smmu, &cmds);
cdf315f907d46a drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Jean-Philippe Brucker 2021-04-01 2058 for (i = 0; i < master->num_streams; i++) {
cdf315f907d46a drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Jean-Philippe Brucker 2021-04-01 2059 cmd.atc.sid = master->streams[i].id;
eff19474b1bd60 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Zhen Lei 2021-08-11 2060 arm_smmu_cmdq_batch_add(master->smmu, &cmds, &cmd);
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2061 }
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2062
eff19474b1bd60 drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c Zhen Lei 2021-08-11 2063 return arm_smmu_cmdq_batch_submit(master->smmu, &cmds);
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2064 }
9ce27afc0830fc drivers/iommu/arm-smmu-v3.c Jean-Philippe Brucker 2019-04-17 2065
:::::: The code at line 2048 was first introduced by commit
:::::: 1d5f34f0002f9f56d0ca153022cfdead07d45dc6 iommu/arm-smmu-v3: Thread SSID through the arm_smmu_attach_*() interface
:::::: TO: Jason Gunthorpe <jgg@xxxxxxxxxx>
:::::: CC: Will Deacon <will@xxxxxxxxxx>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki