[alsa-devel] [asoc:for-4.20 399/404] sound/soc/soc-dapm.c:3768:9: warning: 'ret' may be used uninitialized in this function

kbuild test robot lkp at intel.com
Thu Sep 6 13:46:38 CEST 2018


tree:   https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-4.20
head:   9ab708aef61f5620113269a9d1bdb1543d1207d0
commit: 4a75aae17b2a802a7267206414050408392c374c [399/404] ASoC: dapm: Add support for multi-CODEC CODEC to CODEC links
config: x86_64-randconfig-x006-201835 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        git checkout 4a75aae17b2a802a7267206414050408392c374c
        # save the attached .config to linux build tree
        make ARCH=x86_64 

Note: it may well be a FALSE warning. FWIW you are at least aware of it now.
http://gcc.gnu.org/wiki/Better_Uninitialized_Warnings

All warnings (new ones prefixed by >>):

   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:dapm_power_one_widget
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:snd_soc_dapm_check_dynamic_path
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:soc_dapm_update_bits
   Cyclomatic Complexity 15 sound/soc/soc-dapm.c:dapm_widget_update
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:pop_dbg
   Cyclomatic Complexity 12 sound/soc/soc-dapm.c:dapm_seq_check_event
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:dapm_free_path
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:dapm_kcontrol_free
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:pop_wait
   Cyclomatic Complexity 13 sound/soc/soc-dapm.c:dapm_seq_run_coalesced
   Cyclomatic Complexity 42 sound/soc/soc-dapm.c:dapm_seq_run
   Cyclomatic Complexity 13 sound/soc/soc-dapm.c:dapm_widget_show_component
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:dapm_widget_show
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:dapm_wcache_lookup
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:soc_dapm_read
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:dapm_connect_mux
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:dapm_set_mixer_path_status
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:dapm_connect_mixer
   Cyclomatic Complexity 17 sound/soc/soc-dapm.c:dapm_update_widget_flags
   Cyclomatic Complexity 22 sound/soc/soc-dapm.c:snd_soc_dapm_add_path
   Cyclomatic Complexity 19 sound/soc/soc-dapm.c:snd_soc_dapm_add_route
   Cyclomatic Complexity 10 sound/soc/soc-dapm.c:snd_soc_dapm_del_route
   Cyclomatic Complexity 7 sound/soc/soc-dapm.c:dapm_find_widget
   Cyclomatic Complexity 11 sound/soc/soc-dapm.c:snd_soc_dapm_weak_route
   Cyclomatic Complexity 4 sound/soc/soc-dapm.c:snd_soc_dapm_set_pin
   Cyclomatic Complexity 4 sound/soc/soc-dapm.c:dapm_new_dai_link
   Cyclomatic Complexity 9 sound/soc/soc-dapm.c:dapm_is_shared_kcontrol
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:dapm_kcontrol_add_widget
   Cyclomatic Complexity 17 sound/soc/soc-dapm.c:dapm_widget_power_read_file
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:soc_dapm_test_bits
   Cyclomatic Complexity 8 sound/soc/soc-dapm.c:dapm_supply_check_power
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:snd_soc_dapm_free_kcontrol
   Cyclomatic Complexity 42 sound/soc/soc-dapm.c:snd_soc_dai_link_event
   Cyclomatic Complexity 2 include/linux/device.h:devm_kmalloc_array
   Cyclomatic Complexity 1 include/linux/device.h:devm_kcalloc
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:snd_soc_dapm_alloc_kcontrol
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:dapm_debugfs_cleanup
   Cyclomatic Complexity 7 sound/soc/soc-dapm.c:dapm_mark_endpoints_dirty
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:dapm_kcontrol_get_value
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_kcontrol_widget
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_kcontrol_dapm
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:snd_soc_dapm_force_bias_level
   Cyclomatic Complexity 9 sound/soc/soc-dapm.c:snd_soc_dapm_set_bias_level
   Cyclomatic Complexity 10 sound/soc/soc-dapm.c:dapm_pre_sequence_async
   Cyclomatic Complexity 11 sound/soc/soc-dapm.c:dapm_post_sequence_async
   Cyclomatic Complexity 47 sound/soc/soc-dapm.c:dapm_power_widgets
   Cyclomatic Complexity 9 sound/soc/soc-dapm.c:soc_dapm_mux_update_power
   Cyclomatic Complexity 9 sound/soc/soc-dapm.c:soc_dapm_mixer_update_power
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:soc_dapm_stream_event
   Cyclomatic Complexity 9 sound/soc/soc-dapm.c:soc_dapm_shutdown_dapm
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:snd_soc_dapm_dai_get_connected_widgets
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:dapm_regulator_event
   Cyclomatic Complexity 4 sound/soc/soc-dapm.c:dapm_pinctrl_event
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:dapm_clock_event
   Cyclomatic Complexity 4 sound/soc/soc-dapm.c:snd_soc_dapm_debugfs_init
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:snd_soc_dapm_mux_update_power
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:snd_soc_dapm_mixer_update_power
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:snd_soc_dapm_free_widget
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_reset_cache
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:dapm_free_widgets
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:snd_soc_dapm_sync_unlocked
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_sync
   Cyclomatic Complexity 4 sound/soc/soc-dapm.c:snd_soc_dapm_add_routes
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:snd_soc_dapm_del_routes
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:snd_soc_dapm_weak_routes
   Cyclomatic Complexity 11 sound/soc/soc-dapm.c:snd_soc_dapm_get_volsw
   Cyclomatic Complexity 11 sound/soc/soc-dapm.c:snd_soc_dapm_put_volsw
   Cyclomatic Complexity 5 sound/soc/soc-dapm.c:snd_soc_dapm_get_enum_double
   Cyclomatic Complexity 8 sound/soc/soc-dapm.c:snd_soc_dapm_put_enum_double
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_info_pin_switch
   Cyclomatic Complexity 24 sound/soc/soc-dapm.c:snd_soc_dapm_new_control_unlocked
   Cyclomatic Complexity 13 sound/soc/soc-dapm.c:dapm_kcontrol_data_alloc
   Cyclomatic Complexity 14 sound/soc/soc-dapm.c:dapm_create_or_share_kcontrol
   Cyclomatic Complexity 9 sound/soc/soc-dapm.c:dapm_new_mixer
   Cyclomatic Complexity 10 sound/soc/soc-dapm.c:dapm_new_mux
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:dapm_new_pga
   Cyclomatic Complexity 13 sound/soc/soc-dapm.c:snd_soc_dapm_new_widgets
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:snd_soc_dapm_new_dai
   Cyclomatic Complexity 8 sound/soc/soc-dapm.c:dapm_connect_dai_link_widgets
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_new_control
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:snd_soc_dapm_new_controls
   Cyclomatic Complexity 6 sound/soc/soc-dapm.c:snd_soc_dapm_new_dai_widgets
   Cyclomatic Complexity 14 sound/soc/soc-dapm.c:snd_soc_dapm_link_dai_widgets
   Cyclomatic Complexity 5 sound/soc/soc-dapm.c:snd_soc_dapm_connect_dai_link_widgets
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_stream_event
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_enable_pin_unlocked
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_enable_pin
   Cyclomatic Complexity 3 sound/soc/soc-dapm.c:snd_soc_dapm_force_enable_pin_unlocked
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_force_enable_pin
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_disable_pin_unlocked
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_disable_pin
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:snd_soc_dapm_put_pin_switch
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_nc_pin_unlocked
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_nc_pin
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:snd_soc_dapm_get_pin_status
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_get_pin_switch
   Cyclomatic Complexity 2 sound/soc/soc-dapm.c:snd_soc_dapm_ignore_suspend
   Cyclomatic Complexity 1 sound/soc/soc-dapm.c:snd_soc_dapm_free
   Cyclomatic Complexity 7 sound/soc/soc-dapm.c:snd_soc_dapm_shutdown
   sound/soc/soc-dapm.c: In function 'snd_soc_dai_link_event':
