[PATCH] dma-debug: Remove warning in dma_debug_entry
yf.wang at mediatek.com
yf.wang at mediatek.com
Sat Jul 30 01:56:55 PDT 2022
From: Yunfei Wang <yf.wang at mediatek.com>
The same physical address can be mapped multiple times, and it is not
required to have attributes such as DMA_ATTR_SKIP_CPU_SYNC, but
dma_debug_entry will report an warning if active_cacheline_insert
returns -EEXIST, which can cause a lot of trouble.
For example, if two dma engine share the same dma-buf, the two dma
engine drivers will call the DMA API to map their own dma address
respectively, which is normal follow, but dma_debug_entry will
report an warning.
In addition, if active_cacheline_insert returns -EEXIST, the
active_cacheline_inc_overlap function already has the logic to
check overlapping mappings counter, if it exceeded
ACTIVE_CACHELINE_MAX_OVERLAP overlapping mappings, it already
has a warning.
And also, if warning as panic is turned on, it will cause KE.
So, dma_debug_entry does not need report warning.
Signed-off-by: Yunfei Wang <yf.wang at mediatek.com>
---
kernel/dma/debug.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/kernel/dma/debug.c b/kernel/dma/debug.c
index 2caafd13f8aa..ad731f7858c9 100644
--- a/kernel/dma/debug.c
+++ b/kernel/dma/debug.c
@@ -566,9 +566,6 @@ static void add_dma_entry(struct dma_debug_entry *entry, unsigned long attrs)
if (rc == -ENOMEM) {
pr_err_once("cacheline tracking ENOMEM, dma-debug disabled\n");
global_disable = true;
- } else if (rc == -EEXIST && !(attrs & DMA_ATTR_SKIP_CPU_SYNC)) {
- err_printk(entry->dev, entry,
- "cacheline tracking EEXIST, overlapping mappings aren't supported\n");
}
}
--
2.18.0
More information about the Linux-mediatek
mailing list