qemu/audio
Peter Maydell b28fb27b5e audio: Don't free hw resources until after hw backend is stopped
When stopping an audio voice, call the audio backend's fini
method before calling audio_pcm_hw_free_resources_ rather than
afterwards. This allows backends which use helper threads (like
pulseaudio) to terminate those threads before the conv_buf or
mix_buf are freed and avoids race conditions where the helper
may access a NULL pointer or freed memory.

Cc: qemu-stable@nongnu.org
Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1418406239-9838-1-git-send-email-peter.maydell@linaro.org
2014-12-22 23:12:25 +00:00
..
alsaaudio.c audio: Drop superfluous conditionals around g_free() 2014-06-13 12:34:54 +02:00
audio_int.h audio: Replace static functions in header file by macros, remove GCC_ATTR 2013-06-21 22:52:50 +04:00
audio_pt_int.c
audio_pt_int.h
audio_template.h audio: Don't free hw resources until after hw backend is stopped 2014-12-22 23:12:25 +00:00
audio_win_int.c remove some double-includes 2013-05-18 16:35:12 +04:00
audio_win_int.h
audio.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
audio.h misc: move include files to include/qemu/ 2012-12-19 08:32:39 +01:00
coreaudio.c
dsound_template.h
dsoundaudio.c
esdaudio.c
fmodaudio.c
Makefile.objs build: convert some obj-specific CFLAGS to use new foo.o-cflags syntax 2014-05-08 15:27:49 +02:00
mixeng_template.h audio/mixeng_template.h: fix inline declaration 2013-10-26 13:09:34 +04:00
mixeng.c audio: remove CONFIG_MIXEMU configure option 2013-09-24 10:29:34 +02:00
mixeng.h
noaudio.c aio / timers: Switch entire codebase to the new timer API 2013-08-22 19:14:24 +02:00
ossaudio.c audio: Drop superfluous conditionals around g_free() 2014-06-13 12:34:54 +02:00
paaudio.c audio: adjust pulse to 100Hz wakeup rate 2013-12-09 09:19:26 +01:00
rate_template.h
sdlaudio.c
spiceaudio.c audio: replace fprintf(stderr, ...) with error_report() in audio 2014-05-26 10:41:21 +04:00
wavaudio.c aio / timers: Switch entire codebase to the new timer API 2013-08-22 19:14:24 +02:00
wavcapture.c audio: replace fprintf(stderr, ...) with error_report() in audio 2014-05-26 10:41:21 +04:00
winwaveaudio.c softmmu: move include files to include/sysemu/ 2012-12-19 08:32:45 +01:00