linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* sound/soc/intel/skylake/skl-topology.c:3642:1: warning: the frame size of 1256 bytes is larger than 1024 bytes
@ 2020-11-04  7:09 kernel test robot
  2020-11-04 17:10 ` Pierre-Louis Bossart
  0 siblings, 1 reply; 3+ messages in thread
From: kernel test robot @ 2020-11-04  7:09 UTC (permalink / raw)
  To: Mateusz Gorski
  Cc: kbuild-all, linux-kernel, Mark Brown, Cezary Rojewski,
	Pierre-Louis Bossart

[-- Attachment #1: Type: text/plain, Size: 2442 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4ef8451b332662d004df269d4cdeb7d9f31419b5
commit: 2d744ecf2b98405723a2138a547e5c75009bc4e5 ASoC: Intel: Skylake: Automatic DMIC format configuration according to information from NHLT
date:   6 months ago
config: x86_64-customedconfig-lck8195-cfld1 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2d744ecf2b98405723a2138a547e5c75009bc4e5
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 2d744ecf2b98405723a2138a547e5c75009bc4e5
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   sound/soc/intel/skylake/skl-topology.c: In function 'skl_tplg_complete':
>> sound/soc/intel/skylake/skl-topology.c:3642:1: warning: the frame size of 1256 bytes is larger than 1024 bytes [-Wframe-larger-than=]
    3642 | }
         | ^

vim +3642 sound/soc/intel/skylake/skl-topology.c

  3612	
  3613	static void skl_tplg_complete(struct snd_soc_component *component)
  3614	{
  3615		struct snd_soc_dobj *dobj;
  3616		struct snd_soc_acpi_mach *mach =
  3617			dev_get_platdata(component->card->dev);
  3618		int i;
  3619	
  3620		list_for_each_entry(dobj, &component->dobj_list, list) {
  3621			struct snd_kcontrol *kcontrol = dobj->control.kcontrol;
  3622			struct soc_enum *se =
  3623				(struct soc_enum *)kcontrol->private_value;
  3624			char **texts = dobj->control.dtexts;
  3625			char chan_text[4];
  3626	
  3627			if (dobj->type != SND_SOC_DOBJ_ENUM ||
  3628			    dobj->control.kcontrol->put !=
  3629			    skl_tplg_multi_config_set_dmic)
  3630				continue;
  3631			sprintf(chan_text, "c%d", mach->mach_params.dmic_num);
  3632	
  3633			for (i = 0; i < se->items; i++) {
  3634				struct snd_ctl_elem_value val;
  3635	
  3636				if (strstr(texts[i], chan_text)) {
  3637					val.value.enumerated.item[0] = i;
  3638					kcontrol->put(kcontrol, &val);
  3639				}
  3640			}
  3641		}
> 3642	}
  3643	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 51234 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: sound/soc/intel/skylake/skl-topology.c:3642:1: warning: the frame size of 1256 bytes is larger than 1024 bytes
  2020-11-04  7:09 sound/soc/intel/skylake/skl-topology.c:3642:1: warning: the frame size of 1256 bytes is larger than 1024 bytes kernel test robot
@ 2020-11-04 17:10 ` Pierre-Louis Bossart
  0 siblings, 0 replies; 3+ messages in thread
From: Pierre-Louis Bossart @ 2020-11-04 17:10 UTC (permalink / raw)
  To: kernel test robot, Mateusz Gorski
  Cc: kbuild-all, linux-kernel, Mark Brown, Cezary Rojewski


