wcd934x: Fix NULL pointer dereference for wcd9xxx pointer

During bind/unbind of ngd_msm_ctrl power_gate_digital_core
is called. Simultaneously tavil_remove is also called
making tavil pointer as NULL.  Check for tavil as not NULL
at the start of function to avoid NULL pointer dereference.

CRs-Fixed: 2267796
Change-Id: I6fc476cc8b706b556836f30838983de0f34d4fc1
Signed-off-by: Vatsal Bucha <vbucha@codeaurora.org>
这个提交包含在:
Vatsal Bucha
2018-07-03 14:05:53 +05:30
提交者 Gerrit - the friendly Code Review server
父节点 ffb86ea061
当前提交 8d8602219b

查看文件

@@ -8939,6 +8939,8 @@ static struct snd_soc_dai_driver tavil_i2s_dai[] = {
static void tavil_codec_power_gate_digital_core(struct tavil_priv *tavil) static void tavil_codec_power_gate_digital_core(struct tavil_priv *tavil)
{ {
if (!tavil)
return;
mutex_lock(&tavil->power_lock); mutex_lock(&tavil->power_lock);
dev_dbg(tavil->dev, "%s: Entering power gating function, %d\n", dev_dbg(tavil->dev, "%s: Entering power gating function, %d\n",
__func__, tavil->power_active_ref); __func__, tavil->power_active_ref);