Commit c7b2a444 authored by Vinod Koul's avatar Vinod Koul Committed by Mark Brown
Browse files

ASoC: Intel: Skylake: Fix substream dereference before check



Smatch warns that we dereferenced substream before check, so fix
this by initializing ebus after the check

sound/soc/intel/skylake/skl-pcm.c:802 skl_get_position()
        warn: variable dereferenced before check 'substream->runtime'

Reported by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: default avatarJeeja KP <jeeja.kp@intel.com>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent b4fe965f
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -807,7 +807,7 @@ static unsigned int skl_get_position(struct hdac_ext_stream *hstream,
{
	struct hdac_stream *hstr = hdac_stream(hstream);
	struct snd_pcm_substream *substream = hstr->substream;
	struct hdac_ext_bus *ebus = get_bus_ctx(substream);
	struct hdac_ext_bus *ebus;
	unsigned int pos;
	int delay;

@@ -818,6 +818,7 @@ static unsigned int skl_get_position(struct hdac_ext_stream *hstream,
		pos = 0;

	if (substream->runtime) {
		ebus = get_bus_ctx(substream);
		delay = skl_get_delay_from_lpib(ebus, hstream, pos)
						 + codec_delay;
		substream->runtime->delay += delay;