From nobody Sun Feb 8 23:25:39 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0895816FF47; Wed, 27 Mar 2024 12:21:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711542085; cv=none; b=ulHCLbbc/Yl5paYsT2VE0uaHR2ko4IYdWzRj4vonTHe6o7o3Ctkx6rO2DZyVbiN2LRXkJpcFwV/tFMTolXRPeq0oR6bFsHrLdWDRMu1PBJLUpsadsc0v9ea/9Ji/ZO5CgVZjGn/RqzwsNS7PgWG/Qpd7r7697mPl82FlWzZ4+4w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1711542085; c=relaxed/simple; bh=CIIr3gCEG+3opvY+S/mrbaoCSt0eZctrjskSgO9hl54=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=nqmBI2UB6cX0t8SxgSgKOlFsMG0vJqqccnG0TCqdb5xMxwcX3CO74ODyLCN4FKRcTQl0XPacLr+JhpxSfCMcdcc4Lir/HwSLwylAHEmida7mtr5BXa5wyTk2BzcGpqU7QUbAbUzCvaocaasTM9m6CTKg7yuFiCfdZlOuuQZqu7g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=p1eQuoG7; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="p1eQuoG7" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 95149C433F1; Wed, 27 Mar 2024 12:21:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1711542084; bh=CIIr3gCEG+3opvY+S/mrbaoCSt0eZctrjskSgO9hl54=; h=From:To:Cc:Subject:Date:From; b=p1eQuoG7OzDcLUkkXpIEjy1AJuDQ7A3HyuZtDjkJrBP1BHHcZlbMhEkV4hPWbl7lw MGIN2ceUkzvXcZYRgZx9LdIHIChAKKvio7/EDcmSpeO6qW3Rw/FYXejGJDqbiHFM7R 0ZICeta0ZampNT3H6V80Phqru7lvs5zMCBgroo/9Jkkhr0sO+CjSCCDZSx4t4EnCAZ Adt1FHoiFXPeuoGKnO46SzYEmU4tJLqUcImpT7oHZcEBMtyR8hJutMTCVmPzCkmk7i hu7PenbUntHiiKnifcYbfUDxm1fk1cFcONni/VQ48ASgIUDLzv0bKt/GH2kjnZml3L hePOMPmsK6l4A== From: Sasha Levin To: stable@vger.kernel.org, jani.nikula@intel.com Cc: Neil Armstrong , Jessica Zhang , Sam Ravnborg , Thomas Zimmermann , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: FAILED: Patch "drm/panel: do not return negative error codes from drm_panel_get_modes()" failed to apply to 5.4-stable tree Date: Wed, 27 Mar 2024 08:21:22 -0400 Message-ID: <20240327122122.2836791-1-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Patchwork-Hint: ignore X-stable: review Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The patch below does not apply to the 5.4-stable tree. If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to . Thanks, Sasha Acked-by: Thomas Zimmermann Reviewed-by: Jessica Zhang Reviewed-by: Neil Armstrong ------------------ original commit in Linus's tree ------------------ From fc4e97726530241d96dd7db72eb65979217422c9 Mon Sep 17 00:00:00 2001 From: Jani Nikula Date: Fri, 8 Mar 2024 18:03:40 +0200 Subject: [PATCH] drm/panel: do not return negative error codes from drm_panel_get_modes() None of the callers of drm_panel_get_modes() expect it to return negative error codes. Either they propagate the return value in their struct drm_connector_helper_funcs .get_modes() hook (which is also not supposed to return negative codes), or add it to other counts leading to bogus values. On the other hand, many of the struct drm_panel_funcs .get_modes() hooks do return negative error codes, so handle them gracefully instead of propagating further. Return 0 for no modes, whatever the reason. Cc: Neil Armstrong Cc: Jessica Zhang Cc: Sam Ravnborg Cc: stable@vger.kernel.org Reviewed-by: Neil Armstrong Reviewed-by: Jessica Zhang Acked-by: Thomas Zimmermann Link: https://patchwork.freedesktop.org/patch/msgid/79f559b72d8c49394041730= 4e222a4b04dfa19c4.1709913674.git.jani.nikula@intel.com Signed-off-by: Jani Nikula --- drivers/gpu/drm/drm_panel.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/drm_panel.c b/drivers/gpu/drm/drm_panel.c index e814020bbcd3b..cfbe020de54e0 100644 --- a/drivers/gpu/drm/drm_panel.c +++ b/drivers/gpu/drm/drm_panel.c @@ -274,19 +274,24 @@ EXPORT_SYMBOL(drm_panel_disable); * The modes probed from the panel are automatically added to the connector * that the panel is attached to. * - * Return: The number of modes available from the panel on success or a - * negative error code on failure. + * Return: The number of modes available from the panel on success, or 0 on + * failure (no modes). */ int drm_panel_get_modes(struct drm_panel *panel, struct drm_connector *connector) { if (!panel) - return -EINVAL; + return 0; =20 - if (panel->funcs && panel->funcs->get_modes) - return panel->funcs->get_modes(panel, connector); + if (panel->funcs && panel->funcs->get_modes) { + int num; =20 - return -EOPNOTSUPP; + num =3D panel->funcs->get_modes(panel, connector); + if (num > 0) + return num; + } + + return 0; } EXPORT_SYMBOL(drm_panel_get_modes); =20 --=20 2.43.0