I think I may have localized where the bug is. If I add a sync() call in
src/i830_dri.c:I830DRIInstIrqHandler() just before the call to
drmCtlInstHandler(), the resume from suspend still fails. If I instead
add a sync() call right after the call to drmCtlInstHandler(), the
resume succeeds. This is a kludge fix; someone who knows more about this
codebase should come up with the appropriate way to synchronize all CPUs
here instead of this forcing synchronization indirectly by telling the
kernel to flush all buffers to disk.

More information and a temp patch will come tonight if a better fix
doesn't appear before then. I have a deadline in another project tonight
that I should be working on instead right now...

-- 
Resume from suspend doesn't not work on the Mobile 4 Series chipsets
https://bugs.launchpad.net/bugs/276943
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to