Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp1651268pxj; Wed, 19 May 2021 10:38:57 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx813EaswLw9SnHhhZTGK1eOnIUY//xbz+teipEg9t8a0sDfdsecuoM0WyHbKEaEn4nJVpA X-Received: by 2002:a50:fd11:: with SMTP id i17mr193751eds.23.1621445937219; Wed, 19 May 2021 10:38:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621445937; cv=none; d=google.com; s=arc-20160816; b=Tmr4BZTVF9Q+jCmo5/YInPuypCaF/8NPDyBkspBdpBcXmQwoNioSQIOr21li/ZfDI3 QU0eONpbSdGxlvExf6hRNMPGBAj4AT0CQ20toH+hzu654013MbQnBQjLCmsDOQ6baJ3R 5EBfX/OW7VPwjF4SMzMAoPt4vn2v52O6Tyk9jIFinenFsjRM6xdzo9cbm17nIJkw6rNt YXe/iGpKr6dSNBPzx08t19qqVp95Dj3b7+K8fO4X3Pgaxg9YVJmmRczB/m3pxM4o+iou R5eui9IXfk0Iv0RCrd1gjjCs/9EApDOTiO1ZNFmTz6iaiW6lh+y1stOxqXNDLQr4Pp2a jwwg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-disposition:mime-version:message-id :subject:cc:to:from:date:dkim-signature; bh=n8e6VGBvsEJjz8jZNXiVgvyKjF6tuVQmtskn3RF1rFc=; b=U5wNCqINrxZED0t+msRtuWQt3204ySsuoBXQuB7XDXVjfXBWzdeDL0r8aLOJoW4K+0 JEdTPp+pcP8MjgHM/avtjc8pGXSKBPyq7iBnC2IrnGobb56MUFhIIKn+3YQ+k0uIh4kh 1FiUmzvGkSCiIk2LLc0Nb044fVU3Tq6zvFAVYhlpqDuSQEZTT5RjeURHwYoowPah4F1T BfSCjP7S0k8gWLhoj0wLEzvgVwojgJmBSQVwAmE0R90XAHhKOz3M6ZY9ceeS0AvoxYrm YbJ87h9aMYUQolTwcOeQNdZStEXmtoQwWpG/aODLlHh4sD3E2BrVOsXx+t0EP595DsOK Ku+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@oracle.com header.s=corp-2020-01-29 header.b=F1Z3+HjI; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t23si295639ejj.290.2021.05.19.10.38.33; Wed, 19 May 2021 10:38:57 -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=@oracle.com header.s=corp-2020-01-29 header.b=F1Z3+HjI; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=oracle.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347035AbhERJV2 (ORCPT + 99 others); Tue, 18 May 2021 05:21:28 -0400 Received: from mx0a-00069f02.pphosted.com ([205.220.165.32]:43134 "EHLO mx0a-00069f02.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240078AbhERJVX (ORCPT ); Tue, 18 May 2021 05:21:23 -0400 Received: from pps.filterd (m0246629.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 14I9Ct0k023204; Tue, 18 May 2021 09:19:53 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=date : from : to : cc : subject : message-id : mime-version : content-type; s=corp-2020-01-29; bh=n8e6VGBvsEJjz8jZNXiVgvyKjF6tuVQmtskn3RF1rFc=; b=F1Z3+HjIpu2VLqZj+6IImaud6ddlLKvI5yuSt3L+3KAn9/P+sStIEQY4VzubmJzuqV8G ioigVJBjDbFVJwW74ZrvqJYGVZFCA04MPDux/khlD/io/PTD5AdXQNTEDqQGpfuHNkjc n9E/Dbih/rshzYp/mNDeA+GOtjArDO/iz9bLc32PWd58Yx9gMziogIFOLYkUc9uZ97dO D8yC7ePbxMN/nmISSz01szddAbPkkN8Q2MmhASW+NXTWYaaEfNUu98W6t1JApjM8zU8k kFGhc668mKlBvRYyKK56xXWn57y7ZB/jPj5G0/oR9XNE0eQ6wmuDGgM5X5WcU79fJ3v3 sw== Received: from oracle.com (userp3030.oracle.com [156.151.31.80]) by mx0b-00069f02.pphosted.com with ESMTP id 38m9bgg1aa-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 May 2021 09:19:53 +0000 Received: from userp3030.oracle.com (userp3030.oracle.com [127.0.0.1]) by pps.podrdrct (8.16.0.36/8.16.0.36) with SMTP id 14I9AtTB090680; Tue, 18 May 2021 09:19:52 GMT Received: from pps.reinject (localhost [127.0.0.1]) by userp3030.oracle.com with ESMTP id 38j3du6x53-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 May 2021 09:19:52 +0000 Received: from userp3030.oracle.com (userp3030.oracle.com [127.0.0.1]) by pps.reinject (8.16.0.36/8.16.0.36) with SMTP id 14I9JpEC109238; Tue, 18 May 2021 09:19:51 GMT Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by userp3030.oracle.com with ESMTP id 38j3du6x4f-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 18 May 2021 09:19:51 +0000 Received: from abhmp0014.oracle.com (abhmp0014.oracle.com [141.146.116.20]) by aserv0122.oracle.com (8.14.4/8.14.4) with ESMTP id 14I9Jdlx012420; Tue, 18 May 2021 09:19:39 GMT Received: from mwanda (/62.8.83.26) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 18 May 2021 02:19:39 -0700 Date: Tue, 18 May 2021 12:19:30 +0300 From: Dan Carpenter To: Andrzej Hajda Cc: Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , David Airlie , Daniel Vetter , Bjorn Andersson , Linus Walleij , Douglas Anderson , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org Subject: [PATCH] drm/bridge: ti-sn65dsi86: fix a ternary type promotion bug Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-Mailer: git-send-email haha only kidding X-Proofpoint-ORIG-GUID: b9ooFrFJESALkdzw1ESlb6Ymmjg1FYhe X-Proofpoint-GUID: b9ooFrFJESALkdzw1ESlb6Ymmjg1FYhe Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The ti_sn_aux_transfer() function returns ssize_t (signed long). It's supposed to return negative error codes or the number of bytes transferred. The "ret" variable is int and the "len" variable is unsigned int. The problem is that with a ternary like this, the negative int is first type promoted to unsigned int to match "len" at this point it is a high positive value. Then when it is type promoted to ssize_t (s64) it remains a high positive value instead of sign extending and becoming a negative again. Fix this by removing the ternary. Fixes: b137406d9679 ("drm/bridge: ti-sn65dsi86: If refclk, DP AUX can happen w/out pre-enable") Signed-off-by: Dan Carpenter --- drivers/gpu/drm/bridge/ti-sn65dsi86.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/ti-sn65dsi86.c b/drivers/gpu/drm/bridge/ti-sn65dsi86.c index bb0a0e1c6341..45a2969afb2b 100644 --- a/drivers/gpu/drm/bridge/ti-sn65dsi86.c +++ b/drivers/gpu/drm/bridge/ti-sn65dsi86.c @@ -1042,7 +1042,9 @@ static ssize_t ti_sn_aux_transfer(struct drm_dp_aux *aux, pm_runtime_mark_last_busy(pdata->dev); pm_runtime_put_autosuspend(pdata->dev); - return ret ? ret : len; + if (ret) + return ret; + return len; } static int ti_sn_bridge_parse_dsi_host(struct ti_sn65dsi86 *pdata) -- 2.30.2