From nobody Fri Dec 19 20:40:01 2025 Received: from mail-wm1-f49.google.com (mail-wm1-f49.google.com [209.85.128.49]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 676721A0BED for ; Wed, 8 Jan 2025 09:36:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.49 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736328965; cv=none; b=o8SfsbifuY81O0U217ShwNTRI77mHctibvqqsZbIP0WuNc6ng7MGO798TZ3CpN8hwdjjsAaCKaU4UXh64nEK0h9zlFhyfgB92df+vRIo/hWEhfyAB5EdkW+G6W/Cj1RpKFRe5tKt+OAVVZwqsrMKQ3SKNlmMtx7Ox4VgIz44b+M= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1736328965; c=relaxed/simple; bh=yA/0y5/r3RXc5njX7twbCnZs2KG90snQm7Bt83v8+3E=; h=Date:From:To:Cc:Subject:Message-ID:MIME-Version:Content-Type: Content-Disposition; b=eFwQTK0IJcyzn5xZgx5DIkqlYIKyqZpdMqVG4ObDXyMCK3jEYTwI4sah1bWa+6J4dFcCXhNINTqLtJlw/26EVySiEnTAivH3zDT3f/VNmIxRLWjalhTU2bOaunUaHWohHF2XPk1/QYwyqNsNs+AIOns1vqYrenlFLi1fks9xzzs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org; spf=pass smtp.mailfrom=linaro.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b=T8gt+hrN; arc=none smtp.client-ip=209.85.128.49 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linaro.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linaro.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="T8gt+hrN" Received: by mail-wm1-f49.google.com with SMTP id 5b1f17b1804b1-436202dd7f6so186461195e9.0 for ; Wed, 08 Jan 2025 01:36:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1736328961; x=1736933761; darn=vger.kernel.org; h=content-disposition:mime-version:message-id:subject:cc:to:from:date :from:to:cc:subject:date:message-id:reply-to; bh=UqzxWOab6evyJePUEZiyqiNeRR2ktAmye9JuSg0gIEo=; b=T8gt+hrNzT8b64Mp3+VwJ9Qwgh1IdeU0+QQzKjEA/tVQdrR0Dvi5oXYdY58hbiCgIR 2AIv5jv6g2EXX8dhSJHBznIrRDFbr+fzo2FK+RCgASHodIVCipReuz1toKxGA9upVQgY xdRLvfhU0oDCglebSE8AGblwSIcE2MXjSpOHUopiaLqnLILETom54AL0AFZfLoE7QOpn hheUxddj48OxanTjHTvRJOtaWnofgs8sknzo7Jh6eXoqyczDhbU3jz9/sY0WlsJAZvDM V68o4xWGz3M/D3JOseJix0qZ3ZgWTJIVTH934d0Ng6b5Q7fuJi+/A74Q6bHz9Qu8PkAw x/6Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736328961; x=1736933761; h=content-disposition:mime-version:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=UqzxWOab6evyJePUEZiyqiNeRR2ktAmye9JuSg0gIEo=; b=npeSAKynM+HnQ1dUG04BbqlgCyfW49u66LzGLNqs2AsNKSLHNTLz7aOquMusmkXf3E 3CU1FZHpFUqapW1jO8NlxOT19k7PV1M8zmehrmwiOrJFH5T45x5uRhVv9ytaQdvu6Vuj hFF/2pTx5Qwr0QfKi67hryFINe2oHmXKfoRDggplkPiBMyNN2Ks3CbYCdDeemZi6uWPP 9Cp1bjBRoEZH1sBaOdaG+fkSFCyjhN+WaZ3YpIzGdtzl8O9ZqrsnVrFrRU/ISLGvvsp+ IeXPfe2x54ZhPVj+Nff7xRqepDJzqO0j/6onGpfKaU6fYnX4+RD0lV8nda7fDCcFV+mQ ijNQ== X-Forwarded-Encrypted: i=1; AJvYcCX7h4yOTy90/0jjjA7YRjgOx1hyIOXOdO9QQPnJCnxVnQy3SvVnnCLeVs2M3rgwA8qyjRKpaudvL6gARiU=@vger.kernel.org X-Gm-Message-State: AOJu0YwyjkoGU4McvFdThin2n9+etw0tWf4nCDUuSTV97fyMiyXK3HpB ysJHtyFW4PfmjgcHoUD/SbnRI2JeWd1Wzm8SOg9kngJgUkPert94OqSHHPg2h+U= X-Gm-Gg: ASbGnctC8YHfz8fW8KwYUwEzls6QBAPOw/XzfL4N9AcxbWWBQAjrk0TM5OZZLzsviiV 4grJ8mswPyNRl4TSCs12I9uWnh8X/Fi4Fby6qO8Unf7PpsCou68P751fR0labKlSLAGhfaXwWTY W7unzvcuIc4On6rN4Un/CAKUFlVzmNN9PIiaPlpdfWWXgIkjiYkYBkwbKkjp33zQRuyRSEqbcaa LDT6Ax+Mjpt74l2EX/jSiFGxsoW59CzasGjB30oTI8uLcuMacX4MF6NTNwWnA== X-Google-Smtp-Source: AGHT+IG5WSBhFOJisgYTUKeIhRXBAfvDEN8YKwZDJA2mb5m6FO3aJNoBZk/2i3G8RcBgch7B0HaYEw== X-Received: by 2002:a05:6000:1acf:b0:386:4034:f9a6 with SMTP id ffacd0b85a97d-38a8735727fmr1340774f8f.57.1736328960701; Wed, 08 Jan 2025 01:36:00 -0800 (PST) Received: from localhost ([196.207.164.177]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-436e2ddccf4sm14566785e9.19.2025.01.08.01.35.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Jan 2025 01:36:00 -0800 (PST) Date: Wed, 8 Jan 2025 12:35:57 +0300 From: Dan Carpenter To: Julien STEPHAN Cc: Chun-Kuang Hu , Philipp Zabel , David Airlie , Daniel Vetter , Matthias Brugger , AngeloGioacchino Del Regno , Mattijs Korpershoek , dri-devel@lists.freedesktop.org, linux-mediatek@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org Subject: [PATCH RESEND] drm/mediatek: dsi: fix error codes in mtk_dsi_host_transfer() Message-ID: Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Disposition: inline X-Mailer: git-send-email haha only kidding Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" There is a type bug because the return statement: return ret < 0 ? ret : recv_cnt; The issue is that ret is an int, recv_cnt is a u32 and the function returns ssize_t, which is a signed long. The way that the type promotion works is that the negative error codes are first cast to u32 and then to signed long. The error codes end up being positive instead of negative and the callers treat them as success. Fixes: 81cc7e51c4f1 ("drm/mediatek: Allow commands to be sent during video = mode") Reported-by: kernel test robot Closes: https://lore.kernel.org/r/202412210801.iADw0oIH-lkp@intel.com/ Signed-off-by: Dan Carpenter Reviewed-by: Mattijs Korpershoek Reviewed-by: AngeloGioacchino Del Regno Reviewed-by: CK Hu --- I sent this patch earlier: https://lore.kernel.org/all/Y%2FyBC4yxTs+Po0TG@kili/ but it wasn't applied. I've changed the commit message a bit and added new tags. drivers/gpu/drm/mediatek/mtk_dsi.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/mediatek/mtk_dsi.c b/drivers/gpu/drm/mediatek/= mtk_dsi.c index d871b1dba083..0acfda47f002 100644 --- a/drivers/gpu/drm/mediatek/mtk_dsi.c +++ b/drivers/gpu/drm/mediatek/mtk_dsi.c @@ -1015,12 +1015,12 @@ static ssize_t mtk_dsi_host_transfer(struct mipi_ds= i_host *host, const struct mipi_dsi_msg *msg) { struct mtk_dsi *dsi =3D host_to_dsi(host); - u32 recv_cnt, i; + ssize_t recv_cnt; u8 read_data[16]; void *src_addr; u8 irq_flag =3D CMD_DONE_INT_FLAG; u32 dsi_mode; - int ret; + int ret, i; =20 dsi_mode =3D readl(dsi->regs + DSI_MODE_CTRL); if (dsi_mode & MODE) { @@ -1069,7 +1069,7 @@ static ssize_t mtk_dsi_host_transfer(struct mipi_dsi_= host *host, if (recv_cnt) memcpy(msg->rx_buf, src_addr, recv_cnt); =20 - DRM_INFO("dsi get %d byte data from the panel address(0x%x)\n", + DRM_INFO("dsi get %zd byte data from the panel address(0x%x)\n", recv_cnt, *((u8 *)(msg->tx_buf))); =20 restore_dsi_mode: --=20 2.45.2