• Daniel Vetter's avatar
    drm/i915: Fix up verify_encoder_state · 86b04268
    Daniel Vetter authored
    The trouble here is that looking at all connector->state in the
    verifier isn't good, because that's run from the commit work, which
    doesn't hold the connection_mutex. Which means we're only allowed to
    look at states in our atomic update.
    
    The simple fix for future proofing would be to switch over to
    drm_for_each_connector_in_state, but that has the problem that the
    verification then fails if not all connectors are in the state. And we
    also need to be careful to check both old and new encoders, and not
    screw things up when an encoder gets reassigned.
    
    Note that this isn't the full fix, since we still look at
    connector->state. To fix that, we need Maarten's patch series to
    switch over to state pointers within drm_atomic_state, but that's a
    different series.
    
    v2: Use oldnew iterator (Maarten).
    
    v3: Rebase onto the iter_get/put->iter_begin/end rename.
    
    Cc: Thierry Reding <thierry.reding@gmail.com>
    Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
    Link: http://patchwork.freedesktop.org/patch/msgid/20170301095226.30584-6-daniel.vetter@ffwll.ch
    86b04268
intel_display.c 446 KB