Hi Cezary,
kernel test robot noticed the following build warnings:
[auto build test WARNING on tiwai-sound/for-next] [also build test WARNING on tiwai-sound/for-linus broonie-sound/for-next linus/master v6.7-rc1 next-20231116] [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/Cezary-Rojewski/ALSA-pcm-Intr... base: https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git for-next patch link: https://lore.kernel.org/r/20231114201317.1348066-2-cezary.rojewski%40intel.c... patch subject: [PATCH v3 01/16] ALSA: pcm: Introduce MSBITS subformat interface config: i386-randconfig-062-20231116 (https://download.01.org/0day-ci/archive/20231116/202311161421.XWUhngXI-lkp@i...) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231116/202311161421.XWUhngXI-lkp@i...)
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/202311161421.XWUhngXI-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
sound/core/pcm_native.c:2517:43: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected unsigned int val @@ got restricted snd_pcm_format_t [assigned] [usertype] f @@
sound/core/pcm_native.c:2517:43: sparse: expected unsigned int val sound/core/pcm_native.c:2517:43: sparse: got restricted snd_pcm_format_t [assigned] [usertype] f sound/core/pcm_native.c: note: in included file (through include/linux/mmzone.h, include/linux/gfp.h, include/linux/xarray.h, ...): include/linux/page-flags.h:242:46: sparse: sparse: self-comparison always evaluates to false sound/core/pcm_native.c:95:1: sparse: sparse: context imbalance in 'snd_pcm_group_lock' - different lock contexts for basic block sound/core/pcm_native.c:96:1: sparse: sparse: context imbalance in 'snd_pcm_group_unlock' - unexpected unlock sound/core/pcm_native.c:97:1: sparse: sparse: context imbalance in 'snd_pcm_group_lock_irq' - different lock contexts for basic block sound/core/pcm_native.c:98:1: sparse: sparse: context imbalance in 'snd_pcm_group_unlock_irq' - unexpected unlock sound/core/pcm_native.c:145:9: sparse: sparse: context imbalance in 'snd_pcm_stream_lock_nested' - different lock contexts for basic block sound/core/pcm_native.c:171:9: sparse: sparse: context imbalance in '_snd_pcm_stream_lock_irqsave' - different lock contexts for basic block sound/core/pcm_native.c:184:9: sparse: sparse: context imbalance in '_snd_pcm_stream_lock_irqsave_nested' - different lock contexts for basic block sound/core/pcm_native.c:201:39: sparse: sparse: context imbalance in 'snd_pcm_stream_unlock_irqrestore' - unexpected unlock sound/core/pcm_native.c:1278:44: sparse: sparse: context imbalance in 'snd_pcm_action_group' - unexpected unlock sound/core/pcm_native.c:1348:37: sparse: sparse: context imbalance in 'snd_pcm_stream_group_ref' - different lock contexts for basic block
vim +2517 sound/core/pcm_native.c
2502 2503 static int snd_pcm_hw_rule_subformats(struct snd_pcm_hw_params *params, 2504 struct snd_pcm_hw_rule *rule) 2505 { 2506 struct snd_mask *sfmask = hw_param_mask(params, SNDRV_PCM_HW_PARAM_SUBFORMAT); 2507 struct snd_mask *fmask = hw_param_mask(params, SNDRV_PCM_HW_PARAM_FORMAT); 2508 u32 *subformats = rule->private; 2509 snd_pcm_format_t f; 2510 struct snd_mask m; 2511 2512 snd_mask_none(&m); 2513 /* All PCMs support at least the default STD subformat. */ 2514 snd_mask_set(&m, (__force unsigned)SNDRV_PCM_SUBFORMAT_STD); 2515 2516 pcm_for_each_format(f) {
2517 if (!snd_mask_test(fmask, f))
2518 continue; 2519 2520 if (f == SNDRV_PCM_FORMAT_S32_LE) 2521 m.bits[0] |= *subformats; 2522 else if (snd_pcm_format_linear(f)) 2523 snd_mask_set(&m, (__force unsigned)SNDRV_PCM_SUBFORMAT_MSBITS_MAX); 2524 } 2525 2526 return snd_mask_refine(sfmask, &m); 2527 } 2528