[alsa-devel] [RFC PATCH 06/40] soundwire: intel: prevent possible dereference in hw_params

Cezary Rojewski cezary.rojewski at intel.com
Fri Jul 26 11:45:04 CEST 2019


On 2019-07-26 01:39, Pierre-Louis Bossart wrote:
> This should not happen in production systems but we should test for
> all callback arguments before invoking the config_stream callback.
> 
> Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com>
> ---
>   drivers/soundwire/intel.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/soundwire/intel.c b/drivers/soundwire/intel.c
> index 68832e613b1e..497879dd9c0d 100644
> --- a/drivers/soundwire/intel.c
> +++ b/drivers/soundwire/intel.c
> @@ -509,7 +509,7 @@ static int intel_config_stream(struct sdw_intel *sdw,
>   			       struct snd_soc_dai *dai,
>   			       struct snd_pcm_hw_params *hw_params, int link_id)
>   {
> -	if (sdw->res->ops && sdw->res->ops->config_stream)
> +	if (sdw->res->ops && sdw->res->ops->config_stream && sdw->res->arg)
>   		return sdw->res->ops->config_stream(sdw->res->arg,
>   				substream, dai, hw_params, link_id);
>   
> 

Hmm, declaring local for sdw->res should prove useful here after 
addition of 4th sdw->res dereference.


More information about the Alsa-devel mailing list