[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202501240959.61XLxBYF-lkp@intel.com>
Date: Fri, 24 Jan 2025 10:11:52 +0800
From: kernel test robot <lkp@...el.com>
To: "Jiao, Joey" <quic_jiangenj@...cinc.com>,
Dmitry Vyukov <dvyukov@...gle.com>,
Andrey Konovalov <andreyknvl@...il.com>,
Jonathan Corbet <corbet@....net>,
Andrew Morton <akpm@...ux-foundation.org>,
Dennis Zhou <dennis@...nel.org>, Tejun Heo <tj@...nel.org>,
Christoph Lameter <cl@...ux-foundation.org>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>
Cc: oe-kbuild-all@...ts.linux.dev,
Linux Memory Management List <linux-mm@...ck.org>,
kasan-dev@...glegroups.com, linux-kernel@...r.kernel.org,
workflows@...r.kernel.org, linux-doc@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, kernel@...cinc.com
Subject: Re: [PATCH 4/7] kcov: introduce new kcov KCOV_TRACE_UNIQ_CMP mode
Hi Joey,
kernel test robot noticed the following build errors:
[auto build test ERROR on 9b2ffa6148b1e4468d08f7e0e7e371c43cac9ffe]
url: https://github.com/intel-lab-lkp/linux/commits/Jiao-Joey/kcov-introduce-new-kcov-KCOV_TRACE_UNIQ_PC-mode/20250114-133713
base: 9b2ffa6148b1e4468d08f7e0e7e371c43cac9ffe
patch link: https://lore.kernel.org/r/20250114-kcov-v1-4-004294b931a2%40quicinc.com
patch subject: [PATCH 4/7] kcov: introduce new kcov KCOV_TRACE_UNIQ_CMP mode
config: mips-randconfig-r073-20250124 (https://download.01.org/0day-ci/archive/20250124/202501240959.61XLxBYF-lkp@intel.com/config)
compiler: mips-linux-gcc (GCC) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250124/202501240959.61XLxBYF-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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202501240959.61XLxBYF-lkp@intel.com/
All errors (new ones prefixed by >>):
kernel/kcov.c: In function 'kcov_map_add':
>> kernel/kcov.c:309:60: error: 'struct kcov_entry' has no member named 'type'
309 | if (entry->ent == ent->ent && entry->type == ent->type &&
| ^~
kernel/kcov.c:309:73: error: 'struct kcov_entry' has no member named 'type'
309 | if (entry->ent == ent->ent && entry->type == ent->type &&
| ^~
>> kernel/kcov.c:310:34: error: 'struct kcov_entry' has no member named 'arg1'
310 | entry->arg1 == ent->arg1 && entry->arg2 == ent->arg2) {
| ^~
kernel/kcov.c:310:47: error: 'struct kcov_entry' has no member named 'arg1'
310 | entry->arg1 == ent->arg1 && entry->arg2 == ent->arg2) {
| ^~
>> kernel/kcov.c:310:62: error: 'struct kcov_entry' has no member named 'arg2'
310 | entry->arg1 == ent->arg1 && entry->arg2 == ent->arg2) {
| ^~
kernel/kcov.c:310:75: error: 'struct kcov_entry' has no member named 'arg2'
310 | entry->arg1 == ent->arg1 && entry->arg2 == ent->arg2) {
| ^~
kernel/kcov.c:343:48: error: 'struct kcov_entry' has no member named 'type'
343 | area[start_index] = ent->type;
| ^~
kernel/kcov.c:344:52: error: 'struct kcov_entry' has no member named 'arg1'
344 | area[start_index + 1] = ent->arg1;
| ^~
kernel/kcov.c:345:52: error: 'struct kcov_entry' has no member named 'arg2'
345 | area[start_index + 2] = ent->arg2;
| ^~
vim +309 kernel/kcov.c
290
291 static notrace inline void kcov_map_add(struct kcov_map *map, struct kcov_entry *ent,
292 struct task_struct *t, unsigned int mode)
293 {
294 struct kcov *kcov;
295 struct kcov_entry *entry;
296 unsigned int key = hash_key(ent);
297 unsigned long pos, start_index, end_pos, max_pos, *area;
298
299 kcov = t->kcov;
300
301 if ((mode == KCOV_MODE_TRACE_UNIQ_PC ||
302 mode == KCOV_MODE_TRACE_UNIQ_EDGE))
303 hash_for_each_possible_rcu(map->buckets, entry, node, key) {
304 if (entry->ent == ent->ent)
305 return;
306 }
307 else
308 hash_for_each_possible_rcu(map->buckets, entry, node, key) {
> 309 if (entry->ent == ent->ent && entry->type == ent->type &&
> 310 entry->arg1 == ent->arg1 && entry->arg2 == ent->arg2) {
311 return;
312 }
313 }
314
315 entry = (struct kcov_entry *)gen_pool_alloc(map->pool, 1 << MIN_POOL_ALLOC_ORDER);
316 if (unlikely(!entry))
317 return;
318
319 barrier();
320 memcpy(entry, ent, sizeof(*entry));
321 hash_add_rcu(map->buckets, &entry->node, key);
322
323 if (mode == KCOV_MODE_TRACE_UNIQ_PC || mode == KCOV_MODE_TRACE_UNIQ_CMP)
324 area = t->kcov_area;
325 else
326 area = kcov->map_edge->area;
327
328 pos = READ_ONCE(area[0]) + 1;
329 if (mode == KCOV_MODE_TRACE_UNIQ_PC || mode == KCOV_MODE_TRACE_UNIQ_EDGE) {
330 if (likely(pos < t->kcov_size)) {
331 WRITE_ONCE(area[0], pos);
332 barrier();
333 area[pos] = ent->ent;
334 }
335 } else {
336 start_index = 1 + (pos - 1) * KCOV_WORDS_PER_CMP;
337 max_pos = t->kcov_size * sizeof(unsigned long);
338 end_pos = (start_index + KCOV_WORDS_PER_CMP) * sizeof(u64);
339 if (likely(end_pos <= max_pos)) {
340 /* See comment in __sanitizer_cov_trace_pc(). */
341 WRITE_ONCE(area[0], pos);
342 barrier();
343 area[start_index] = ent->type;
344 area[start_index + 1] = ent->arg1;
345 area[start_index + 2] = ent->arg2;
346 area[start_index + 3] = ent->ent;
347 }
348 }
349 }
350
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists