... by properly checking connector->polled. This doesn't matter too
much because the polling work itself gets this slightly more right and
doesn't set repoll if there's nothing to do. But we can do better.

Signed-Off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
---
 drivers/gpu/drm/drm_crtc_helper.c |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_crtc_helper.c 
b/drivers/gpu/drm/drm_crtc_helper.c
index f17953e..87a45de 100644
--- a/drivers/gpu/drm/drm_crtc_helper.c
+++ b/drivers/gpu/drm/drm_crtc_helper.c
@@ -955,9 +955,6 @@ static void output_poll_execute(struct work_struct *work)
                    (connector->polled & DRM_CONNECTOR_POLL_HPD))
                        continue;

-               else if (connector->polled & (DRM_CONNECTOR_POLL_CONNECT | 
DRM_CONNECTOR_POLL_DISCONNECT))
-                       repoll = true;
-
                old_status = connector->status;
                /* if we are connected and don't want to poll for disconnect
                   skip it */
@@ -1000,7 +997,8 @@ void drm_kms_helper_poll_enable(struct drm_device *dev)
                return;

        list_for_each_entry(connector, &dev->mode_config.connector_list, head) {
-               if (connector->polled)
+               if (connector->polled & (DRM_CONNECTOR_POLL_CONNECT |
+                                        DRM_CONNECTOR_POLL_DISCONNECT))
                        poll = true;
        }

-- 
1.7.7.6

Reply via email to