linux/kernel/dma
Chris Goldsworthy bf96382fb9 ANDROID: dma-direct: Make DMA32 disablement work for CONFIG_NUMA
zone_dma32_is_empty() currently lacks the proper validation to ensure
that the NUMA node ID it receives as an argument is valid. This has no
effect on kernels with CONFIG_NUMA=n as NODE_DATA() will return the
same pglist_data on these devices, but on kernels with CONFIG_NUMA=y,
this is not the case, and the node passed to NODE_DATA must be
validated.

Rather than trying to find the node containing ZONE_DMA32, replace
calls of zone_dma32_is_empty() with zone_dma32_are_empty() (which
iterates over all nodes and returns false if one of the nodes holds
DMA32 and it is non-empty).

Bug: 199917449
Fixes: c3c2bb34ac ("ANDROID: arm64/mm: Add command line option to make ZONE_DMA32 empty")
Signed-off-by: Chris Goldsworthy <quic_cgoldswo@quicinc.com>
Change-Id: I850fb9213b71a1ef29106728bfda0cc6de46fdbb
2022-03-03 23:34:32 +00:00
..
coherent.c dma-mapping: split <linux/dma-mapping.h> 2020-10-06 07:07:03 +02:00
contiguous.c ANDROID: dma-contiguous: Add tracehook to allow subpage allocations in dma_alloc_contiguous 2021-12-17 02:31:49 -08:00
debug.c dma-debug: fix sg checks in debug_dma_map_sg() 2021-10-27 09:56:47 +02:00
debug.h dma-mapping: move dma-debug.h to kernel/dma/ 2020-10-06 07:07:05 +02:00
direct.c ANDROID: dma-direct: Make DMA32 disablement work for CONFIG_NUMA 2022-03-03 23:34:32 +00:00
direct.h dma-mapping: move large parts of <linux/dma-direct.h> to kernel/dma 2020-10-06 07:07:06 +02:00
dummy.c dma-mapping: split <linux/dma-mapping.h> 2020-10-06 07:07:03 +02:00
Kconfig dma-mapping: merge <linux/dma-contiguous.h> into <linux/dma-map-ops.h> 2020-10-06 07:07:04 +02:00
Makefile dma-mapping: move dma_common_{mmap,get_sgtable} out of mapping.c 2020-09-11 09:14:56 +02:00
mapping.c ANDROID: iommu/dma: Add support for DMA_ATTR_SYS_CACHE_ONLY_NWA 2021-01-13 18:27:04 +00:00
ops_helpers.c This is the 5.10.54 stable release 2021-07-28 15:23:47 +02:00
pool.c ANDROID: arm64/mm: Add command line option to make ZONE_DMA32 empty 2021-11-24 21:47:19 +00:00
remap.c dma-mapping: move more functions to dma-map-ops.h 2020-10-20 10:41:07 +02:00
swiotlb.c swiotlb: manipulate orig_addr when tlb_addr has offset 2021-06-30 08:47:29 -04:00
virt.c dma-mapping: split <linux/dma-mapping.h> 2020-10-06 07:07:03 +02:00