On Tue, Oct 18, 2022 at 12:14:09PM +0300, Ville Syrjälä wrote: > On Mon, Oct 17, 2022 at 03:31:57PM +0000, Simon Ser wrote: > > This reverts commit 981f09295687f856d5345e19c7084aca481c1395. > > > > It turns out this breaks Mutter. > > A bit more detail would be a good to help future archaeologists. Perhaps a better explanation is It turns out this causes logically active but disconnected MST display port connectors to disappear from the drmModeGetResources() list, meaning userspace is made to believe the connector is already disabled. When userspace then attempts post a new mode set commit, if that commit uses the same CRTC used to previously drive the disconnected connector, it will fail as that CRTC is logically still tied to the disconnected connector. This was discovered by a bisecting docking station hot plugging regression using mutter. Jonas > > > > > Signed-off-by: Simon Ser <contact@xxxxxxxxxxx> > > Cc: Daniel Vetter <daniel.vetter@xxxxxxxx> > > Cc: Lyude Paul <lyude@xxxxxxxxxx> > > Cc: Jonas Ådahl <jadahl@xxxxxxxxxx> > > --- > > drivers/gpu/drm/drm_mode_config.c | 3 --- > > 1 file changed, 3 deletions(-) > > > > diff --git a/drivers/gpu/drm/drm_mode_config.c b/drivers/gpu/drm/drm_mode_config.c > > index 939d621c9ad4..688c8afe0bf1 100644 > > --- a/drivers/gpu/drm/drm_mode_config.c > > +++ b/drivers/gpu/drm/drm_mode_config.c > > @@ -151,9 +151,6 @@ int drm_mode_getresources(struct drm_device *dev, void *data, > > count = 0; > > connector_id = u64_to_user_ptr(card_res->connector_id_ptr); > > drm_for_each_connector_iter(connector, &conn_iter) { > > - if (connector->registration_state != DRM_CONNECTOR_REGISTERED) > > - continue; > > - > > /* only expose writeback connectors if userspace understands them */ > > if (!file_priv->writeback_connectors && > > (connector->connector_type == DRM_MODE_CONNECTOR_WRITEBACK)) > > -- > > 2.38.0 > > > > -- > Ville Syrjälä > Intel >