Messages in this thread Patch in this message | | | Date | Fri, 04 Sep 2009 17:14:22 -0700 | From | Greg KH <> | Subject | [patch 47/71] Bug Fix arch/ia64/kernel/pci-dma.c: fix recursive dma_supported() call in iommu_dma_supported() |
| |
2.6.30-stable review patch. If anyone has any objections, please let us know.
------------------ From: Fenghua Yu <[fenghua.yu@intel.com]>
commit 51b89f7a6615eca184aa0b85db5781d931e9c8d1 upstream.
In commit 160c1d8e40866edfeae7d68816b7005d70acf391, 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> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
--- arch/ia64/kernel/pci-dma.c | 5 ----- 1 file changed, 5 deletions(-)
--- a/arch/ia64/kernel/pci-dma.c +++ b/arch/ia64/kernel/pci-dma.c @@ -67,11 +67,6 @@ iommu_dma_init(void) 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 only work for pci_alloc_coherent. The caller just has to use GFP_DMA in this case. */
| |