ALSA: hda_intel: ratelimit "spurious response" message
authorJoe Perches <joe@perches.com>
Thu, 7 Nov 2013 19:55:15 +0000 (11:55 -0800)
committerTakashi Iwai <tiwai@suse.de>
Thu, 7 Nov 2013 20:22:23 +0000 (21:22 +0100)
dmesg here has a 100+ consecutive lines of:

[ 1464.219446] hda-intel 0000:00:14.2: spurious response 0x0:0x0, last cmd=0x170500
[ 1464.219451] hda-intel 0000:00:14.2: spurious response 0x0:0x0, last cmd=0x170500
[ 1464.219454] hda-intel 0000:00:14.2: spurious response 0x0:0x0, last cmd=0x170500
...

Ratelimit the message to reduce the dmesg log noise.

Coalesce the format while at it.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_intel.c

index 17f4aa8cddd5ceffdfbba20f6dd94f2b46a01db1..7a09404579a73ac729ad437c358f38ac3b2b807b 100644 (file)
@@ -914,12 +914,12 @@ static void azx_update_rirb(struct azx *chip)
                        chip->rirb.res[addr] = res;
                        smp_wmb();
                        chip->rirb.cmds[addr]--;
-               } else
-                       snd_printk(KERN_ERR SFX "%s: spurious response %#x:%#x, "
-                                  "last cmd=%#08x\n",
+               } else if (printk_ratelimit()) {
+                       snd_printk(KERN_ERR SFX "%s: spurious response %#x:%#x, last cmd=%#08x\n",
                                   pci_name(chip->pci),
                                   res, res_ex,
                                   chip->last_cmd[addr]);
+               }
        }
 }