dma-debug: prevent an error message from causing runtime problems

Bugzilla: https://bugzilla.redhat.com/2004348
Upstream Status: kernel/git/torvalds/linux.git

commit 510e1a724ab1bf38150be2c1acabb303f98d0047
Author: Hamza Mahfooz <someguy@effective-light.com>
Date:   Fri Sep 10 19:53:37 2021 -0400

    dma-debug: prevent an error message from causing runtime problems

    For some drivers, that use the DMA API. This error message can be reached
    several millions of times per second, causing spam to the kernel's printk
    buffer and bringing the CPU usage up to 100% (so, it should be rate
    limited). However, since there is at least one driver that is in the
    mainline and suffers from the error condition, it is more useful to
    err_printk() here instead of just rate limiting the error message (in hopes
    that it will make it easier for other drivers that suffer from this issue
    to be spotted).

    Link: https://lkml.kernel.org/r/fd67fbac-64bf-f0ea-01e1-5938ccfab9d0@arm.com
    Reported-by: Jeremy Linton <jeremy.linton@arm.com>
    Signed-off-by: Hamza Mahfooz <someguy@effective-light.com>
    Signed-off-by: Christoph Hellwig <hch@lst.de>

(cherry picked from commit 510e1a724ab1bf38150be2c1acabb303f98d0047)
Cc: Donald Dutile <ddutile@redhat.com>
Signed-off-by: Jerry Snitselaar <jsnitsel@redhat.com>
This commit is contained in:
Jerry Snitselaar 2021-10-24 15:32:19 -07:00
parent d60718ebd7
commit d48c63f8d2
1 changed files with 2 additions and 1 deletions

View File

@ -567,7 +567,8 @@ static void add_dma_entry(struct dma_debug_entry *entry)
pr_err("cacheline tracking ENOMEM, dma-debug disabled\n");
global_disable = true;
} else if (rc == -EEXIST) {
pr_err("cacheline tracking EEXIST, overlapping mappings aren't supported\n");
err_printk(entry->dev, entry,
"cacheline tracking EEXIST, overlapping mappings aren't supported\n");
}
}