Thread (32 messages) 32 messages, 7 authors, 2021-09-22

Re: [BUG 5.14] arm64/mm: dma memory mapping fails (in some cases)

From: Mike Rapoport <rppt@kernel.org>
Date: 2021-09-21 09:34:20
Also in: linux-mm, lkml

On Tue, Sep 21, 2021 at 10:20:07AM +0200, Christoph Hellwig wrote:
On Mon, Sep 20, 2021 at 11:57:58AM +0100, Catalin Marinas wrote:
quoted
quoted
As this WARN_ON(pfn_valid()) is only present in dma_map_resource() it's
probably safe to drop it entirely. 
I agree, we should drop it. IIUC dma_map_resource() does not create any
kernel mapping to cause problems with attribute aliasing. You'd need a
prior devm_ioremap_resource() if you want access to that range from the
CPU side. For arm64 at least, the latter ends up with a
pfn_is_map_memory() check.
It doesn't create any new mappings.  The only real issue is that it
does the wrong thing for RAM in a way that might not be noticed on
simple (x86/PC) platforms.
But if the mapping request was rejected by devm_ioremap_resource() because
of an attempt to map RAM, why we would get to dma_map_resource() at all? 


-- 
Sincerely yours,
Mike.

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help