[for-5.8] dma-pool: decouple DMA_REMAP from DMA_COHERENT_POOL
diff mbox series

Message ID alpine.DEB.2.22.394.2006110025250.13899@chino.kir.corp.google.com
State New
Headers show
Series
  • [for-5.8] dma-pool: decouple DMA_REMAP from DMA_COHERENT_POOL
Related show

Commit Message

David Rientjes June 11, 2020, 7:25 a.m. UTC
DMA_REMAP is an unnecessary requirement for AMD SEV, which requires 
DMA_COHERENT_POOL, so avoid selecting it when it is otherwise unnecessary.  

The only other requirement for DMA coherent pools is DMA_DIRECT_REMAP, so 
ensure that properly selects the config option when needed.

Fixes: 82fef0ad811f ("x86/mm: unencrypted non-blocking DMA allocations use 
coherent pools")
Suggested-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David Rientjes <rientjes@google.com>
---
 kernel/dma/Kconfig | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

Comments

Alex Xu (Hello71) June 11, 2020, 2:49 p.m. UTC | #1
Excerpts from David Rientjes's message of June 11, 2020 3:25 am:
> DMA_REMAP is an unnecessary requirement for AMD SEV, which requires 
> DMA_COHERENT_POOL, so avoid selecting it when it is otherwise unnecessary.  
> 
> The only other requirement for DMA coherent pools is DMA_DIRECT_REMAP, so 
> ensure that properly selects the config option when needed.
> 
> Fixes: 82fef0ad811f ("x86/mm: unencrypted non-blocking DMA allocations use 
> coherent pools")
> Suggested-by: Christoph Hellwig <hch@lst.de>
> Signed-off-by: David Rientjes <rientjes@google.com>
> ---
>  kernel/dma/Kconfig | 10 +++++-----
>  1 file changed, 5 insertions(+), 5 deletions(-)
> 

Works for me with SME on or off with af7b480103, and with SME off in 
abfbb29297. There is some regression with amdgpu and SME between those 
two points, I need to check that out too. I haven't tested either before 
or after with SEV (which I'm not even sure my system supports). 
Regardless, this is a definite improvement.

Tested-by: Alex Xu (Hello71) <alex_y_xu@yahoo.ca>

Thanks,
Alex.
Christoph Hellwig June 15, 2020, 6:36 a.m. UTC | #2
Thanks,

applied, and will be pushed to Linus soon.

Patch
diff mbox series

diff --git a/kernel/dma/Kconfig b/kernel/dma/Kconfig
--- a/kernel/dma/Kconfig
+++ b/kernel/dma/Kconfig
@@ -73,18 +73,18 @@  config SWIOTLB
 config DMA_NONCOHERENT_MMAP
 	bool
 
+config DMA_COHERENT_POOL
+	bool
+
 config DMA_REMAP
+	bool
 	depends on MMU
 	select GENERIC_ALLOCATOR
 	select DMA_NONCOHERENT_MMAP
-	bool
-
-config DMA_COHERENT_POOL
-	bool
-	select DMA_REMAP
 
 config DMA_DIRECT_REMAP
 	bool
+	select DMA_REMAP
 	select DMA_COHERENT_POOL
 
 config DMA_CMA