qemu-e2k/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 Revert "audio/audio_pt_int: Clarify licensing" 2012-11-30 09:04:08 -06:00
audio_pt_int.h pthreads-based audio and miscellaneous audio clean-up (malc). 2008-01-14 04:24:29 +00:00
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 Windows Waveform Audio driver (no ADC support yet) 2009-10-10 01:18:24 +04:00
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 coreaudio: Fix OSStatus format specifier 2011-06-23 18:56:58 +04:00
dsound_template.h Fix NAME2/FIELD2 warnings 2009-01-22 22:09:55 +00:00
dsoundaudio.c audio: split sample conversion and volume mixing 2011-01-12 18:36:22 +03:00
esdaudio.c audio: Add some fall through comments 2012-02-25 18:16:11 +04:00
fmodaudio.c fmodaudio: Remove unused variable 'bits16' (reported by cppcheck) 2011-11-18 21:55:29 +04:00
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 audio: split sample conversion and volume mixing 2011-01-12 18:36:22 +03:00
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 Make audio violate POSIX less 2008-12-03 22:48:44 +00:00
sdlaudio.c Fix compilation warning due to missing header for sigaction (followup) 2011-06-08 09:04:29 +01:00
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