x86, 32-bit: Fix swiotlb boot crash

Ingo Molnar reported this boot crash:

[    8.655620] pata_amd 0000:00:06.0: version 0.4.1
[    8.660286] BUG: unable to handle kernel NULL pointer dereference at 00000034
[    8.663572] IP: [<c100617b>] dma_supported+0x3b/0xa4
[    8.663572] *pde = 00000000

Initialize dma_ops properly in the 32-bit case.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
FUJITA Tomonori 2009-11-10 21:35:17 +09:00 committed by Ingo Molnar
parent 75f1cdf1dd
commit 72d03802b8

View File

@ -129,6 +129,8 @@ void __init pci_iommu_alloc(void)
#ifdef CONFIG_X86_64
/* free the range so iommu could get some range less than 4G */
dma32_free_bootmem();
#else
dma_ops = &nommu_dma_ops;
#endif
pci_swiotlb_init();
if (use_swiotlb)