On Wed, 2014-06-18 at 14:32 -0400, Joseph Salisbury wrote: > From: Sander Eikelenboom > > BugLink: http://bugs.launchpad.net/bugs/1319457 > > This (widely used) construction: > > if(printk_ratelimit()) > dev_dbg() > > Causes the ratelimiting to spam the kernel log with the "callbacks suppressed" > message below, even while the dev_dbg it is supposed to rate limit wouldn't > print anything because DEBUG is not defined for this device. > > [ 533.803964] retire_playback_urb: 852 callbacks suppressed > [ 538.807930] retire_playback_urb: 852 callbacks suppressed > [ 543.811897] retire_playback_urb: 852 callbacks suppressed > [ 548.815745] retire_playback_urb: 852 callbacks suppressed > [ 553.819826] retire_playback_urb: 852 callbacks suppressed > > So use dev_dbg_ratelimited() instead of this construction. > > Signed-off-by: Sander Eikelenboom > Signed-off-by: Takashi Iwai > (backported from commit b7a7723513dc89f83d6df13206df55d4dc26e825) > Signed-off-by: Joseph Salisbury It looks like you have combined the commit identified here with the preceding: commit a5065eb6da55b226661456e6a7435f605df98111 Author: Tim Gardner Date: Wed Apr 9 11:30:44 2014 -0600 ALSA: usb-audio: Suppress repetitive debug messages from retire_playback_urb() They should not be squashed together like this. Ben. > --- > sound/usb/pcm.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/sound/usb/pcm.c b/sound/usb/pcm.c > index ca3256d..ede4b92 100644 > --- a/sound/usb/pcm.c > +++ b/sound/usb/pcm.c > @@ -1488,7 +1488,8 @@ static void retire_playback_urb(struct snd_usb_substream *subs, > * on two reads of a counter updated every ms. > */ > if (abs(est_delay - subs->last_delay) * 1000 > runtime->rate * 2) > - snd_printk(KERN_DEBUG "delay: estimated %d, actual %d\n", > + dev_dbg_ratelimited(&subs->dev->dev, > + "delay: estimated %d, actual %d\n", > est_delay, subs->last_delay); > > if (!subs->running) { -- Ben Hutchings It's easier to fight for one's principles than to live up to them.