On Thu, Feb 09, 2023 at 09:33:06AM +0000, JiaJie Ho wrote: > > The DMA can only support 32-bit addressing. > So, I am copying everything in case kernel allocated memory region >32-bit for a user app. Does your hardware support scatter-and-gather? If so you should at least allocate individual pages rather than one contiguous buffer. Then you can allocate them on-demand rather than before-hand. It would also be nice to not do the copy if the input you were given was in low memory (and contiguous if your hardware doesn't do SG). Thanks, -- Email: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt