Bug Fix arch/ia64/kernel/pci-dma.c: fix recursive dma_supported() call in iommu_dma_supported()
In commit 160c1d8e40
,
dma_ops->dma_supported = iommu_dma_supported;
This dma_ops->dma_supported is first called in platform_dma_init() during kernel
boot. Then dma_ops->dma_supported will be called recursively in
iommu_dma_supported.
Kernel can not boot because kernel can not get out of iommu_dma_supported until
it runs out of stack memory.
Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
This commit is contained in:
parent
85dfd81dc5
commit
51b89f7a66
|
@ -69,11 +69,6 @@ iommu_dma_init(void)
|
||||||
|
|
||||||
int iommu_dma_supported(struct device *dev, u64 mask)
|
int iommu_dma_supported(struct device *dev, u64 mask)
|
||||||
{
|
{
|
||||||
struct dma_map_ops *ops = platform_dma_get_ops(dev);
|
|
||||||
|
|
||||||
if (ops->dma_supported)
|
|
||||||
return ops->dma_supported(dev, mask);
|
|
||||||
|
|
||||||
/* Copied from i386. Doesn't make much sense, because it will
|
/* Copied from i386. Doesn't make much sense, because it will
|
||||||
only work for pci_alloc_coherent.
|
only work for pci_alloc_coherent.
|
||||||
The caller just has to use GFP_DMA in this case. */
|
The caller just has to use GFP_DMA in this case. */
|
||||||
|
|
Loading…
Reference in New Issue