Re: [PATCH] swiotlb: suppress warning when __GFP_NOWARN is set v5

From: Christoph Hellwig
Date: Thu Jan 04 2018 - 08:29:28 EST


> @@ -713,6 +713,7 @@ void *
> swiotlb_alloc_coherent(struct device *hwdev, size_t size,
> dma_addr_t *dma_handle, gfp_t flags)
> {
> + bool warn = !(flags & __GFP_NOWARN);

This is still wrong. __GFP_NOWARN has no meaning for DMA coherent
allocations, and if a driver expects it to do anything it's doing it
wrong. This needs to check for DMA_ATTR_NO_WARN, and thus get the attrs
passed.