branch name: drm-kms-locking Description: ---------------------------------------- We tested nightly, found machine hang while booting after grub.Then the screen turned into black. I can't login by ssh. We found this issue caused by "branch drm-kms-locking". The commit I listed below is first bad. Bisect result: ------------------------------------------ commit 7b24056be6db7ce907baffdd4cf142ab774ea60c Author: Daniel Vetter <daniel.vetter@ffwll.ch> Date: Wed Dec 12 00:35:33 2012 +0100 drm: don't hold crtc mutexes for connector ->detect callbacks The coup de grace of the entire journey. No more dropped frames every 10s on my testbox! I've tried to audit all ->detect and ->get_modes callbacks, but things became a bit fuzzy after trying to piece together the umpteenth implemenation. Afaict most drivers just have bog-standard output register frobbing with a notch of i2c edid reading, nothing which could potentially race with the newly concurrent pageflip/set_cursor code. The big exception is load-detection code which requires a running pipe, but radeon/nouveau seem to to this without touching any state which can be observed from page_flip (e.g. disabled crtcs temporarily getting enabled and so a pageflip succeeding).
Ok, I can reproduce the bug on my gm45 and confirm the bisect result. Very strange indeed ...
Shot in the dark, please test this patch here: https://patchwork.kernel.org/patch/1716161/
Ok, first patch only makes lockdep work correctly, this one here is the real fix: https://patchwork.kernel.org/patch/2025831/
Last patch can work well! (In reply to comment #3) > Ok, first patch only makes lockdep work correctly, this one here is the real > fix: https://patchwork.kernel.org/patch/2025831/
Fix has been merged to drm-next and is now also in -nightly: commit 67c964000236497e00c646472cd6b70b5c5109c8 Author: Daniel Vetter <daniel.vetter@ffwll.ch> Date: Wed Jan 23 16:25:09 2013 +0000 drm/i915: fixup per-crtc locking in intel_release_load_detect_pipe
Closing old verified.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.