]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit - include/sound/compress_driver.h
ALSA: compress: Fix regression on compressed capture streams
authorCharles Keepax <ckeepax@opensource.cirrus.com>
Mon, 22 Jul 2019 09:24:33 +0000 (10:24 +0100)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Tue, 17 Sep 2019 16:02:18 +0000 (18:02 +0200)
commitc53f4e9f370bb98ac6237a100f53503c1a1d0ec1
treeb02a35e6b6cbd720a47997b0273f1e381b28b196
parentfe7fc392806a496ca73cfdaeabc6fdfc995fb357
ALSA: compress: Fix regression on compressed capture streams

BugLink: https://bugs.launchpad.net/bugs/1840520
[ Upstream commit 4475f8c4ab7b248991a60d9c02808dbb813d6be8 ]

A previous fix to the stop handling on compressed capture streams causes
some knock on issues. The previous fix updated snd_compr_drain_notify to
set the state back to PREPARED for capture streams. This causes some
issues however as the handling for snd_compr_poll differs between the
two states and some user-space applications were relying on the poll
failing after the stream had been stopped.

To correct this regression whilst still fixing the original problem the
patch was addressing, update the capture handling to skip the PREPARED
state rather than skipping the SETUP state as it has done until now.

Fixes: 4f2ab5e1d13d ("ALSA: compress: Fix stop handling on compressed capture streams")
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Acked-by: Vinod Koul <vkoul@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
include/sound/compress_driver.h
sound/core/compress_offload.c