linux/sound/core
Clemens Ladisch b7fe750fcc sound: rawmidi: fix MIDI device O_APPEND error handling
Commit 9a1b64caac in 2.6.30 broke the
error handling code in rawmidi_open_priv().

If only the output substream of a RawMIDI device has been opened and
if this device is then opened with O_RDWR | O_APPEND and if the
initialization of the input substream fails (either because of low
memory or because the device driver's open callback fails), then the
runtime structure of the already open output substream will be freed
and all following writes through the first handle will cause
snd_rawmidi_write() to use the NULL runtime pointer.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-10 16:22:59 +01:00
..
oss Merge branch 'topic/oss' into for-linus 2009-09-10 15:32:58 +02:00
seq Merge branch 'topic/midi' into for-linus 2009-09-10 15:32:56 +02:00
control.c sound: snd_ctl_remove_user_ctl: prevent removal of kernel controls 2009-08-17 12:48:21 +02:00
control_compat.c
device.c
hrtimer.c
hwdep.c ALSA: hwdep - Make open callback optional 2009-02-05 09:10:20 +01:00
hwdep_compat.c
info.c Merge branch 'topic/dummy' into for-linus 2009-09-10 15:32:51 +02:00
info_oss.c
init.c ALSA: Remove struct snd_monitor_file from public sound/core.h 2009-09-07 15:50:18 +02:00
isadma.c
jack.c ALSA: use card device as parent for jack input-devices 2009-06-10 19:50:33 +02:00
Kconfig ALSA: Fix SG-buffer DMA with non-coherent architectures 2009-07-08 14:20:20 +02:00
Makefile ALSA: Fix SG-buffer DMA with non-coherent architectures 2009-07-08 14:20:20 +02:00
memalloc.c ALSA: Fix SG-buffer DMA with non-coherent architectures 2009-07-08 14:20:20 +02:00
memory.c
misc.c ALSA: Add debug module option 2009-08-27 17:42:08 +02:00
pcm.c ALSA: sound: Move dereference after NULL test and drop unnecessary NULL tests 2009-10-30 12:01:27 +01:00
pcm_compat.c ALSA: sound/core: use memdup_user() 2009-04-14 12:39:12 +02:00
pcm_lib.c Merge branch 'topic/pcm-drain-nonblock' into for-linus 2009-09-10 15:33:00 +02:00
pcm_memory.c ALSA: Fix SG-buffer DMA with non-coherent architectures 2009-07-08 14:20:20 +02:00
pcm_misc.c
pcm_native.c const: mark struct vm_struct_operations 2009-09-27 11:39:25 -07:00
pcm_timer.c ALSA: Remove unneeded snd_pcm_substream.timer_lock 2009-03-09 14:02:00 +01:00
rawmidi.c sound: rawmidi: fix MIDI device O_APPEND error handling 2009-11-10 16:22:59 +01:00
rawmidi_compat.c
rtctimer.c
sgbuf.c ALSA: Fix vunmap and free order in snd_free_sgbuf_pages() 2009-03-18 08:04:01 +01:00
sound.c
sound_oss.c
timer.c ALSA: sound/core: use memdup_user() 2009-04-14 12:39:12 +02:00
timer_compat.c
vmaster.c ALSA: Add new TLV types for dBwith min/max 2009-06-17 10:56:53 +02:00