* [android-common:main-16k-gs-shusky-5.15 35/35] drivers/cma/mm/mem_phys_layout.c:151:9: warning: ISO C90 forbids mixed declarations and code
@ 2026-07-28 17:59 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-07-28 17:59 UTC (permalink / raw)
To: cros-kernel-buildreports; +Cc: oe-kbuild-all
tree: https://android.googlesource.com/kernel/common main-16k-gs-shusky-5.15
head: d0ed0375a65ca817f907805e163e103822348f02
commit: b6f7366938c4d377ba5179501f82eea795a17bc2 [35/35] ANDROID: mm: Calculate struct page address given the PFN and vemmap
config: x86_64-randconfig-161 (https://download.01.org/0day-ci/archive/20260729/202607290034.iLGhlM4U-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
smatch: v0.5.0-9187-g5189e3fb
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260729/202607290034.iLGhlM4U-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/202607290034.iLGhlM4U-lkp@intel.com/
All warnings (new ones prefixed by >>):
drivers/cma/mm/mem_phys_layout.c: In function 'print_page_info':
>> drivers/cma/mm/mem_phys_layout.c:151:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
151 | unsigned long last_pfn = pfn - 1;
| ^~~~~~~~
vim +151 drivers/cma/mm/mem_phys_layout.c
116
117 static void print_page_info(void)
118 {
119 unsigned long pfn;
120 int valid = 0;
121 int invalid = 0;
122 unsigned long num_physpages = get_num_physpages();
123
124 // Start address as per DTS memory@40000000. The first valid PFN represents
125 // this page frame.
126 phys_addr_t start_addr = memblock_start_of_DRAM();
127 unsigned long start_pfn = PHYS_PFN(start_addr);
128
129 for (pfn = start_pfn; pfn < (start_pfn + num_physpages); pfn++) {
130 if (pfn_valid(pfn))
131 valid++;
132 else
133 invalid++;
134 }
135
136 pr_info("get_num_physpages() = %lu", num_physpages);
137 pr_info("valid %d, invalid %d, physpages %lu", valid, invalid, num_physpages);
138
139 pr_info("Start PFN");
140 print_mem_model(start_pfn);
141 pr_info("End PFN");
142 print_mem_model(pfn - 1);
143
144 #ifdef CONFIG_SPARSEMEM_VMEMMAP
145 // CALCULATE STRUCT *P GIVEN THE PFN and vmemmap address
146 pr_info("First struct page starts at: vmemmap [mem %#010Lx]\n",
147 (unsigned long long)vmemmap);
148
149 // How to calculate Physical Address of the Page Frame and the struct page
150 // given the PFN.
> 151 unsigned long last_pfn = pfn - 1;
152 struct page *page = vmemmap + last_pfn;
153 phys_addr_t addr = last_pfn << PAGE_SHIFT;
154
155 pr_info("Calculating physical address given vmemmap and PFN %10llu == %#010Lx",
156 (u64)last_pfn, (u64)last_pfn);
157 pr_info(" PFN: %10llu == %#010Lx struct page[mem %#010Lx], PHYS[mem %#010Lx]",
158 (u64)last_pfn,
159 (u64)last_pfn,
160 (u64)page,
161 addr);
162 #endif
163 }
164 static int __init mem_phys_layout_init(void)
165 {
166 print_ram_info();
167 print_node_data();
168 print_pfn_start_address();
169 print_pageblock_info();
170 print_page_info();
171
172 return 0;
173 }
174
--
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-07-28 17:59 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-28 17:59 [android-common:main-16k-gs-shusky-5.15 35/35] drivers/cma/mm/mem_phys_layout.c:151:9: warning: ISO C90 forbids mixed declarations and code 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.