diff options
author | Lyude Paul <lyude@redhat.com> | 2019-01-15 21:08:00 +0100 |
---|---|---|
committer | Lyude Paul <lyude@redhat.com> | 2019-01-15 22:10:43 +0100 |
commit | 96550555a78ca3c9fda4b358549a5622810fe32c (patch) | |
tree | 3eab6ac11b6e0554506588b61b91d506997deb02 /Documentation/preempt-locking.txt | |
parent | staging/vboxvideo: Don't set FBINFO_MISC_ALWAYS_SETPAR (diff) | |
download | linux-96550555a78ca3c9fda4b358549a5622810fe32c.tar.xz linux-96550555a78ca3c9fda4b358549a5622810fe32c.zip |
drm/i915: Pass down rc in intel_encoder->compute_config()
Something that I completely missed when implementing the new MST VCPI
atomic helpers is that with those helpers, there's technically a chance
of us having to grab additional modeset locks in ->compute_config() and
furthermore, that means we have the potential to hit a normal modeset
deadlock. However, because ->compute_config() only returns a bool this
means we can't return -EDEADLK when we need to drop locks and try again
which means we end up just failing the atomic check permanently. Whoops.
So, fix this by modifying ->compute_config() to pass down an actual
error code instead of a bool so that the atomic check can be restarted
on modeset deadlocks.
Thanks to Ville Syrjälä for pointing this out!
Changes since v1:
* Add some newlines
* Return only -EINVAL from hsw_crt_compute_config()
* Propogate return code from intel_dp_compute_dsc_params()
* Change all of the intel_dp_compute_link_config*() variants
* Don't miss if (hdmi_port_clock_valid()) branch in
intel_hdmi_compute_config()
Signed-off-by: Lyude Paul <lyude@redhat.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Fixes: eceae1472467 ("drm/dp_mst: Start tracking per-port VCPI allocations")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109320
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190115200800.3121-1-lyude@redhat.com
Diffstat (limited to 'Documentation/preempt-locking.txt')
0 files changed, 0 insertions, 0 deletions