Did Your System Take A Dive With Linux 3.2?
If you upgraded today to the just-released Linux 3.2 kernel and your Intel system is now having problems booting this new kernel release, you're not alone, but here's a possible workaround.
A regression struck the Linux 3.2 kernel concerning IOMMU and is still present in the final release of Linux 3.2. The issue didn't appear during the 3.2 merge window but later on in the cycle (if my memory serves me when I first struck the issue, it was around -rc2 or -rc3) and results in the kernel not successfully booting.
If you're running Ubuntu (or likely other distributions too with a splash screen) on the Linux 3.2 kernel it may just seem like your system never boots. Or that it's caught in a panic, but it's an infinite loop. If viewing the text output of the Linux 3.2 kernel, you will see a continuous stream of "DMAR:[DMA Read] Request device [17:00.0] fault addr ffffff000" (or similar) and "DMAR:[fault reason 02] Present bit in context entry is clear" messages fill your screen indefinitely.
The system locally that I often use where I've been hitting this issue with the Linux 3.2 kernel is a ThinkPad W510 notebook with an Intel Core i7 CPU and NVIDIA Quadro graphics. This is the first time I've been hitting this particular issue in several years of using the W510 and with a wide range of kernels. Fortunately, there is a workaround by setting "intel_iommu=off" as a kernel parameter when booting the system. If disabling Intel IOMMU within GRUB, the system should then boot without the DMAR issue.
Setting "intel_iommu=off" though disables Intel VT-d / I/O virtualization support. (On many systems you can also disable Intel VT-d from the BIOS/UEFI. Or you could also just stick to the Linux 3.1 kernel or older if you really don't care.) This feature on modern Intel hardware seems to be rather problematic with the Linux 3.2 kernel.
Disabling Intel IOMMU has been fixing some Intel GPU hangs and other problems too from this latest kernel (Intel was also using the IOMMU state as the basis for determining RC6 support until that was later reverted in 3.2). I'm not the only one experiencing this Intel IOMMU issue that's been present for several weeks. It's already been brought up today in the forums as well.
Hopefully the issue(s) will get sorted out for the Linux 3.3 kernel and back-ported to Linux 3.2 before more users are affected when upgrading to Ubuntu 12.04 LTS and other releases being based upon the 3.2 kernel.
A regression struck the Linux 3.2 kernel concerning IOMMU and is still present in the final release of Linux 3.2. The issue didn't appear during the 3.2 merge window but later on in the cycle (if my memory serves me when I first struck the issue, it was around -rc2 or -rc3) and results in the kernel not successfully booting.
If you're running Ubuntu (or likely other distributions too with a splash screen) on the Linux 3.2 kernel it may just seem like your system never boots. Or that it's caught in a panic, but it's an infinite loop. If viewing the text output of the Linux 3.2 kernel, you will see a continuous stream of "DMAR:[DMA Read] Request device [17:00.0] fault addr ffffff000" (or similar) and "DMAR:[fault reason 02] Present bit in context entry is clear" messages fill your screen indefinitely.
The system locally that I often use where I've been hitting this issue with the Linux 3.2 kernel is a ThinkPad W510 notebook with an Intel Core i7 CPU and NVIDIA Quadro graphics. This is the first time I've been hitting this particular issue in several years of using the W510 and with a wide range of kernels. Fortunately, there is a workaround by setting "intel_iommu=off" as a kernel parameter when booting the system. If disabling Intel IOMMU within GRUB, the system should then boot without the DMAR issue.
Setting "intel_iommu=off" though disables Intel VT-d / I/O virtualization support. (On many systems you can also disable Intel VT-d from the BIOS/UEFI. Or you could also just stick to the Linux 3.1 kernel or older if you really don't care.) This feature on modern Intel hardware seems to be rather problematic with the Linux 3.2 kernel.
Disabling Intel IOMMU has been fixing some Intel GPU hangs and other problems too from this latest kernel (Intel was also using the IOMMU state as the basis for determining RC6 support until that was later reverted in 3.2). I'm not the only one experiencing this Intel IOMMU issue that's been present for several weeks. It's already been brought up today in the forums as well.
Hopefully the issue(s) will get sorted out for the Linux 3.3 kernel and back-ported to Linux 3.2 before more users are affected when upgrading to Ubuntu 12.04 LTS and other releases being based upon the 3.2 kernel.
30 Comments