>     sound/soc/intel/skylake/skl-topology.c: In function 'skl_tplg_complete':
>>> sound/soc/intel/skylake/skl-topology.c:3642:1: warning: the frame size of 1256 bytes is larger than 1024 bytes [-Wframe-larger-than=]
>      3642 | }
>           | ^
> 
> vim +3642 sound/soc/intel/skylake/skl-topology.c
> 
>    3612	
>    3613	static void skl_tplg_complete(struct snd_soc_component *component)
>    3614	{
>    3615		struct snd_soc_dobj *dobj;
>    3616		struct snd_soc_acpi_mach *mach =
>    3617			dev_get_platdata(component->card->dev);
>    3618		int i;
>    3619	
>    3620		list_for_each_entry(dobj, &component->dobj_list, list) {
>    3621			struct snd_kcontrol *kcontrol = dobj->control.kcontrol;
>    3622			struct soc_enum *se =
>    3623				(struct soc_enum *)kcontrol->private_value;
>    3624			char **texts = dobj->control.dtexts;
>    3625			char chan_text[4];
>    3626	
>    3627			if (dobj->type != SND_SOC_DOBJ_ENUM ||
>    3628			    dobj->control.kcontrol->put !=
>    3629			    skl_tplg_multi_config_set_dmic)
>    3630				continue;
>    3631			sprintf(chan_text, "c%d", mach->mach_params.dmic_num);
>    3632	
>    3633			for (i = 0; i < se->items; i++) {
>    3634				struct snd_ctl_elem_value val;

that structure seems to be the root-cause of this warning. This can take 
512+128 bytes and probably does not belong on the stack.

struct snd_ctl_elem_value {
	struct snd_ctl_elem_id id;	/* W: element ID */
	unsigned int indirect: 1;	/* W: indirect access - obsoleted */
	union {
		union {
			long value[128];
			long *value_ptr;	/* obsoleted */
		} integer;
		union {
			long long value[64];
			long long *value_ptr;	/* obsoleted */
		} integer64;
		union {
			unsigned int item[128];
			unsigned int *item_ptr;	/* obsoleted */
		} enumerated;
		union {
			unsigned char data[512];
			unsigned char *data_ptr;	/* obsoleted */
		} bytes;
		struct snd_aes_iec958 iec958;
	} value;		/* RO */
	unsigned char reserved[128];
};

>    3635	
>    3636				if (strstr(texts[i], chan_text)) {
>    3637					val.value.enumerated.item[0] = i;
>    3638					kcontrol->put(kcontrol, &val);
>    3639				}
>    3640			}
>    3641		}
>> 3642	}


^ permalink raw reply	[flat|nested] 3+ messages in thread

* sound/soc/intel/skylake/skl-topology.c:3642:1: warning: the frame size of 1256 bytes is larger than 1024 bytes
@ 2020-11-04  7:55 kernel test robot
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2020-11-04  7:55 UTC (permalink / raw)
  To: Mateusz Gorski
  Cc: kbuild-all, linux-kernel, Mark Brown, Cezary Rojewski,
	Pierre-Louis Bossart

[-- Attachment #1: Type: text/plain, Size: 2494 bytes --]

Hi Mateusz,

FYI, the error/warning still remains.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4ef8451b332662d004df269d4cdeb7d9f31419b5
commit: 2d744ecf2b98405723a2138a547e5c75009bc4e5 ASoC: Intel: Skylake: Automatic DMIC format configuration according to information from NHLT
date:   6 months ago
config: x86_64-customedconfig-lck8195-cfld1 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2d744ecf2b98405723a2138a547e5c75009bc4e5
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout 2d744ecf2b98405723a2138a547e5c75009bc4e5
        # save the attached .config to linux build tree
        make W=1 ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   sound/soc/intel/skylake/skl-topology.c: In function 'skl_tplg_complete':
>> sound/soc/intel/skylake/skl-topology.c:3642:1: warning: the frame size of 1256 bytes is larger than 1024 bytes [-Wframe-larger-than=]
    3642 | }
         | ^

vim +3642 sound/soc/intel/skylake/skl-topology.c

  3612	
  3613	static void skl_tplg_complete(struct snd_soc_component *component)
  3614	{
  3615		struct snd_soc_dobj *dobj;
  3616		struct snd_soc_acpi_mach *mach =
  3617			dev_get_platdata(component->card->dev);
  3618		int i;
  3619	
  3620		list_for_each_entry(dobj, &component->dobj_list, list) {
  3621			struct snd_kcontrol *kcontrol = dobj->control.kcontrol;
  3622			struct soc_enum *se =
  3623				(struct soc_enum *)kcontrol->private_value;
  3624			char **texts = dobj->control.dtexts;
  3625			char chan_text[4];
  3626	
  3627			if (dobj->type != SND_SOC_DOBJ_ENUM ||
  3628			    dobj->control.kcontrol->put !=
  3629			    skl_tplg_multi_config_set_dmic)
  3630				continue;
  3631			sprintf(chan_text, "c%d", mach->mach_params.dmic_num);
  3632	
  3633			for (i = 0; i < se->items; i++) {
  3634				struct snd_ctl_elem_value val;
  3635	
  3636				if (strstr(texts[i], chan_text)) {
  3637					val.value.enumerated.item[0] = i;
  3638					kcontrol->put(kcontrol, &val);
  3639				}
  3640			}
  3641		}
> 3642	}
  3643	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 51234 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2020-11-04 17:10 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-04  7:09 sound/soc/intel/skylake/skl-topology.c:3642:1: warning: the frame size of 1256 bytes is larger than 1024 bytes kernel test robot
2020-11-04 17:10 ` Pierre-Louis Bossart
2020-11-04  7:55 kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).