linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] Fix connector probing deadlocks from RPM bugs
@ 2018-07-18 20:56 Lyude Paul
  2018-07-18 20:56 ` [PATCH 1/2] drm/fb_helper: Add drm_fb_helper_output_poll_changed_with_rpm() Lyude Paul
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Lyude Paul @ 2018-07-18 20:56 UTC (permalink / raw)
  To: nouveau
  Cc: David Airlie, Daniel Vetter, Sean Paul, Maarten Lankhorst,
	linux-kernel, dri-devel, Ben Skeggs, Gustavo Padovan,
	Ville Syrjälä,
	Lyude Paul

This is a trimmed down version of

https://patchwork.freedesktop.org/series/46637/

with all of the review comments addressed.

The last version of this series had fixes for the i2c and DP aux busses
to ensure that the GPU would be turned on whenever anything tried to
access the i2c/aux busses. Unfortunately: one of the fixes apparently
contained some very incorrect usage of Linux's runtime PM interface in
order to prevent runtime suspend/resume requests coming from within
nouveau's suspend/resume callbacks from deadlocking the system.

Turns out: fixing the i2c/dp aux problem is a lot harder then I
originally anticipated. We either need to come up with helpers for DRM
that work around the PM core, which is really not ideal, or come up with
a new feature for the RPM core that allows us to inhibit suspend/resume
callbacks. The former seems to be somewhat trivial to implement, but
coming up with a decent interface for that is going to take a bit more
time and I'd much rather have issues causing deadlocks get fixed first.
This means that drm_dp_aux_dev is going to be broken on nouveau for
laptops with hybrid GPUs using RPM, but it was already broken before
anyhow.

So: this just contains the seriously important fixes that will stop
people's machines from crashing very hard. Hopefully I can come up with
a solution to the i2c/aux problem soon after fixing some other glaring
MST bugs nouveau currently has.

Lyude Paul (2):
  drm/fb_helper: Add drm_fb_helper_output_poll_changed_with_rpm()
  drm/probe_helper: Add
    drm_helper_probe_single_connector_modes_with_rpm()

 drivers/gpu/drm/drm_fb_helper.c             | 23 +++++++++++++++
 drivers/gpu/drm/drm_probe_helper.c          | 31 +++++++++++++++++++++
 drivers/gpu/drm/nouveau/dispnv50/disp.c     |  4 +--
 drivers/gpu/drm/nouveau/nouveau_connector.c |  4 +--
 include/drm/drm_crtc_helper.h               |  7 +++--
 include/drm/drm_fb_helper.h                 |  5 ++++
 6 files changed, 67 insertions(+), 7 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2018-08-06  8:31 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-07-18 20:56 [PATCH 0/2] Fix connector probing deadlocks from RPM bugs Lyude Paul
2018-07-18 20:56 ` [PATCH 1/2] drm/fb_helper: Add drm_fb_helper_output_poll_changed_with_rpm() Lyude Paul
2018-07-19  7:49   ` Lukas Wunner
2018-07-20  0:08     ` Lyude Paul
2018-07-20  0:17       ` Lyude Paul
2018-07-21  9:39       ` Lukas Wunner
2018-07-23 17:50         ` Lyude Paul
2018-07-18 20:56 ` [PATCH 2/2] drm/probe_helper: Add drm_helper_probe_single_connector_modes_with_rpm() Lyude Paul
2018-07-19  8:08   ` Lukas Wunner
2018-08-06  8:31 ` [PATCH 0/2] Fix connector probing deadlocks from RPM bugs Daniel Vetter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).