Hi Fred, kernel test robot noticed the following build errors: [auto build test ERROR on lee-mfd/for-mfd-next] [also build test ERROR on broonie-sound/for-next linus/master v6.14-rc3 next-20250218] [cannot apply to dtor-input/next dtor-input/for-linus lee-mfd/for-mfd-fixes] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Fred-Treven/firmware-cs_dsp-Fix-error-checking-in-wseq_write/20250217-181206 base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next patch link: https://lore.kernel.org/r/20250204231835.2000457-8-ftreven%40opensource.cirrus.com patch subject: [PATCH RESEND 7/7] Input: cs40l26 - Add support for CS40L26 haptic driver config: s390-allmodconfig (https://download.01.org/0day-ci/archive/20250219/202502190805.6XI1dg3G-lkp@xxxxxxxxx/config) compiler: clang version 19.1.3 (https://github.com/llvm/llvm-project ab51eccf88f5321e7c60591c5546b254b6afab99) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250219/202502190805.6XI1dg3G-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/202502190805.6XI1dg3G-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In file included from drivers/input/misc/cs40l26-vibra.c:12: In file included from include/linux/input.h:19: In file included from include/linux/device.h:32: In file included from include/linux/device/driver.h:21: In file included from include/linux/module.h:19: In file included from include/linux/elf.h:6: In file included from arch/s390/include/asm/elf.h:181: In file included from arch/s390/include/asm/mmu_context.h:11: In file included from arch/s390/include/asm/pgalloc.h:18: In file included from include/linux/mm.h:2224: include/linux/vmstat.h:504:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 504 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 505 | item]; | ~~~~ include/linux/vmstat.h:511:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 511 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 512 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ include/linux/vmstat.h:524:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion] 524 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~ ^ 525 | NR_VM_NUMA_EVENT_ITEMS + | ~~~~~~~~~~~~~~~~~~~~~~ >> drivers/input/misc/cs40l26-vibra.c:400:3: error: cannot jump from this goto statement to its label 400 | goto out_free; | ^ drivers/input/misc/cs40l26-vibra.c:402:2: note: jump bypasses initialization of variable with __attribute__((cleanup)) 402 | guard(mutex)(&cs40l26->dsp.pwr_lock); | ^ include/linux/cleanup.h:309:15: note: expanded from macro 'guard' 309 | CLASS(_name, __UNIQUE_ID(guard)) | ^ include/linux/compiler.h:166:29: note: expanded from macro '__UNIQUE_ID' 166 | #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__) | ^ include/linux/compiler_types.h:84:22: note: expanded from macro '__PASTE' 84 | #define __PASTE(a,b) ___PASTE(a,b) | ^ include/linux/compiler_types.h:83:23: note: expanded from macro '___PASTE' 83 | #define ___PASTE(a,b) a##b | ^ <scratch space>:141:1: note: expanded from here 141 | __UNIQUE_ID_guard557 | ^ drivers/input/misc/cs40l26-vibra.c:548:3: error: cannot jump from this goto statement to its label 548 | goto out_free; | ^ drivers/input/misc/cs40l26-vibra.c:551:2: note: jump bypasses initialization of variable with __attribute__((cleanup)) 551 | guard(mutex)(&vib->cs40l26->dsp.pwr_lock); | ^ include/linux/cleanup.h:309:15: note: expanded from macro 'guard' 309 | CLASS(_name, __UNIQUE_ID(guard)) | ^ include/linux/compiler.h:166:29: note: expanded from macro '__UNIQUE_ID' 166 | #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__) | ^ include/linux/compiler_types.h:84:22: note: expanded from macro '__PASTE' 84 | #define __PASTE(a,b) ___PASTE(a,b) | ^ include/linux/compiler_types.h:83:23: note: expanded from macro '___PASTE' 83 | #define ___PASTE(a,b) a##b | ^ <scratch space>:169:1: note: expanded from here 169 | __UNIQUE_ID_guard558 | ^ 3 warnings and 2 errors generated. vim +400 drivers/input/misc/cs40l26-vibra.c 386 387 static void cs40l26_start_playback_worker(struct work_struct *work) 388 { 389 struct cs40l26_work *work_data = container_of(work, struct cs40l26_work, work); 390 struct cs40l26 *cs40l26 = work_data->vib->cs40l26; 391 struct cs40l26_effect *effect; 392 u16 duration; 393 int id; 394 395 id = work_data->ff_effect->id; 396 397 duration = work_data->ff_effect->replay.length; 398 399 if (pm_runtime_resume_and_get(cs40l26->dev)) > 400 goto out_free; 401 402 guard(mutex)(&cs40l26->dsp.pwr_lock); 403 404 if (cs40l26_fw_write(&cs40l26->dsp, "TIMEOUT_MS", cs40l26->variant->info->vibegen_algo_id, 405 duration)) 406 goto out_pm; 407 408 effect = cs40l26_find_effect(work_data->vib, id); 409 if (effect) { 410 while (--work_data->count >= 0) { 411 if (cs40l26_dsp_write(cs40l26, effect->index)) 412 goto out_pm; 413 414 usleep_range(duration, duration + 100); 415 } 416 } else { 417 dev_err(cs40l26->dev, "No effect found with ID %d\n", id); 418 } 419 420 out_pm: 421 cs40l26_pm_exit(cs40l26->dev); 422 423 out_free: 424 kfree(work_data); 425 } 426 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki