Once you're done laughing that I got up to v5 (I think I skipped a v3, and v1 was the IOCTls, so it's really more like a v3) for patches meant to simply allow register reads and wites...
Back to struct_mutex since it turned out to be my mistake regarding the IIR problem. The only issue in the interrupt handler was rps, which has been moved to a workqueue. Struct_mutex must be held to forcewake, or relinquish forcwake. There is still at least one known problem with the hangcheck code where it reads registers that aren't safe for gen6, and acquiring struct_mutex. Moving that code to a workqueue became quite involved, and since it's mostly an error condition, I am not including it in this series. Hopefully no other code is trying to read or write registers while the GPU is potentially hanging. The reference count is now atomic so that the system may possibly almost work (at least as well as it works now), if callers don't have struct_mutex. This series is potentially more dangerous than the previous because of the way the PM interrupts are handled for rps. Ben _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx