]> git.baikalelectronics.ru Git - kernel.git/commit
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)
committerTakashi Iwai <tiwai@suse.de>
Tue, 23 Jul 2019 10:07:22 +0000 (12:07 +0200)
commit334fbb952928012a6e4adc5e98fe853a2736d07a
treef8f5c775046810dc8e211453d10f8c3c0b42dbf4
parent978c82bd0e0857d85c58c2a8b75f6634ea47f105
ALSA: compress: Fix regression on compressed capture streams

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: 739d15fdb9e2 ("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>
include/sound/compress_driver.h
sound/core/compress_offload.c