git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vserver 2.0 rc7
[linux-2.6.git]
/
sound
/
isa
/
wavefront
/
wavefront_midi.c
diff --git
a/sound/isa/wavefront/wavefront_midi.c
b/sound/isa/wavefront/wavefront_midi.c
index
3918fbc
..
6f51d64
100644
(file)
--- a/
sound/isa/wavefront/wavefront_midi.c
+++ b/
sound/isa/wavefront/wavefront_midi.c
@@
-413,8
+413,8
@@
snd_wavefront_midi_interrupt (snd_wavefront_card_t *card)
return;
}
return;
}
+ spin_lock_irqsave (&midi->virtual, flags);
while (--max) {
while (--max) {
- spin_lock_irqsave (&midi->virtual, flags);
if (input_avail (midi)) {
byte = read_data (midi);
if (input_avail (midi)) {
byte = read_data (midi);
@@
-433,21
+433,17
@@
snd_wavefront_midi_interrupt (snd_wavefront_card_t *card)
}
if (substream == NULL) {
}
if (substream == NULL) {
- spin_unlock_irqrestore (&midi->virtual, flags);
continue;
}
if (midi->mode[mpu] & MPU401_MODE_INPUT_TRIGGER) {
continue;
}
if (midi->mode[mpu] & MPU401_MODE_INPUT_TRIGGER) {
- spin_unlock_irqrestore (&midi->virtual, flags);
snd_rawmidi_receive(substream, &byte, 1);
snd_rawmidi_receive(substream, &byte, 1);
- } else {
- spin_unlock_irqrestore (&midi->virtual, flags);
}
} else {
}
} else {
- spin_unlock_irqrestore (&midi->virtual, flags);
break;
}
}
break;
}
}
+ spin_unlock_irqrestore (&midi->virtual, flags);
snd_wavefront_midi_output_write(card);
}
snd_wavefront_midi_output_write(card);
}