tree:
https://github.com/plbossart/sound fix/more-dpcm-fixes
head: daf63cf6c66926660b7ec88f6e017d97b30fc4d2
commit: daf63cf6c66926660b7ec88f6e017d97b30fc4d2 [5/5] ASoC: soc-dai: set dai_link dpcm_
flags with a helper
:::::: branch date: 28 hours ago
:::::: commit date: 28 hours ago
config: x86_64-randconfig-s022-20200621 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-rc1-18-g27caae40-dirty
git checkout daf63cf6c66926660b7ec88f6e017d97b30fc4d2
# save the attached .config to linux build tree
make W=1 C=1 ARCH=x86_64 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
> sound/soc/soc-dai.c:428:44: sparse: sparse: invalid access past
the end of 'supported' (1 1)
#
https://github.com/plbossart/sound/commit/daf63cf6c66926660b7ec88f6e017d9...
git remote add plbossart-sound
https://github.com/plbossart/sound
git remote update plbossart-sound
git checkout daf63cf6c66926660b7ec88f6e017d97b30fc4d2
vim +/supported +428 sound/soc/soc-dai.c
0b73ba550cdd95 Kuninori Morimoto 2020-04-24 393
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 394 /*
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 395 *
snd_soc_dai_link_set_capabilities() - set dai_link properties based on its DAIs
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 396 */
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 397 void
snd_soc_dai_link_set_capabilities(struct snd_soc_dai_link *dai_link)
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 398 {
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 399 struct snd_soc_dai_link_component
*cpu;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 400 struct snd_soc_dai_link_component
*codec;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 401 struct snd_soc_dai *dai;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 402 bool
supported[SNDRV_PCM_STREAM_LAST];
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 403 int direction;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 404 int i;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 405
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 406 for_each_pcm_streams(direction) {
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 407 supported[direction] = true;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 408
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 409 for_each_link_cpus(dai_link, i,
cpu) {
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 410 dai = snd_soc_find_dai(cpu);
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 411 if (!dai ||
!snd_soc_dai_stream_valid(dai, direction)) {
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 412 supported[direction] = false;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 413 break;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 414 }
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 415 }
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 416 if (!supported[direction])
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 417 continue;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 418 for_each_link_codecs(dai_link, i,
codec) {
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 419 dai = snd_soc_find_dai(codec);
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 420 if (!dai ||
!snd_soc_dai_stream_valid(dai, direction)) {
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 421 supported[direction] = false;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 422 break;
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 423 }
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 424 }
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 425 }
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 426
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 427 dai_link->dpcm_playback =
supported[SNDRV_PCM_STREAM_PLAYBACK];
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 @428 dai_link->dpcm_capture =
supported[SNDRV_PCM_STREAM_CAPTURE];
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 429 }
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 430
EXPORT_SYMBOL_GPL(snd_soc_dai_link_set_capabilities);
daf63cf6c66926 Pierre-Louis Bossart 2020-06-16 431
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org