From: Dave Airlie <airlied@xxxxxxxxxx> I suspect we might need to rethink when we send hotplug callback but this at least stops us from sending them when we defintely don't need to. DP input port state changes aren't necessary to report. Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx> --- drivers/gpu/drm/drm_dp_mst_topology.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c index e23df5f..cfb0b96 100644 --- a/drivers/gpu/drm/drm_dp_mst_topology.c +++ b/drivers/gpu/drm/drm_dp_mst_topology.c @@ -863,7 +863,8 @@ static void drm_dp_destroy_port(struct kref *kref) { struct drm_dp_mst_port *port = container_of(kref, struct drm_dp_mst_port, kref); struct drm_dp_mst_topology_mgr *mgr = port->mgr; - if (!port->input) { + bool is_input = port->input; + if (!is_input) { port->vcpi.num_slots = 0; kfree(port->cached_edid); @@ -885,7 +886,10 @@ static void drm_dp_destroy_port(struct kref *kref) } kfree(port); - (*mgr->cbs->hotplug)(mgr); + /* we should only cause a hotplug if an output port changes + * input ports shouldn't. */ + if (!is_input) + (*mgr->cbs->hotplug)(mgr); } static void drm_dp_put_port(struct drm_dp_mst_port *port) -- 2.4.3 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel