lkml.org 
[lkml]   [2019]   [Sep]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 4.19 016/167] drm/i915: Fix intel_dp_mst_best_encoder()
    Date
    From: Lyude Paul <lyude@redhat.com>

    [ Upstream commit a9f9ca33d1fe9325f414914be526c0fc4ba5281c ]

    Currently, i915 appears to rely on blocking modesets on
    no-longer-present MSTB ports by simply returning NULL for
    ->best_encoder(), which in turn causes any new atomic commits that don't
    disable the CRTC to fail. This is wrong however, since we still want to
    allow userspace to disable CRTCs on no-longer-present MSTB ports by
    changing the DPMS state to off and this still requires that we retrieve
    an encoder.

    So, fix this by always returning a valid encoder regardless of the state
    of the MST port.

    Changes since v1:
    - Remove mst atomic helper, since this got replaced with a much simpler
    solution

    Signed-off-by: Lyude Paul <lyude@redhat.com>
    Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Cc: stable@vger.kernel.org
    Link: https://patchwork.freedesktop.org/patch/msgid/20181008232437.5571-6-lyude@redhat.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/gpu/drm/i915/intel_dp_mst.c | 2 --
    1 file changed, 2 deletions(-)

    diff --git a/drivers/gpu/drm/i915/intel_dp_mst.c b/drivers/gpu/drm/i915/intel_dp_mst.c
    index 1fec0c71b4d95..58ba14966d4f1 100644
    --- a/drivers/gpu/drm/i915/intel_dp_mst.c
    +++ b/drivers/gpu/drm/i915/intel_dp_mst.c
    @@ -408,8 +408,6 @@ static struct drm_encoder *intel_mst_atomic_best_encoder(struct drm_connector *c
    struct intel_dp *intel_dp = intel_connector->mst_port;
    struct intel_crtc *crtc = to_intel_crtc(state->crtc);

    - if (!READ_ONCE(connector->registered))
    - return NULL;
    return &intel_dp->mst_encoders[crtc->pipe]->base.base;
    }

    --
    2.20.1
    \
     
     \ /
      Last update: 2019-09-03 18:26    [W:4.057 / U:0.032 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site