From: Colin Ian King colin.king@canonical.com
ebus is being NULL checked however it is being dereferenced earlier on the assignment bus = ebus_to_hbus(ebus). Fix this by moving the assignment to after the NULL check on ebus to avoid a NULL pointer dereference error.
Fixes: c5a76a246989c8 ("ASoC: Intel: Skylake: Add shutdown callback") Signed-off-by: Colin Ian King colin.king@canonical.com --- sound/soc/intel/skylake/skl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/sound/soc/intel/skylake/skl.c b/sound/soc/intel/skylake/skl.c index 0c57d4eaae3a..21369f60fbaa 100644 --- a/sound/soc/intel/skylake/skl.c +++ b/sound/soc/intel/skylake/skl.c @@ -818,7 +818,7 @@ static int skl_probe(struct pci_dev *pci, static void skl_shutdown(struct pci_dev *pci) { struct hdac_ext_bus *ebus = pci_get_drvdata(pci); - struct hdac_bus *bus = ebus_to_hbus(ebus); + struct hdac_bus *bus; struct hdac_stream *s; struct hdac_ext_stream *stream; struct skl *skl; @@ -826,6 +826,7 @@ static void skl_shutdown(struct pci_dev *pci) if (ebus == NULL) return;
+ bus = ebus_to_hbus(ebus); skl = ebus_to_skl(ebus);
if (skl->init_failed)