On Sat, 29 Oct 2011, Daniel Vetter wrote:
Ok, and here's why your locking (or any locking that drops the lock before calling schedule) won't work: [SNIP]
You just came full circle. Recall that in my v1 patch I went all the way to enqueuing the process in the wait queue before dropping the lock. That would have guaranteed that if there is a hangup, what last_vblank_wait says is the last is really the last. If there is no hang, then it doesn't matter because last_vlank_wait is constantly overwritten (and is indeed stale for N-1 processes). However, that was disliked in the review and I didn't want to argue.
So in the interest of making progress, it looks that you would be happy if this patch just dropped DRM_UNLOCKED and declared that we don't care about (potentially theoretical) critical section related to last_vblank_wait.
If that's the case, I'll cut a relatvely trivial patch that drops DRM_UNLOCKED from this system call to solve the problem that I pointed earlier in this thread and leave all the rest of the locking discussion for other patches.
Would that be fine by you ? thanks, Ilija _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel