dma-direct: don't retry allocation for no-op GFP_DMA
authorTakashi Iwai <tiwai@suse.de>
Sun, 15 Apr 2018 09:08:07 +0000 (11:08 +0200)
committerChristoph Hellwig <hch@lst.de>
Mon, 23 Apr 2018 12:43:27 +0000 (14:43 +0200)
commit504a918e6714b551b7b39940dbab32610fafa1fe
tree1354fe047d8f5bd3f27f1567683e94de8252c691
parent6d08b06e67cd117f6992c46611dfb4ce267cd71e
dma-direct: don't retry allocation for no-op GFP_DMA

When an allocation with lower dma_coherent mask fails, dma_direct_alloc()
retries the allocation with GFP_DMA.  But, this is useless for
architectures that hav no ZONE_DMA.

Fix it by adding the check of CONFIG_ZONE_DMA before retrying the
allocation.

Fixes: 95f183916d4b ("dma-direct: retry allocations using GFP_DMA for small masks")
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Christoph Hellwig <hch@lst.de>
lib/dma-direct.c