ALSA: emu10k1: Rate-limit error messages about page errors

The error messages at sanity checks of memory pages tend to repeat too
many times once when it hits, and without the rate limit, it may flood
and become unreadable.  Replace such messages with the *_ratelimited()
variant.

Bugzilla: http://bugzilla.opensuse.org/show_bug.cgi?id=1093027
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Iwai 2018-05-17 20:02:23 +02:00
parent bf8b47fe20
commit 11d42c8103

View File

@ -248,13 +248,13 @@ search_empty(struct snd_emu10k1 *emu, int size)
static int is_valid_page(struct snd_emu10k1 *emu, dma_addr_t addr) static int is_valid_page(struct snd_emu10k1 *emu, dma_addr_t addr)
{ {
if (addr & ~emu->dma_mask) { if (addr & ~emu->dma_mask) {
dev_err(emu->card->dev, dev_err_ratelimited(emu->card->dev,
"max memory size is 0x%lx (addr = 0x%lx)!!\n", "max memory size is 0x%lx (addr = 0x%lx)!!\n",
emu->dma_mask, (unsigned long)addr); emu->dma_mask, (unsigned long)addr);
return 0; return 0;
} }
if (addr & (EMUPAGESIZE-1)) { if (addr & (EMUPAGESIZE-1)) {
dev_err(emu->card->dev, "page is not aligned\n"); dev_err_ratelimited(emu->card->dev, "page is not aligned\n");
return 0; return 0;
} }
return 1; return 1;
@ -345,7 +345,7 @@ snd_emu10k1_alloc_pages(struct snd_emu10k1 *emu, struct snd_pcm_substream *subst
else else
addr = snd_pcm_sgbuf_get_addr(substream, ofs); addr = snd_pcm_sgbuf_get_addr(substream, ofs);
if (! is_valid_page(emu, addr)) { if (! is_valid_page(emu, addr)) {
dev_err(emu->card->dev, dev_err_ratelimited(emu->card->dev,
"emu: failure page = %d\n", idx); "emu: failure page = %d\n", idx);
mutex_unlock(&hdr->block_mutex); mutex_unlock(&hdr->block_mutex);
return NULL; return NULL;