dma-direct: we might need GFP_DMA for 32-bit dma masks
If there is no ZONE_DMA32 we might need GFP_DMA to be able to allocate memory that satisfies a 32-bit DMA mask. Reported-by: Christian Zigotzky <chzigotzky@xenosoft.de> Signed-off-by: Christoph Hellwig <hch@lst.de> Tested-by: Christian Zigotzky <chzigotzky@xenosoft.de> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
Родитель
74ebe3e733
Коммит
fbce251baa
|
@ -132,8 +132,7 @@ again:
|
||||||
goto again;
|
goto again;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (IS_ENABLED(CONFIG_ZONE_DMA) &&
|
if (IS_ENABLED(CONFIG_ZONE_DMA) && !(gfp & GFP_DMA)) {
|
||||||
phys_mask < DMA_BIT_MASK(32) && !(gfp & GFP_DMA)) {
|
|
||||||
gfp = (gfp & ~GFP_DMA32) | GFP_DMA;
|
gfp = (gfp & ~GFP_DMA32) | GFP_DMA;
|
||||||
goto again;
|
goto again;
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче