linux-hardened/sound/soc
Takashi Iwai 2fc995a87f ASoC: intel: Fix crash at suspend/resume without card registration
When ASoC Intel SST Medfield driver is probed but without codec / card
assigned, it causes an Oops and freezes the kernel at suspend/resume,

 PM: Suspending system (freeze)
 Suspending console(s) (use no_console_suspend to debug)
 BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
 IP: [<ffffffffc09d9409>] sst_soc_prepare+0x19/0xa0 [snd_soc_sst_mfld_platform]
 Oops: 0000 [#1] PREEMPT SMP
 CPU: 0 PID: 1552 Comm: systemd-sleep Tainted: G W 4.9.0-rc6-1.g5f5c2ad-default #1
 Call Trace:
  [<ffffffffb45318f9>] dpm_prepare+0x209/0x460
  [<ffffffffb4531b61>] dpm_suspend_start+0x11/0x60
  [<ffffffffb40d3cc2>] suspend_devices_and_enter+0xb2/0x710
  [<ffffffffb40d462e>] pm_suspend+0x30e/0x390
  [<ffffffffb40d2eba>] state_store+0x8a/0x90
  [<ffffffffb43c670f>] kobj_attr_store+0xf/0x20
  [<ffffffffb42b0d97>] sysfs_kf_write+0x37/0x40
  [<ffffffffb42b02bc>] kernfs_fop_write+0x11c/0x1b0
  [<ffffffffb422be68>] __vfs_write+0x28/0x140
  [<ffffffffb43728a8>] ? apparmor_file_permission+0x18/0x20
  [<ffffffffb433b2ab>] ? security_file_permission+0x3b/0xc0
  [<ffffffffb422d095>] vfs_write+0xb5/0x1a0
  [<ffffffffb422e3d6>] SyS_write+0x46/0xa0
  [<ffffffffb4719fbb>] entry_SYSCALL_64_fastpath+0x1e/0xad

Add proper NULL checks in the PM code of mdfld driver.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Vinod Koul <vinod.koul@intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: <stable@vger.kernel.org>
2016-11-30 17:58:53 +00:00
..
adi
amd ASoC: constify snd_pcm_ops structures 2016-09-12 20:04:09 +01:00
atmel Merge remote-tracking branches 'asoc/topic/ac97', 'asoc/topic/ak4104', 'asoc/topic/arizona', 'asoc/topic/atmel' and 'asoc/topic/codec-component' into asoc-next 2016-09-29 12:44:07 -07:00
au1x
bcm
blackfin
cirrus
codecs Merge remote-tracking branches 'asoc/topic/tpa6130a2', 'asoc/topic/ux500', 'asoc/topic/wm8960', 'asoc/topic/wm8962' and 'asoc/topic/wm8991' into asoc-next 2016-09-29 12:44:49 -07:00
davinci ASoC: davinci-mcasp: off-by-one in davinci_mcasp_hw_rule_format() 2016-09-01 20:56:30 +01:00
dwc
fsl Merge remote-tracking branches 'asoc/topic/dwc', 'asoc/topic/fsl', 'asoc/topic/gpio-chip' and 'asoc/topic/hdmi' into asoc-next 2016-09-29 12:44:24 -07:00
generic Merge remote-tracking branches 'asoc/topic/sgtl5000', 'asoc/topic/simple', 'asoc/topic/stac9766', 'asoc/topic/sti' and 'asoc/topic/sunxi' into asoc-next 2016-09-29 12:44:41 -07:00
img
intel ASoC: intel: Fix crash at suspend/resume without card registration 2016-11-30 17:58:53 +00:00
jz4740
kirkwood ASoC: constify snd_pcm_ops structures 2016-09-12 20:04:09 +01:00
mediatek
mxs
nuc900
omap ASoC: omap-pcm: off-by-one in 'omap_pcm_limit_supported_formats' 2016-09-01 20:56:16 +01:00
pxa
qcom Merge remote-tracking branches 'asoc/topic/qcom', 'asoc/topic/rockchip' and 'asoc/topic/rt5616' into asoc-next 2016-09-29 12:44:34 -07:00
rockchip ASoC: rk3399_gru_sound: fix recording pop at first attempt 2016-09-24 19:11:04 +01:00
samsung Merge remote-tracking branches 'asoc/topic/rt5659', 'asoc/topic/rt5660', 'asoc/topic/rt5677' and 'asoc/topic/samsung' into asoc-next 2016-09-29 12:44:37 -07:00
sh Merge remote-tracking branches 'asoc/topic/nau8810', 'asoc/topic/of-bool', 'asoc/topic/omap' and 'asoc/topic/platform-drvdata' into asoc-next 2016-09-29 12:44:31 -07:00
sirf
spear
sti ASoC: sti: fix missing clk_disable_unprepare() on error in uni_player_start() 2016-09-19 11:25:31 +01:00
sunxi ASoC: sun4i-codec: Rename sun4i_codec_widgets for consistency 2016-09-26 09:32:32 -07:00
tegra ASoC: tegra_rt5640: Correct a copy and paste typo in the comments 2016-09-01 21:06:31 +01:00
txx9
ux500 ASoC: ux500: fix spelling mistake "Unsopported" -> "Unsupported" 2016-09-03 11:59:37 +01:00
xtensa
zte
Kconfig
Makefile
soc-ac97.c ASoC: ac97: constify gpio_chip structures 2016-09-12 20:04:28 +01:00
soc-cache.c
soc-compress.c
soc-core.c Merge remote-tracking branches 'asoc/topic/nau8810', 'asoc/topic/of-bool', 'asoc/topic/omap' and 'asoc/topic/platform-drvdata' into asoc-next 2016-09-29 12:44:31 -07:00
soc-dapm.c Merge remote-tracking branch 'asoc/topic/dapm' into asoc-next 2016-09-29 12:43:58 -07:00
soc-devres.c
soc-generic-dmaengine-pcm.c
soc-io.c
soc-jack.c
soc-ops.c ASoC: core: fix shift used for second item in snd_soc_get_enum_double 2016-09-01 20:58:05 +01:00
soc-pcm.c ASoC: dpcm: print dai_link name of BE other than FE. 2016-09-26 09:43:34 -07:00
soc-topology.c
soc-utils.c ASoC: constify snd_pcm_ops structures 2016-09-12 20:04:09 +01:00