diff options
author | FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> | 2009-11-10 07:35:17 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-11-10 08:11:32 -0500 |
commit | 72d03802b8b5c841ab1da82bff0652628cbadf60 (patch) | |
tree | cd0329e3b9d6dec8585e3bfed976c9e7eee79fbf /arch/x86/kernel/pci-dma.c | |
parent | 75f1cdf1dda92cae037ec848ae63690d91913eac (diff) |
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>
Diffstat (limited to 'arch/x86/kernel/pci-dma.c')
-rw-r--r-- | arch/x86/kernel/pci-dma.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c index a234e63c2656..63eebee80e75 100644 --- a/arch/x86/kernel/pci-dma.c +++ b/arch/x86/kernel/pci-dma.c | |||
@@ -129,6 +129,8 @@ void __init pci_iommu_alloc(void) | |||
129 | #ifdef CONFIG_X86_64 | 129 | #ifdef CONFIG_X86_64 |
130 | /* free the range so iommu could get some range less than 4G */ | 130 | /* free the range so iommu could get some range less than 4G */ |
131 | dma32_free_bootmem(); | 131 | dma32_free_bootmem(); |
132 | #else | ||
133 | dma_ops = &nommu_dma_ops; | ||
132 | #endif | 134 | #endif |
133 | pci_swiotlb_init(); | 135 | pci_swiotlb_init(); |
134 | if (use_swiotlb) | 136 | if (use_swiotlb) |