Hi Greg,
FYI, the error/warning still remains.
tree:
https://android.googlesource.com/kernel/common android-4.19-stable
head: 20763d5b10df774960bfc616e30d4b9cdf744fc1
commit: b8539473ea414eaa4ef28791fa308a6ab8c5d67c [9050/9999] ANDROID: GKI: workqueue.h:
add Android ABI padding to some structures
config: x86_64-randconfig-s021-20200622 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-13) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-dirty
git checkout b8539473ea414eaa4ef28791fa308a6ab8c5d67c
# 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>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
sound/soc/soc-dapm.c: In function 'pop_dbg':
sound/soc/soc-dapm.c:174:2: warning: function 'pop_dbg' might be a candidate for
'gnu_printf' format attribute [-Wsuggest-attribute=format]
174 | vsnprintf(buf, PAGE_SIZE, fmt, args);
| ^~~~~~~~~
sound/soc/soc-dapm.c: In function 'snd_soc_dai_link_event':
> sound/soc/soc-dapm.c:3833:1: warning: the frame size of 2072
bytes is larger than 2048 bytes [-Wframe-larger-than=]
3833 | }
| ^
vim +3833 sound/soc/soc-dapm.c
4ba1327ab8ce17 Mark Brown 2008-05-13 3697
c74184ed30ecce Mark Brown 2012-04-04 3698 static int
snd_soc_dai_link_event(struct snd_soc_dapm_widget *w,
c74184ed30ecce Mark Brown 2012-04-04 3699 struct snd_kcontrol *kcontrol,
int event)
c74184ed30ecce Mark Brown 2012-04-04 3700 {
c74184ed30ecce Mark Brown 2012-04-04 3701 struct snd_soc_dapm_path *source_p,
*sink_p;
c74184ed30ecce Mark Brown 2012-04-04 3702 struct snd_soc_dai *source, *sink;
249dc49576fc95 Charles Keepax 2018-08-15 3703 struct snd_soc_pcm_runtime *rtd =
w->priv;
c66150824b8a80 Nikesh Oswal 2015-02-02 3704 const struct snd_soc_pcm_stream
*config = w->params + w->params_select;
c74184ed30ecce Mark Brown 2012-04-04 3705 struct snd_pcm_substream substream;
9747cec21e2d55 Mark Brown 2012-04-26 3706 struct snd_pcm_hw_params *params =
NULL;
8053f21675b073 Nicolin Chen 2016-07-26 3707 struct snd_pcm_runtime *runtime =
NULL;
3ba66feb59810e Takashi Iwai 2018-07-25 3708 unsigned int fmt;
0376916b7b2cff Charles Keepax 2018-09-06 3709 int ret = 0;
c74184ed30ecce Mark Brown 2012-04-04 3710
bf4edea863c435 Takashi Iwai 2013-11-07 3711 if (WARN_ON(!config) ||
a3423b02cf745c Lars-Peter Clausen 2015-08-11 3712
WARN_ON(list_empty(&w->edges[SND_SOC_DAPM_DIR_OUT]) ||
a3423b02cf745c Lars-Peter Clausen 2015-08-11 3713
list_empty(&w->edges[SND_SOC_DAPM_DIR_IN])))
bf4edea863c435 Takashi Iwai 2013-11-07 3714 return -EINVAL;
c74184ed30ecce Mark Brown 2012-04-04 3715
c74184ed30ecce Mark Brown 2012-04-04 3716 /* We only support a single source
and sink, pick the first */
a3423b02cf745c Lars-Peter Clausen 2015-08-11 3717 source_p =
list_first_entry(&w->edges[SND_SOC_DAPM_DIR_OUT],
a3423b02cf745c Lars-Peter Clausen 2015-08-11 3718 struct snd_soc_dapm_path,
a3423b02cf745c Lars-Peter Clausen 2015-08-11 3719
list_node[SND_SOC_DAPM_DIR_OUT]);
a3423b02cf745c Lars-Peter Clausen 2015-08-11 3720 sink_p =
list_first_entry(&w->edges[SND_SOC_DAPM_DIR_IN],
a3423b02cf745c Lars-Peter Clausen 2015-08-11 3721 struct snd_soc_dapm_path,
a3423b02cf745c Lars-Peter Clausen 2015-08-11 3722
list_node[SND_SOC_DAPM_DIR_IN]);
c74184ed30ecce Mark Brown 2012-04-04 3723
c74184ed30ecce Mark Brown 2012-04-04 3724 source =
source_p->source->priv;
c74184ed30ecce Mark Brown 2012-04-04 3725 sink = sink_p->sink->priv;
c74184ed30ecce Mark Brown 2012-04-04 3726
c74184ed30ecce Mark Brown 2012-04-04 3727 /* Be a little careful as we
don't want to overflow the mask array */
c74184ed30ecce Mark Brown 2012-04-04 3728 if (config->formats) {
c74184ed30ecce Mark Brown 2012-04-04 3729 fmt = ffs(config->formats) - 1;
c74184ed30ecce Mark Brown 2012-04-04 3730 } else {
30a6a1a4eed170 Liam Girdwood 2012-11-19 3731 dev_warn(w->dapm->dev,
"ASoC: Invalid format %llx specified\n",
c74184ed30ecce Mark Brown 2012-04-04 3732 config->formats);
c74184ed30ecce Mark Brown 2012-04-04 3733 fmt = 0;
c74184ed30ecce Mark Brown 2012-04-04 3734 }
c74184ed30ecce Mark Brown 2012-04-04 3735
c74184ed30ecce Mark Brown 2012-04-04 3736 /* Currently very limited parameter
selection */
9747cec21e2d55 Mark Brown 2012-04-26 3737 params = kzalloc(sizeof(*params),
GFP_KERNEL);
9747cec21e2d55 Mark Brown 2012-04-26 3738 if (!params) {
9747cec21e2d55 Mark Brown 2012-04-26 3739 ret = -ENOMEM;
9747cec21e2d55 Mark Brown 2012-04-26 3740 goto out;
9747cec21e2d55 Mark Brown 2012-04-26 3741 }
9747cec21e2d55 Mark Brown 2012-04-26 3742 snd_mask_set(hw_param_mask(params,
SNDRV_PCM_HW_PARAM_FORMAT), fmt);
c74184ed30ecce Mark Brown 2012-04-04 3743
9747cec21e2d55 Mark Brown 2012-04-26 3744 hw_param_interval(params,
SNDRV_PCM_HW_PARAM_RATE)->min =
c74184ed30ecce Mark Brown 2012-04-04 3745 config->rate_min;
9747cec21e2d55 Mark Brown 2012-04-26 3746 hw_param_interval(params,
SNDRV_PCM_HW_PARAM_RATE)->max =
c74184ed30ecce Mark Brown 2012-04-04 3747 config->rate_max;
c74184ed30ecce Mark Brown 2012-04-04 3748
9747cec21e2d55 Mark Brown 2012-04-26 3749 hw_param_interval(params,
SNDRV_PCM_HW_PARAM_CHANNELS)->min
c74184ed30ecce Mark Brown 2012-04-04 3750 = config->channels_min;
9747cec21e2d55 Mark Brown 2012-04-26 3751 hw_param_interval(params,
SNDRV_PCM_HW_PARAM_CHANNELS)->max
c74184ed30ecce Mark Brown 2012-04-04 3752 = config->channels_max;
c74184ed30ecce Mark Brown 2012-04-04 3753
c74184ed30ecce Mark Brown 2012-04-04 3754 memset(&substream, 0,
sizeof(substream));
c74184ed30ecce Mark Brown 2012-04-04 3755
8053f21675b073 Nicolin Chen 2016-07-26 3756 /* Allocate a dummy snd_pcm_runtime
for startup() and other ops() */
8053f21675b073 Nicolin Chen 2016-07-26 3757 runtime = kzalloc(sizeof(*runtime),
GFP_KERNEL);
8053f21675b073 Nicolin Chen 2016-07-26 3758 if (!runtime) {
8053f21675b073 Nicolin Chen 2016-07-26 3759 ret = -ENOMEM;
8053f21675b073 Nicolin Chen 2016-07-26 3760 goto out;
8053f21675b073 Nicolin Chen 2016-07-26 3761 }
8053f21675b073 Nicolin Chen 2016-07-26 3762 substream.runtime = runtime;
249dc49576fc95 Charles Keepax 2018-08-15 3763 substream.private_data = rtd;
8053f21675b073 Nicolin Chen 2016-07-26 3764
c74184ed30ecce Mark Brown 2012-04-04 3765 switch (event) {
c74184ed30ecce Mark Brown 2012-04-04 3766 case SND_SOC_DAPM_PRE_PMU:
c74184ed30ecce Mark Brown 2012-04-04 3767 substream.stream =
SNDRV_PCM_STREAM_CAPTURE;
9900a4226c785d Kuninori Morimoto 2017-09-25 3768 if
(source->driver->ops->startup) {
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3769 ret =
source->driver->ops->startup(&substream, source);
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3770 if (ret < 0) {
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3771 dev_err(source->dev,
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3772 "ASoC: startup() failed:
%d\n", ret);
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3773 goto out;
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3774 }
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3775 source->active++;
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3776 }
93e6958a3674d2 Benoit Cousson 2014-07-08 3777 ret =
soc_dai_hw_params(&substream, params, source);
93e6958a3674d2 Benoit Cousson 2014-07-08 3778 if (ret < 0)
9747cec21e2d55 Mark Brown 2012-04-26 3779 goto out;
c74184ed30ecce Mark Brown 2012-04-04 3780
c74184ed30ecce Mark Brown 2012-04-04 3781 substream.stream =
SNDRV_PCM_STREAM_PLAYBACK;
9900a4226c785d Kuninori Morimoto 2017-09-25 3782 if
(sink->driver->ops->startup) {
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3783 ret =
sink->driver->ops->startup(&substream, sink);
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3784 if (ret < 0) {
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3785 dev_err(sink->dev,
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3786 "ASoC: startup() failed:
%d\n", ret);
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3787 goto out;
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3788 }
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3789 sink->active++;
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3790 }
93e6958a3674d2 Benoit Cousson 2014-07-08 3791 ret =
soc_dai_hw_params(&substream, params, sink);
93e6958a3674d2 Benoit Cousson 2014-07-08 3792 if (ret < 0)
9747cec21e2d55 Mark Brown 2012-04-26 3793 goto out;
c74184ed30ecce Mark Brown 2012-04-04 3794 break;
c74184ed30ecce Mark Brown 2012-04-04 3795
c74184ed30ecce Mark Brown 2012-04-04 3796 case SND_SOC_DAPM_POST_PMU:
da18396f949eca Mark Brown 2013-02-06 3797 ret = snd_soc_dai_digital_mute(sink,
0,
da18396f949eca Mark Brown 2013-02-06 3798
SNDRV_PCM_STREAM_PLAYBACK);
c74184ed30ecce Mark Brown 2012-04-04 3799 if (ret != 0 && ret !=
-ENOTSUPP)
30a6a1a4eed170 Liam Girdwood 2012-11-19 3800 dev_warn(sink->dev, "ASoC:
Failed to unmute: %d\n", ret);
9747cec21e2d55 Mark Brown 2012-04-26 3801 ret = 0;
c74184ed30ecce Mark Brown 2012-04-04 3802 break;
c74184ed30ecce Mark Brown 2012-04-04 3803
c74184ed30ecce Mark Brown 2012-04-04 3804 case SND_SOC_DAPM_PRE_PMD:
da18396f949eca Mark Brown 2013-02-06 3805 ret = snd_soc_dai_digital_mute(sink,
1,
da18396f949eca Mark Brown 2013-02-06 3806
SNDRV_PCM_STREAM_PLAYBACK);
c74184ed30ecce Mark Brown 2012-04-04 3807 if (ret != 0 && ret !=
-ENOTSUPP)
30a6a1a4eed170 Liam Girdwood 2012-11-19 3808 dev_warn(sink->dev, "ASoC:
Failed to mute: %d\n", ret);
9747cec21e2d55 Mark Brown 2012-04-26 3809 ret = 0;
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3810
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3811 source->active--;
9900a4226c785d Kuninori Morimoto 2017-09-25 3812 if
(source->driver->ops->shutdown) {
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3813 substream.stream =
SNDRV_PCM_STREAM_CAPTURE;
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3814
source->driver->ops->shutdown(&substream, source);
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3815 }
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3816
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3817 sink->active--;
9900a4226c785d Kuninori Morimoto 2017-09-25 3818 if
(sink->driver->ops->shutdown) {
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3819 substream.stream =
SNDRV_PCM_STREAM_PLAYBACK;
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3820
sink->driver->ops->shutdown(&substream, sink);
9b8ef9f6b3fccc Jeeja KP 2015-10-20 3821 }
c74184ed30ecce Mark Brown 2012-04-04 3822 break;
c74184ed30ecce Mark Brown 2012-04-04 3823
c74184ed30ecce Mark Brown 2012-04-04 3824 default:
a6ed0608bd289b Takashi Iwai 2013-11-06 3825 WARN(1, "Unknown event
%d\n", event);
75881df3fd7708 Sudip Mukherjee 2015-09-10 3826 ret = -EINVAL;
c74184ed30ecce Mark Brown 2012-04-04 3827 }
c74184ed30ecce Mark Brown 2012-04-04 3828
9747cec21e2d55 Mark Brown 2012-04-26 3829 out:
8053f21675b073 Nicolin Chen 2016-07-26 3830 kfree(runtime);
9747cec21e2d55 Mark Brown 2012-04-26 3831 kfree(params);
9747cec21e2d55 Mark Brown 2012-04-26 3832 return ret;
c74184ed30ecce Mark Brown 2012-04-04 @3833 }
c74184ed30ecce Mark Brown 2012-04-04 3834
:::::: The code at line 3833 was first introduced by commit
:::::: c74184ed30ecce2a5e9ae9aa22cb5e3942e0c7c7 ASoC: core: Support transparent
CODEC<->CODEC DAI links
:::::: TO: Mark Brown <broonie(a)opensource.wolfsonmicro.com>
:::::: CC: Mark Brown <broonie(a)opensource.wolfsonmicro.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org