lkml.org 
[lkml]   [2017]   [Jul]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.4 77/83] drm/mst: Fix error handling during MST sideband message reception
    Date
    4.4-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Imre Deak <imre.deak@intel.com>

    commit 448421b5e93b9177c5698f0cf6f5e72d2995eeca upstream.

    Handle any error due to partial reads, timeouts etc. to avoid parsing
    uninitialized data subsequently. Also bail out if the parsing itself
    fails.

    Cc: Dave Airlie <airlied@redhat.com>
    Cc: Lyude <lyude@redhat.com>
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: Imre Deak <imre.deak@intel.com>
    Reviewed-by: Lyude <lyude@redhat.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Link: https://patchwork.freedesktop.org/patch/msgid/20170719114330.26540-2-imre.deak@intel.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/gpu/drm/drm_dp_mst_topology.c | 10 ++++++++--
    1 file changed, 8 insertions(+), 2 deletions(-)

    --- a/drivers/gpu/drm/drm_dp_mst_topology.c
    +++ b/drivers/gpu/drm/drm_dp_mst_topology.c
    @@ -2195,11 +2195,17 @@ static void drm_dp_get_one_sb_msg(struct
    ret = drm_dp_dpcd_read(mgr->aux, basereg + curreply,
    replyblock, len);
    if (ret != len) {
    - DRM_DEBUG_KMS("failed to read a chunk\n");
    + DRM_DEBUG_KMS("failed to read a chunk (len %d, ret %d)\n",
    + len, ret);
    + return;
    }
    +
    ret = drm_dp_sideband_msg_build(msg, replyblock, len, false);
    - if (ret == false)
    + if (!ret) {
    DRM_DEBUG_KMS("failed to build sideband msg\n");
    + return;
    + }
    +
    curreply += len;
    replylen -= len;
    }

    \
     
     \ /
      Last update: 2017-07-25 22:52    [W:4.145 / U:0.076 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site