aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHamza Mahfooz <[email protected]>2021-09-10 19:53:37 -0400
committerChristoph Hellwig <[email protected]>2021-09-13 18:29:24 +0200
commit510e1a724ab1bf38150be2c1acabb303f98d0047 (patch)
tree98a976c8f17734b3345cae69b8f85424f8595066
parenta61cb6017df0a9be072a35259e6e9ae7aa0ef6b3 (diff)
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/[email protected] Reported-by: Jeremy Linton <[email protected]> Signed-off-by: Hamza Mahfooz <[email protected]> Signed-off-by: Christoph Hellwig <[email protected]>
-rw-r--r--kernel/dma/debug.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/kernel/dma/debug.c b/kernel/dma/debug.c
index 6c90c69e5311..95445bd6eb72 100644
--- a/kernel/dma/debug.c
+++ b/kernel/dma/debug.c
@@ -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");
}
}