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/Joey-Jiao/kcov-add-unique-cover-edge-and-cmp-modes/20250110-153559 base: 9b2ffa6148b1e4468d08f7e0e7e371c43cac9ffe patch link: https://lore.kernel.org/r/20250110073056.2594638-1-quic_jiangenj%40quicinc.com patch subject: [PATCH] kcov: add unique cover, edge, and cmp modes config: arm-randconfig-002-20250111 (https://download.01.org/0day-ci/archive/20250111/202501111600.ojBvC1LF-lkp@xxxxxxxxx/config) compiler: arm-linux-gnueabi-gcc (GCC) 14.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250111/202501111600.ojBvC1LF-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/202501111600.ojBvC1LF-lkp@xxxxxxxxx/ 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