> @@ -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.

Reply via email to