linux/sound/soc
Takashi Iwai 455c5653f5
ASoC: sti: Fix deadlock via snd_pcm_stop_xrun() call
This is essentially a revert of the commit dc865fb9e7 ("ASoC: sti:
Use snd_pcm_stop_xrun() helper"), which converted the manual
snd_pcm_stop() calls with snd_pcm_stop_xrun().

The commit above introduced a deadlock as snd_pcm_stop_xrun() itself
takes the PCM stream lock while the caller already holds it.  Since
the conversion was done only for consistency reason and the open-call
with snd_pcm_stop() to the XRUN state is a correct usage, let's revert
the commit back as the fix.

Fixes: dc865fb9e7 ("ASoC: sti: Use snd_pcm_stop_xrun() helper")
Reported-by: Daniel Palmer <daniel@0x0f.com>
Cc: Arnaud POULIQUEN <arnaud.pouliquen@st.com>
Cc: <stable@vger.kernel.org>
Link: https://lore.kernel.org/r/20220315091319.3351522-1-daniel@0x0f.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Reviewed-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Link: https://lore.kernel.org/r/20220315164158.19804-1-tiwai@suse.de
Signed-off-by: Mark Brown <broonie@kernel.org>
2022-03-16 16:39:28 +00:00
..
adi
amd ASoC: amd: Fix reference to PCM buffer address 2022-03-16 16:39:27 +00:00
atmel ASoC: atmel: Fix error handling in sam9x5_wm8731_driver_probe 2022-03-16 16:39:19 +00:00
au1x ASoC: au1x: Convert to modern terminology for DAI clocking 2021-09-16 14:11:37 +01:00
bcm ASoC: bcm: Use platform_get_irq() to get the interrupt 2021-12-21 18:05:43 +00:00
cirrus ARM: SoC drivers for 5.16 2021-11-03 17:00:52 -07:00
codecs ASoC: codecs: wcd934x: Add missing of_node_put() in wcd934x_codec_parse_data 2022-03-16 16:39:26 +00:00
dwc ASoC: dwc-i2s: Handle errors for clk_enable 2022-03-02 13:45:24 +00:00
fsl ASoC: imx-es8328: Fix error return code in imx_es8328_probe() 2022-03-10 12:17:52 +00:00
generic ASoC: simple-card-utils: Don't reset clock of active DAI 2022-03-11 13:42:29 +00:00
hisilicon
img ASoC: img: Use dev_err_probe() helper 2021-12-20 12:47:16 +00:00
intel ASoC: SOF/Intel: small fixes and updates for 5.18 2022-03-11 20:21:11 +00:00
jz4740
kirkwood ASoC: kirkwood: Fix reference to PCM buffer address 2021-07-30 17:20:51 +01:00
mediatek ASoC: mediatek: mt8195: Fix error handling in mt8195_mt6359_rt1019_rt5682_dev_probe 2022-03-16 16:39:25 +00:00
meson ASoC: Merge fixes 2021-12-31 13:23:28 +00:00
mxs ASoC: mxs: Fix error handling in mxs_sgtl5000_probe 2022-03-08 13:41:15 +00:00
pxa ALSA: pxa2xx: Use managed PCM buffer allocation 2021-08-04 08:08:21 +02:00
qcom ASoC: qcom: fix Kconfig for SC7280 2022-03-09 17:35:00 +00:00
rockchip ASoC: rockchip: Fix PM usage reference of rockchip_i2s_tdm_resume 2022-03-16 16:39:18 +00:00
samsung ASoC: samsung: i2s: check the return value of kstrdup() 2022-03-16 16:39:17 +00:00
sh ASoC: fsi: Add check for clk_enable 2022-03-07 13:14:56 +00:00
sof Make the SOF pcm_hw_params DSP op IPC agnostic 2022-03-11 20:21:12 +00:00
spear
sprd ASoC: sprd: Use managed buffer allocation 2021-08-04 08:10:27 +02:00
sti ASoC: sti: Fix deadlock via snd_pcm_stop_xrun() call 2022-03-16 16:39:28 +00:00
stm ASoC: stm: Use dev_err_probe() helper 2021-12-20 12:47:23 +00:00
sunxi ASoC: sun4i-i2s: Add support for the R329/D1 variant 2022-02-03 11:30:57 +00:00
tegra ASoC: tegra20: spdif: make const array rates static 2022-02-15 12:52:44 +00:00
ti ASoC: ti: Fix spelling mistake "cant" -> "can't" 2022-03-16 16:39:21 +00:00
uniphier ASoC: uniphier: drop selecting non-existing SND_SOC_UNIPHIER_AIO_DMA 2021-11-25 11:54:30 +00:00
ux500 ASoC: ux500: mop500: Constify static snd_soc_ops 2021-09-29 13:06:38 +01:00
xilinx ASoC: xilinx: xlnx_i2s: Handle sysclk setting 2022-01-24 19:45:38 +00:00
xtensa
Kconfig ASoC: topology: Select SND_DYNAMIC_MINORS 2021-07-27 13:13:04 +01:00
Makefile
soc-ac97.c ASoC: soc-ac97: cleanup cppcheck warning 2021-08-16 13:29:36 +01:00
soc-acpi.c ASoC: soc-acpi: Set mach->id field on comp_ids matches 2021-11-22 15:40:01 +00:00
soc-card.c
soc-component.c ASoC: soc-component: add snd_soc_pcm_component_delay() 2021-11-29 12:19:41 +00:00
soc-compress.c ASoC: soc-compress: Change the check for codec_dai 2022-03-14 08:29:11 +00:00
soc-core.c ASoC: Export DAI register and widget ctor and dctor functions 2022-03-11 16:23:53 +00:00
soc-dai.c ASoC: soc-dai: update snd_soc_dai_delay() to snd_soc_pcm_dai_delay() 2021-11-29 12:19:40 +00:00
soc-dapm.c ASoC: Export DAI register and widget ctor and dctor functions 2022-03-11 16:23:53 +00:00
soc-devres.c
soc-generic-dmaengine-pcm.c ASoC: dmaengine: do not use a NULL prepare_slave_config() callback 2022-03-08 13:38:56 +00:00
soc-jack.c ASoC: soc-jack: cleanup cppcheck warning for CONFIG_GPIOLIB 2021-08-16 13:29:34 +01:00
soc-link.c
soc-ops.c ASoC: soc-ops: cleanup cppcheck warning at snd_soc_put_xr_sx() 2021-08-03 18:27:14 +01:00
soc-pcm.c ASoC: soc-pcm: fix BE handling of PAUSE_RELEASE 2021-12-14 17:15:48 +00:00
soc-topology-test.c
soc-topology.c ASoC: topology: Optimize soc_tplg_dapm_graph_elems_load behavior 2022-01-24 13:31:23 +00:00
soc-utils.c ASoC: Stop dummy from overriding hwparams 2021-10-29 16:49:45 +01:00