From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: amazingfate Date: Fri, 3 Nov 2023 18:04:43 +0800 Subject: dma-mapping: let dma_alloc_noncontiguous allow DMA_ATTR_NO_KERNEL_MAPPING --- kernel/dma/mapping.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/dma/mapping.c b/kernel/dma/mapping.c index e323ca48f7f2..2468d0d25ca1 100644 --- a/kernel/dma/mapping.c +++ b/kernel/dma/mapping.c @@ -649,7 +649,7 @@ struct sg_table *dma_alloc_noncontiguous(struct device *dev, size_t size, const struct dma_map_ops *ops = get_dma_ops(dev); struct sg_table *sgt; - if (WARN_ON_ONCE(attrs & ~DMA_ATTR_ALLOC_SINGLE_PAGES)) + if (WARN_ON_ONCE((attrs & ~DMA_ATTR_ALLOC_SINGLE_PAGES) && (attrs & ~(DMA_ATTR_ALLOC_SINGLE_PAGES | DMA_ATTR_NO_KERNEL_MAPPING)))) return NULL; if (WARN_ON_ONCE(gfp & __GFP_COMP)) return NULL; -- Armbian