[Why]
After supend/resume, with topology unchanged, observe that
link_address_sent of all mstb are marked as false even the topology probing
is done without any error.

It is caused by wrongly also include "ret == 0" case as a probing failure
case.

[How]
Remove inappropriate checking conditions.

Cc: Lyude Paul <ly...@redhat.com>
Cc: Harry Wentland <hwent...@amd.com>
Cc: Jani Nikula <jani.nik...@intel.com>
Cc: Imre Deak <imre.d...@intel.com>
Cc: Daniel Vetter <dan...@ffwll.ch>
Cc: sta...@vger.kernel.org
Fixes: 37dfdc55ffeb ("drm/dp_mst: Cleanup drm_dp_send_link_address() a bit")
Signed-off-by: Wayne Lin <wayne....@amd.com>
---
 drivers/gpu/drm/display/drm_dp_mst_topology.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/display/drm_dp_mst_topology.c 
b/drivers/gpu/drm/display/drm_dp_mst_topology.c
index 7f8e1cfbe19d..68831f4e502a 100644
--- a/drivers/gpu/drm/display/drm_dp_mst_topology.c
+++ b/drivers/gpu/drm/display/drm_dp_mst_topology.c
@@ -2929,7 +2929,7 @@ static int drm_dp_send_link_address(struct 
drm_dp_mst_topology_mgr *mgr,
 
        /* FIXME: Actually do some real error handling here */
        ret = drm_dp_mst_wait_tx_reply(mstb, txmsg);
-       if (ret <= 0) {
+       if (ret < 0) {
                drm_err(mgr->dev, "Sending link address failed with %d\n", ret);
                goto out;
        }
@@ -2981,7 +2981,7 @@ static int drm_dp_send_link_address(struct 
drm_dp_mst_topology_mgr *mgr,
        mutex_unlock(&mgr->lock);
 
 out:
-       if (ret <= 0)
+       if (ret < 0)
                mstb->link_address_sent = false;
        kfree(txmsg);
        return ret < 0 ? ret : changed;
-- 
2.37.3

Reply via email to