>> sound/soc/soc-dapm.c:3768:9: warning: 'ret' may be used uninitialized in this function [-Wmaybe-uninitialized]
     return ret;
            ^~~

vim +/ret +3768 sound/soc/soc-dapm.c

4ba1327a Mark Brown         2008-05-13  3613  
c74184ed Mark Brown         2012-04-04  3614  static int snd_soc_dai_link_event(struct snd_soc_dapm_widget *w,
c74184ed Mark Brown         2012-04-04  3615  				  struct snd_kcontrol *kcontrol, int event)
c74184ed Mark Brown         2012-04-04  3616  {
4a75aae1 Charles Keepax     2018-09-05  3617  	struct snd_soc_dapm_path *path;
c74184ed Mark Brown         2012-04-04  3618  	struct snd_soc_dai *source, *sink;
249dc495 Charles Keepax     2018-08-15  3619  	struct snd_soc_pcm_runtime *rtd = w->priv;
c6615082 Nikesh Oswal       2015-02-02  3620  	const struct snd_soc_pcm_stream *config = w->params + w->params_select;
c74184ed Mark Brown         2012-04-04  3621  	struct snd_pcm_substream substream;
9747cec2 Mark Brown         2012-04-26  3622  	struct snd_pcm_hw_params *params = NULL;
8053f216 Nicolin Chen       2016-07-26  3623  	struct snd_pcm_runtime *runtime = NULL;
3ba66feb Takashi Iwai       2018-07-25  3624  	unsigned int fmt;
c74184ed Mark Brown         2012-04-04  3625  	int ret;
c74184ed Mark Brown         2012-04-04  3626  
bf4edea8 Takashi Iwai       2013-11-07  3627  	if (WARN_ON(!config) ||
a3423b02 Lars-Peter Clausen 2015-08-11  3628  	    WARN_ON(list_empty(&w->edges[SND_SOC_DAPM_DIR_OUT]) ||
a3423b02 Lars-Peter Clausen 2015-08-11  3629  		    list_empty(&w->edges[SND_SOC_DAPM_DIR_IN])))
bf4edea8 Takashi Iwai       2013-11-07  3630  		return -EINVAL;
c74184ed Mark Brown         2012-04-04  3631  
c74184ed Mark Brown         2012-04-04  3632  	/* Be a little careful as we don't want to overflow the mask array */
c74184ed Mark Brown         2012-04-04  3633  	if (config->formats) {
c74184ed Mark Brown         2012-04-04  3634  		fmt = ffs(config->formats) - 1;
c74184ed Mark Brown         2012-04-04  3635  	} else {
30a6a1a4 Liam Girdwood      2012-11-19  3636  		dev_warn(w->dapm->dev, "ASoC: Invalid format %llx specified\n",
c74184ed Mark Brown         2012-04-04  3637  			 config->formats);
c74184ed Mark Brown         2012-04-04  3638  		fmt = 0;
c74184ed Mark Brown         2012-04-04  3639  	}
c74184ed Mark Brown         2012-04-04  3640  
c74184ed Mark Brown         2012-04-04  3641  	/* Currently very limited parameter selection */
9747cec2 Mark Brown         2012-04-26  3642  	params = kzalloc(sizeof(*params), GFP_KERNEL);
9747cec2 Mark Brown         2012-04-26  3643  	if (!params) {
9747cec2 Mark Brown         2012-04-26  3644  		ret = -ENOMEM;
9747cec2 Mark Brown         2012-04-26  3645  		goto out;
9747cec2 Mark Brown         2012-04-26  3646  	}
9747cec2 Mark Brown         2012-04-26  3647  	snd_mask_set(hw_param_mask(params, SNDRV_PCM_HW_PARAM_FORMAT), fmt);
c74184ed Mark Brown         2012-04-04  3648  
9747cec2 Mark Brown         2012-04-26  3649  	hw_param_interval(params, SNDRV_PCM_HW_PARAM_RATE)->min =
c74184ed Mark Brown         2012-04-04  3650  		config->rate_min;
9747cec2 Mark Brown         2012-04-26  3651  	hw_param_interval(params, SNDRV_PCM_HW_PARAM_RATE)->max =
c74184ed Mark Brown         2012-04-04  3652  		config->rate_max;
c74184ed Mark Brown         2012-04-04  3653  
9747cec2 Mark Brown         2012-04-26  3654  	hw_param_interval(params, SNDRV_PCM_HW_PARAM_CHANNELS)->min
c74184ed Mark Brown         2012-04-04  3655  		= config->channels_min;
9747cec2 Mark Brown         2012-04-26  3656  	hw_param_interval(params, SNDRV_PCM_HW_PARAM_CHANNELS)->max
c74184ed Mark Brown         2012-04-04  3657  		= config->channels_max;
c74184ed Mark Brown         2012-04-04  3658  
c74184ed Mark Brown         2012-04-04  3659  	memset(&substream, 0, sizeof(substream));
c74184ed Mark Brown         2012-04-04  3660  
8053f216 Nicolin Chen       2016-07-26  3661  	/* Allocate a dummy snd_pcm_runtime for startup() and other ops() */
8053f216 Nicolin Chen       2016-07-26  3662  	runtime = kzalloc(sizeof(*runtime), GFP_KERNEL);
8053f216 Nicolin Chen       2016-07-26  3663  	if (!runtime) {
8053f216 Nicolin Chen       2016-07-26  3664  		ret = -ENOMEM;
8053f216 Nicolin Chen       2016-07-26  3665  		goto out;
8053f216 Nicolin Chen       2016-07-26  3666  	}
8053f216 Nicolin Chen       2016-07-26  3667  	substream.runtime = runtime;
249dc495 Charles Keepax     2018-08-15  3668  	substream.private_data = rtd;
8053f216 Nicolin Chen       2016-07-26  3669  
c74184ed Mark Brown         2012-04-04  3670  	switch (event) {
c74184ed Mark Brown         2012-04-04  3671  	case SND_SOC_DAPM_PRE_PMU:
c74184ed Mark Brown         2012-04-04  3672  		substream.stream = SNDRV_PCM_STREAM_CAPTURE;
4a75aae1 Charles Keepax     2018-09-05  3673  		snd_soc_dapm_widget_for_each_source_path(w, path) {
4a75aae1 Charles Keepax     2018-09-05  3674  			source = path->source->priv;
4a75aae1 Charles Keepax     2018-09-05  3675  
9900a422 Kuninori Morimoto  2017-09-25  3676  			if (source->driver->ops->startup) {
4a75aae1 Charles Keepax     2018-09-05  3677  				ret = source->driver->ops->startup(&substream,
4a75aae1 Charles Keepax     2018-09-05  3678  								   source);
9b8ef9f6 Jeeja KP           2015-10-20  3679  				if (ret < 0) {
9b8ef9f6 Jeeja KP           2015-10-20  3680  					dev_err(source->dev,
4a75aae1 Charles Keepax     2018-09-05  3681  						"ASoC: startup() failed: %d\n",
4a75aae1 Charles Keepax     2018-09-05  3682  						ret);
9b8ef9f6 Jeeja KP           2015-10-20  3683  					goto out;
9b8ef9f6 Jeeja KP           2015-10-20  3684  				}
9b8ef9f6 Jeeja KP           2015-10-20  3685  				source->active++;
9b8ef9f6 Jeeja KP           2015-10-20  3686  			}
93e6958a Benoit Cousson     2014-07-08  3687  			ret = soc_dai_hw_params(&substream, params, source);
93e6958a Benoit Cousson     2014-07-08  3688  			if (ret < 0)
9747cec2 Mark Brown         2012-04-26  3689  				goto out;
4a75aae1 Charles Keepax     2018-09-05  3690  		}
c74184ed Mark Brown         2012-04-04  3691  
c74184ed Mark Brown         2012-04-04  3692  		substream.stream = SNDRV_PCM_STREAM_PLAYBACK;
4a75aae1 Charles Keepax     2018-09-05  3693  		snd_soc_dapm_widget_for_each_sink_path(w, path) {
4a75aae1 Charles Keepax     2018-09-05  3694  			sink = path->sink->priv;
4a75aae1 Charles Keepax     2018-09-05  3695  
9900a422 Kuninori Morimoto  2017-09-25  3696  			if (sink->driver->ops->startup) {
4a75aae1 Charles Keepax     2018-09-05  3697  				ret = sink->driver->ops->startup(&substream,
4a75aae1 Charles Keepax     2018-09-05  3698  								 sink);
9b8ef9f6 Jeeja KP           2015-10-20  3699  				if (ret < 0) {
9b8ef9f6 Jeeja KP           2015-10-20  3700  					dev_err(sink->dev,
4a75aae1 Charles Keepax     2018-09-05  3701  						"ASoC: startup() failed: %d\n",
4a75aae1 Charles Keepax     2018-09-05  3702  						ret);
9b8ef9f6 Jeeja KP           2015-10-20  3703  					goto out;
9b8ef9f6 Jeeja KP           2015-10-20  3704  				}
9b8ef9f6 Jeeja KP           2015-10-20  3705  				sink->active++;
9b8ef9f6 Jeeja KP           2015-10-20  3706  			}
93e6958a Benoit Cousson     2014-07-08  3707  			ret = soc_dai_hw_params(&substream, params, sink);
93e6958a Benoit Cousson     2014-07-08  3708  			if (ret < 0)
9747cec2 Mark Brown         2012-04-26  3709  				goto out;
4a75aae1 Charles Keepax     2018-09-05  3710  		}
c74184ed Mark Brown         2012-04-04  3711  		break;
c74184ed Mark Brown         2012-04-04  3712  
c74184ed Mark Brown         2012-04-04  3713  	case SND_SOC_DAPM_POST_PMU:
4a75aae1 Charles Keepax     2018-09-05  3714  		snd_soc_dapm_widget_for_each_sink_path(w, path) {
4a75aae1 Charles Keepax     2018-09-05  3715  			sink = path->sink->priv;
4a75aae1 Charles Keepax     2018-09-05  3716  
da18396f Mark Brown         2013-02-06  3717  			ret = snd_soc_dai_digital_mute(sink, 0,
da18396f Mark Brown         2013-02-06  3718  						       SNDRV_PCM_STREAM_PLAYBACK);
c74184ed Mark Brown         2012-04-04  3719  			if (ret != 0 && ret != -ENOTSUPP)
4a75aae1 Charles Keepax     2018-09-05  3720  				dev_warn(sink->dev,
4a75aae1 Charles Keepax     2018-09-05  3721  					 "ASoC: Failed to unmute: %d\n", ret);
9747cec2 Mark Brown         2012-04-26  3722  			ret = 0;
4a75aae1 Charles Keepax     2018-09-05  3723  		}
c74184ed Mark Brown         2012-04-04  3724  		break;
c74184ed Mark Brown         2012-04-04  3725  
c74184ed Mark Brown         2012-04-04  3726  	case SND_SOC_DAPM_PRE_PMD:
4a75aae1 Charles Keepax     2018-09-05  3727  		snd_soc_dapm_widget_for_each_sink_path(w, path) {
4a75aae1 Charles Keepax     2018-09-05  3728  			sink = path->sink->priv;
4a75aae1 Charles Keepax     2018-09-05  3729  
da18396f Mark Brown         2013-02-06  3730  			ret = snd_soc_dai_digital_mute(sink, 1,
da18396f Mark Brown         2013-02-06  3731  						       SNDRV_PCM_STREAM_PLAYBACK);
c74184ed Mark Brown         2012-04-04  3732  			if (ret != 0 && ret != -ENOTSUPP)
4a75aae1 Charles Keepax     2018-09-05  3733  				dev_warn(sink->dev,
4a75aae1 Charles Keepax     2018-09-05  3734  					 "ASoC: Failed to mute: %d\n", ret);
9747cec2 Mark Brown         2012-04-26  3735  			ret = 0;
4a75aae1 Charles Keepax     2018-09-05  3736  		}
4a75aae1 Charles Keepax     2018-09-05  3737  
4a75aae1 Charles Keepax     2018-09-05  3738  		snd_soc_dapm_widget_for_each_source_path(w, path) {
4a75aae1 Charles Keepax     2018-09-05  3739  			source = path->source->priv;
9b8ef9f6 Jeeja KP           2015-10-20  3740  
9b8ef9f6 Jeeja KP           2015-10-20  3741  			source->active--;
9900a422 Kuninori Morimoto  2017-09-25  3742  			if (source->driver->ops->shutdown) {
9b8ef9f6 Jeeja KP           2015-10-20  3743  				substream.stream = SNDRV_PCM_STREAM_CAPTURE;
4a75aae1 Charles Keepax     2018-09-05  3744  				source->driver->ops->shutdown(&substream,
4a75aae1 Charles Keepax     2018-09-05  3745  							      source);
4a75aae1 Charles Keepax     2018-09-05  3746  			}
9b8ef9f6 Jeeja KP           2015-10-20  3747  		}
9b8ef9f6 Jeeja KP           2015-10-20  3748  
4a75aae1 Charles Keepax     2018-09-05  3749  		snd_soc_dapm_widget_for_each_sink_path(w, path) {
4a75aae1 Charles Keepax     2018-09-05  3750  			sink = path->sink->priv;
4a75aae1 Charles Keepax     2018-09-05  3751  
9b8ef9f6 Jeeja KP           2015-10-20  3752  			sink->active--;
9900a422 Kuninori Morimoto  2017-09-25  3753  			if (sink->driver->ops->shutdown) {
9b8ef9f6 Jeeja KP           2015-10-20  3754  				substream.stream = SNDRV_PCM_STREAM_PLAYBACK;
9b8ef9f6 Jeeja KP           2015-10-20  3755  				sink->driver->ops->shutdown(&substream, sink);
9b8ef9f6 Jeeja KP           2015-10-20  3756  			}
4a75aae1 Charles Keepax     2018-09-05  3757  		}
c74184ed Mark Brown         2012-04-04  3758  		break;
c74184ed Mark Brown         2012-04-04  3759  
c74184ed Mark Brown         2012-04-04  3760  	default:
a6ed0608 Takashi Iwai       2013-11-06  3761  		WARN(1, "Unknown event %d\n", event);
75881df3 Sudip Mukherjee    2015-09-10  3762  		ret = -EINVAL;
c74184ed Mark Brown         2012-04-04  3763  	}
c74184ed Mark Brown         2012-04-04  3764  
9747cec2 Mark Brown         2012-04-26  3765  out:
8053f216 Nicolin Chen       2016-07-26  3766  	kfree(runtime);
9747cec2 Mark Brown         2012-04-26  3767  	kfree(params);
9747cec2 Mark Brown         2012-04-26 @3768  	return ret;
c74184ed Mark Brown         2012-04-04  3769  }
c74184ed Mark Brown         2012-04-04  3770  

:::::: The code at line 3768 was first introduced by commit
:::::: 9747cec21e2d55ee996249b01ec30dd32389c0ba ASoC: dapm: Move CODEC<->CODEC params off stack

:::::: TO: Mark Brown <broonie at opensource.wolfsonmicro.com>
:::::: CC: Mark Brown <broonie at opensource.wolfsonmicro.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 23780 bytes
Desc: not available
URL: <http://mailman.alsa-project.org/pipermail/alsa-devel/attachments/20180906/2cca3aaf/attachment-0001.bin>


More information about the Alsa-devel mailing list