Red Hat Bugzilla – Bug 539861
Resume from suspend does not work with virt enabled (HP 6930p)
Last modified: 2013-01-10 03:04:45 EST
Description of problem: My HP 6930p (INTEL GM45 video) does hangs on resume (backlight off, total freeze). Matthew suggested to disable the iommu (intel_iommu=off or intel_iommu=soft) but neither fixes it. I tryed to locate a faulty driver using pm_trace but nothing come up (it hangs very early). Yesterday I tested a 2.6.32 kernel from koji, but it did not work either. Today I tryed to debug it again by playing with bios options. So I disabled virt and suspend/resume worked flawlessly. Enabling virt breaks it again. Disabling the virt obviously disables the IOMMU so it might be still related to that. F11 works fine with virt enabled. Version-Release number of selected component (if applicable): 2.6.31.6-142.fc12.x86_64 (does happen with every F12 kernel though, even -125 with has the IOMMU off by default does not work). How reproducible: Always Steps to Reproduce: 1. Boot F12 on a HP 6930p with virt enabled 2. Suspend it 3. Hangs on Resume 4. Do the same with virt disabled, works Actual results: It should not hang on resume because virt is enabled (works fine in F11, so there is a regression somewhere) Expected results: Suspend/resume should work fine with virt enabled. Additional info: The kvm_intel module is not causing it either (having it loaded or not does not change anything). If you need any other information, feel free to ask.
OK, done some more tests. With "iommu=off" (rather than soft or intel_iommu=off) suspend/resume does work with virt enabled. It does flood the logs with "nommu_map_single: overflow" messages on boot.
(In reply to comment #1) > OK, done some more tests. > > With "iommu=off" (rather than soft or intel_iommu=off) suspend/resume does work > with virt enabled. > > It does flood the logs with "nommu_map_single: overflow" messages on boot. This also adds a significant delay when starting X (~5sec)
More testing done: intel_iommu=igfx_off seems to be the best setting: 1) I can leave virt enabled 2) no nasty messages in the logs 3) no effect on X 4) suspend/resume works We still need a fix to either autodetect this or fix the problem to make it not required, but as always I assume this is a bios bug.
In Fedora 12 we set the VGA devices to complete passthrough. The only difference between that and 'intel_iommu=igfx_off' is that in the latter case we notice that there's an IOMMU which is _just_ for the graphics device, and we don't initialise that IOMMU at all. I'm confused, therefore, that one works and the other doesn't. Can you post the full dmesg when booting normally work no arguments?
Created attachment 372895 [details] dmesg without "intel_iommu=igfx_off" OK, here it is (dmesg with no arguments).
*** This bug has been marked as a duplicate of bug 533402 ***
Argh, sorry; wrong bug. *** This bug has been marked as a duplicate of bug 536675 ***