<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEEDINFO "
title="NEEDINFO --- - sna: (Haswell) X-server freezes when enabling DP at docking station"
href="https://bugs.freedesktop.org/show_bug.cgi?id=71267#c26">Comment # 26</a>
on <a class="bz_bug_link
bz_status_NEEDINFO "
title="NEEDINFO --- - sna: (Haswell) X-server freezes when enabling DP at docking station"
href="https://bugs.freedesktop.org/show_bug.cgi?id=71267">bug 71267</a>
from <span class="vcard"><a class="email" href="mailto:consume.noise@gmail.com" title="Daniel Martin <consume.noise@gmail.com>"> <span class="fn">Daniel Martin</span></a>
</span></b>
<pre>Created <span class=""><a href="attachment.cgi?id=90101" name="attach_90101" title="dmesg 3.13.0-rc1 with hack from comment #24">attachment 90101</a> <a href="attachment.cgi?id=90101&action=edit" title="dmesg 3.13.0-rc1 with hack from comment #24">[details]</a></span>
dmesg 3.13.0-rc1 with hack from <a href="show_bug.cgi?id=71267#c24">comment #24</a>
dmesg 3.13.0-rc1 with:
- hack from <a href="show_bug.cgi?id=71267#c24">comment #24</a>
- DRM_DEBUG_KMS messages before, inside and when leaving a lock on
mode_config.mutex
- DRM_DEBUG_KMS messages before schedule/cancel_delayed_work(_sync) on
panel_vdd_work (That's why "XXX: schedule work (msecs_to_jiffies)..." shows
up.)
I've to recall my statement in <a href="show_bug.cgi?id=71267#c24">comment #24</a>:
<span class="quote">> I know that's not atomic. But, in case of the bug it runs into the if-clause (so, the mutex is locked) and gives a warning about an unbalanced unlock. Then it moves on and ironlake_panel_vdd_work() gets stuck when trying to lock mode_config.mutex.</span >
With the hack applied it doesn't deadlock in ironlake_panel_vdd_work() when
aquiring the lock on mode_config.mutex. Comparing the dmesg output with the
preemption workaround, see <span class=""><a href="attachment.cgi?id=89947" name="attach_89947" title="dmesg 3.11 (working! - with preemption)">attachment #89947</a> <a href="attachment.cgi?id=89947&action=edit" title="dmesg 3.11 (working! - with preemption)">[details]</a></span>, I miss
intel_dp_set_signal_levels() and friends between haswell_write_eld() and
ironlake_panel_vdd_work().
Notes on dmesg:
@57.286024 I've plugged in the monitor and wait.
@263.064377 More than 120s are gone and no "task kworker/xyz blocked for more
than 120 seconds" message showed up. Try to start Xorg and wait.
@480.271406 "INFO: task Xorg:152 blocked for more than 120 seconds." Yep, last
message in Xorg.0.log is "xfree86: Adding drm device (/dev/dri/card0)". The
nice retro pattern never showed up. ;)
@480.307359 "INFO: lockdep is turned off." Heee? I've definitly enabled
lockdep, made a `make clean && make` in the kernel tree and in /proc/config.gz
I can find CONFIG_LOCKDEP=y.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>