Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp4761213pxv; Tue, 6 Jul 2021 08:32:08 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw0q4+MxxgnASrigtNWsqkBaArqP8yPrcsebT7FjHcNtKVnujS22gbZHblN5ZUrf+aXJ6Yk X-Received: by 2002:a92:da01:: with SMTP id z1mr14845665ilm.103.1625585528126; Tue, 06 Jul 2021 08:32:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625585528; cv=none; d=google.com; s=arc-20160816; b=qfGn65mEXs8nx9MWzobcAltnKhvCvsFkgnvX+HdaJD2nk2b38Yv1VgziMSZWoCDszR 5hban450y0wsTzM5dOUoaz3YTSaHi9pX2g2SSpSwILept0z3nxCV3IcIrRxKlE7MgvLo Yh2L4DMKj20iZ3HvJ0uu61fkem8AxjL++uhCnAvYx340F03L9H7mjXECKE8r/CEsU/AE oIbICUi2b04KxwpY/wDVEgEqtxt7L+Yy1cG3g581tyeOsPZW4wVMj+yU1Wh0DSaFZrKC AIFnwpNrSyfSlva+9YW3t9Hq8z0z+UN5Uyeo3OEorwhOAYWtsTV0qXuGMUIqFrRr5vFf oFHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from:dmarc-filter :sender:dkim-signature; bh=1mcO67hemLr0DFEPPwQ5FKW1ObS3TcM9AHhhIEEK0h8=; b=FnAsaEVnyDgvxH+6zjwc1YRqADguBRQ0IXXYy4bAp0PUmJmIqf+QlGkfRyfTbuElG3 8pLL8o/cohBkAF//kQUCMuagrFrF/3Mo+pGBtB1YdB4wt9UkdeOcQdrFMo/MsG+/kurh l0gYlULZexf8iwgX3HZS6/Gw5jY9XSMxfl+s9GyXhQ5LI9GG/Zfe4lUTF4+JDXATysUw YPKVHtJuGw56CPqzF+vlT9NgrcZzsLtTbK3ikv4k9961tych0VkJoMUV3aFwNs/JrRrQ Fs2PXTQzLSknc3jN8oH+R8DSVFNnbrseeII2ZN3imHZivFKSXbZiEAYU8sivG3BEv/f6 kvEA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=dAWdCvMe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q3si11965308iob.0.2021.07.06.08.31.55; Tue, 06 Jul 2021 08:32:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@mg.codeaurora.org header.s=smtp header.b=dAWdCvMe; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231808AbhGFPdz (ORCPT + 99 others); Tue, 6 Jul 2021 11:33:55 -0400 Received: from m43-7.mailgun.net ([69.72.43.7]:49426 "EHLO m43-7.mailgun.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231773AbhGFPdy (ORCPT ); Tue, 6 Jul 2021 11:33:54 -0400 DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=mg.codeaurora.org; q=dns/txt; s=smtp; t=1625585475; h=Message-Id: Date: Subject: Cc: To: From: Sender; bh=1mcO67hemLr0DFEPPwQ5FKW1ObS3TcM9AHhhIEEK0h8=; b=dAWdCvMeND0fRkrR3WEatBkJ2r5w82ikgi8UJdi4EPGVqSuzc3+iqMrwHlePmHQ7VM0BdSar o6k6f6XhnDZQxpNR1ANYR6SD8zDa8HKzyztEmGULWiABbVN9XiiYbCY78NO+r0m4k7UEB0QT UtiN1rTowSW5CJgycndC+68Ucnk= X-Mailgun-Sending-Ip: 69.72.43.7 X-Mailgun-Sid: WyI0MWYwYSIsICJsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnIiwgImJlOWU0YSJd Received: from smtp.codeaurora.org (ec2-35-166-182-171.us-west-2.compute.amazonaws.com [35.166.182.171]) by smtp-out-n07.prod.us-east-1.postgun.com with SMTP id 60e477255e3e57240b4f5282 (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Tue, 06 Jul 2021 15:30:45 GMT Sender: khsieh=codeaurora.org@mg.codeaurora.org Received: by smtp.codeaurora.org (Postfix, from userid 1001) id C4935C433F1; Tue, 6 Jul 2021 15:30:44 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-caf-mail-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.9 required=2.0 tests=ALL_TRUSTED,BAYES_00,SPF_FAIL, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from khsieh-linux1.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: khsieh) by smtp.codeaurora.org (Postfix) with ESMTPSA id B04E6C433F1; Tue, 6 Jul 2021 15:30:42 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org B04E6C433F1 Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: aws-us-west-2-caf-mail-1.web.codeaurora.org; spf=fail smtp.mailfrom=khsieh@codeaurora.org From: Kuogee Hsieh To: robdclark@gmail.com, sean@poorly.run, swboyd@chromium.org, lyude@redhat.com Cc: abhinavk@codeaurora.org, aravindh@codeaurora.org, khsieh@codeaurora.org, rsubbia@codeaurora.org, rnayak@codeaurora.org, freedreno@lists.freedesktop.org, airlied@linux.ie, daniel@ffwll.ch, maarten.lankhorst@linux.intel.com, jani.nikula@linux.intel.com, mripard@kernel.org, tzimmermann@suse.de, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH v3] drm/dp_mst: Fix return code on sideband message failure Date: Tue, 6 Jul 2021 08:30:34 -0700 Message-Id: <1625585434-9562-1-git-send-email-khsieh@codeaurora.org> X-Mailer: git-send-email 2.7.4 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Rajkumar Subbiah Commit 2f015ec6eab6 ("drm/dp_mst: Add sideband down request tracing + selftests") added some debug code for sideband message tracing. But it seems to have unintentionally changed the behavior on sideband message failure. It catches and returns failure only if DRM_UT_DP is enabled. Otherwise it ignores the error code and returns success. So on an MST unplug, the caller is unaware that the clear payload message failed and ends up waiting for 4 seconds for the response. Fixes the issue by returning the proper error code. Changes in V2: -- Revise commit text as review comment -- add Fixes text Changes in V3: -- remove "unlikely" optimization Fixes: 2f015ec6eab6 ("drm/dp_mst: Add sideband down request tracing + selftests") Signed-off-by: Rajkumar Subbiah Signed-off-by: Kuogee Hsieh Reviewed-by: Stephen Boyd --- drivers/gpu/drm/drm_dp_mst_topology.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/drm_dp_mst_topology.c b/drivers/gpu/drm/drm_dp_mst_topology.c index 1590144..df91110 100644 --- a/drivers/gpu/drm/drm_dp_mst_topology.c +++ b/drivers/gpu/drm/drm_dp_mst_topology.c @@ -2887,11 +2887,13 @@ static int process_single_tx_qlock(struct drm_dp_mst_topology_mgr *mgr, idx += tosend + 1; ret = drm_dp_send_sideband_msg(mgr, up, chunk, idx); - if (unlikely(ret) && drm_debug_enabled(DRM_UT_DP)) { - struct drm_printer p = drm_debug_printer(DBG_PREFIX); + if (ret) { + if (drm_debug_enabled(DRM_UT_DP)) { + struct drm_printer p = drm_debug_printer(DBG_PREFIX); - drm_printf(&p, "sideband msg failed to send\n"); - drm_dp_mst_dump_sideband_msg_tx(&p, txmsg); + drm_printf(&p, "sideband msg failed to send\n"); + drm_dp_mst_dump_sideband_msg_tx(&p, txmsg); + } return ret; } -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project