ALSA: usb-audio: Suppress repetitive debug messages from retire_playback_urb()
authorTim Gardner <tim.gardner@canonical.com>
Wed, 9 Apr 2014 17:30:44 +0000 (11:30 -0600)
committerTakashi Iwai <tiwai@suse.de>
Wed, 9 Apr 2014 19:07:38 +0000 (21:07 +0200)
BugLink: http://bugs.launchpad.net/bugs/1305133
Malfunctioning or slow devices can cause a flood of dmesg SPAM.

I've ignored checkpatch.pl complaints about the use of printk_ratelimit() in favour
of prior art in sound/usb/pcm.c.

WARNING: Prefer printk_ratelimited or pr_<level>_ratelimited to printk_ratelimit
+ if (printk_ratelimit() &&

Cc: Jaroslav Kysela <perex@perex.cz>
Cc: Takashi Iwai <tiwai@suse.de>
Cc: Eldad Zack <eldad@fogrefinery.com>
Cc: Daniel Mack <zonque@gmail.com>
Cc: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/pcm.c

index 49de5c1..131336d 100644 (file)
@@ -1501,7 +1501,8 @@ static void retire_playback_urb(struct snd_usb_substream *subs,
         * The error should be lower than 2ms since the estimate relies
         * on two reads of a counter updated every ms.
         */
-       if (abs(est_delay - subs->last_delay) * 1000 > runtime->rate * 2)
+       if (printk_ratelimit() &&
+           abs(est_delay - subs->last_delay) * 1000 > runtime->rate * 2)
                dev_dbg(&subs->dev->dev,
                        "delay: estimated %d, actual %d\n",
                        est_delay, subs->last_delay);