Re: [PATCH] sparc32: Page align size in arch_dma_alloc
From: Andreas Larsson
Date: Tue Sep 14 2021 - 04:51:59 EST
On 2021-09-14 08:17, Christoph Hellwig wrote:
Thanks. Can you take a look and test the two patches below on top of
your fix? A git tree is also available here:
http://git.infradead.org/users/hch/misc.git/shortlog/refs/heads/sparc32-generic-dma
In a quick test, this seems to work on LEON for code paths previously
going to arch_dma_alloc and arch_dma_free. However, this makes setting
up these DMA mappings to not go through sparc_dma_alloc_resource, and it
seems important that they do that on Sun systems. Hopefully, someone
with more knowledge about that could chime in here.
The added pgprot_dmacoherent is problematic as it sets SRMMU_PRIV, which
sets up kernel access only. This was fine for arch_dma_alloc that sets
up kernel accesses only, but for user space DMA mmap this would make
them kernel accessable only. Having no sparc-specific
pgprot_dmacoherent, keeping it to default to pgprot_noncached, is
probably better.
--
Andreas Larsson