summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClemens Ladisch <clemens@ladisch.de>2009-07-13 11:30:22 (GMT)
committerTakashi Iwai <tiwai@suse.de>2009-07-15 09:56:06 (GMT)
commitf907ed94f993b0cd366c26eaa88b90c5454203ae (patch)
treed07aa3f3cf0cb1acf36b0fcf85a67b64f5b5226b
parent6847e154e3cd74fca6084124c097980a7634285a (diff)
downloadlinux-f907ed94f993b0cd366c26eaa88b90c5454203ae.tar.xz
seq-midi: always log message on output overrun
It turns out that the main cause of output buffer overruns is not slow drivers but applications that generate too many messages. Therefore, it makes more sense to make that error message always visible, and to rate-limit it. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/core/seq/seq_midi.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sound/core/seq/seq_midi.c b/sound/core/seq/seq_midi.c
index 4d26146..3810c52 100644
--- a/sound/core/seq/seq_midi.c
+++ b/sound/core/seq/seq_midi.c
@@ -120,7 +120,8 @@ static int dump_midi(struct snd_rawmidi_substream *substream, const char *buf, i
return -EINVAL;
runtime = substream->runtime;
if ((tmp = runtime->avail) < count) {
- snd_printd("warning, output event was lost (count = %i, available = %i)\n", count, tmp);
+ if (printk_ratelimit())
+ snd_printk(KERN_ERR "MIDI output buffer overrun\n");
return -ENOMEM;
}
if (snd_rawmidi_kernel_write(substream, buf, count) < count)