When moving to 3.0, the drm ioctls in the psb driver were put under a drm mutex upon removal of the BKL. The ones that did their own locking were given a DRM_UNLOCKED flag to avoid the redundant locking. This locking is apparently the cause of the jerkinness and slowdown seen running glxgears, and I believe I've isolated it to the drm_lock and drm_unlock ioctl calls. Giving them the DRM_UNLOCKED flag makes the problem disappear, but they need to be audited to determine if that's really safe to do.
Tom: was the intention to assign this to yourself ? I'm doing that now, but correct me if I'm wrong.
(In reply to comment #1) > Tom: was the intention to assign this to yourself ? I'm doing that now, but > correct me if I'm wrong. Yeah, that was the intention, thanks for doing it.
Tom, this bug hasn't been updated for quite some time, can you please provide some update. Also, should we move it to 1.3? thx
(In reply to comment #3) > Tom, this bug hasn't been updated for quite some time, can you please provide > some update. Also, should we move it to 1.3? thx Yes, I actually started looking at this again last week, but haven't been able to really get into it due to conferences, etc. Once I'm able to get back into development mode again next week, I'll be looking at this again pretty quickly into that. It is something I plan to work on for 1.2, so it should stay there.
This is BSP-specific i.e. to the emenlow branch of the kernel.
Fixed by: http://git.yoctoproject.org/cgit/cgit.cgi/linux-yocto-3.2/commit/?h=standard/default/emenlow&id=4ee2ae2967b59300f5acd18292688d34d6387f2e