[alsa-devel] [PATCH 0/9] ALSA: compress offfload fixes
vinod.koul at intel.com
Tue Aug 27 08:40:30 CEST 2013
Here is the patch series which fixes various issues being reported by users (out
of tree sadly)
The first three and and last one are marked to stable as would like these to be
fixed in older kernels as well. It would be good if you can send them as fixes
to linus for 3.11.
Rest can go in the merge window
- using lock for all operation was a very bad idead. This is bad as some of the
ioctls like drain, partial drain can be time consuming and thus prevent any
other operation while these are ongoing like Pause, Stop or timestamp query, so
fix this be removing bunch of ioctls not to use device lock.
- Now we dont have lock for pointer updates so this maybe racy, so use lock
for doing lowest level calculation.
- As disscused on our sample rate problem, lets move to use rate values and I
will fix the lib too. Since the driver are not upstream the impact of this
change wont be huge.
- Plus few fix like use snprintf, state chacks for pause, write etc..
Vinod Koul (9):
ALSA: Compress - dont use lock for all ioctls
ALSA: compress: use mutex in drain
ASoC: compress: dont aquire lock for draining states
ALSA: compress: use snprint instread of sprintf
ALSA: compres: wakeup the poll thread on pause
ALSA: compress: dont write when stream is paused
ALSA: compress: allow write when stream is setup
ALSA: compress: call pointer callback and updates under a lock
ALSA: compress: use rate values for passing sampling rates
include/sound/compress_driver.h | 2 +
include/uapi/sound/compress_offload.h | 2 +-
sound/core/compress_offload.c | 140 +++++++++++++++++++++++++-------
sound/soc/soc-compress.c | 10 +++
4 files changed, 122 insertions(+), 32 deletions(-)
More information about the Alsa-devel