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>
diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c
index a234e63..63eebee 100644
--- a/arch/x86/kernel/pci-dma.c
+++ b/arch/x86/kernel/pci-dma.c
@@ -129,6 +129,8 @@
#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)