From mboxrd@z Thu Jan 1 00:00:00 1970 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 417493C3C15 for ; Thu, 23 Apr 2026 10:19:22 +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=1776939563; cv=none; b=gQzzHjr28BjcypFtqEkU53UfN6xfs2VbCwdK3dVBvm/KBfNV+aVcTaSAdllUyHBlZL9DpbW/fwXoHM98J1Y2u3sNw1idMPCLT2YcGl4FG/32QiV6vzZcoTguaTx87jWf/1fyV1vIswtaFEC1G4PZzdQorv+ozz3VpMbRaW01qkU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776939563; c=relaxed/simple; bh=M0DI3IdcW65y3o2L1ziOAG5YYDhmXOczwUugss1u7ZU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=M3rFdHNGJKK1Y/ke6A2+O2lAT74XS6a/O/En9+v0Pws6ZlcmD3sVrqyZxlZeKa9r0JpvAf11vZhpINAwwGfx/xC8lHt9NwTWfrbFW5gl7MaknhkuY//2Oc2PijL+mp/+iBe0kztEPj4XUCDgIo15+8eCoMgbgQ2nwYWx8bP8omw= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=i7z4N6Y6; 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="i7z4N6Y6" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 4D596C2BCB5; Thu, 23 Apr 2026 10:19:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1776939562; bh=M0DI3IdcW65y3o2L1ziOAG5YYDhmXOczwUugss1u7ZU=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=i7z4N6Y6D+1rzKrj90VWd67eB5lzFI021Hswbe0Nthz0nGc6k8DPUS56P/nG/HauL o/nsxUmqBsM/Hs12laBqiXedDfqjQpk+WO8YVnpN1myxUD5dHgyjA0hdF9izD67GVj m65GhAZMAzBzbTN+bIUW5HRKOfggrqucnwJUP3AP/Opu/ZSdrGDTj31F7qBc6R5PRP CW1gpn8kHlO3OgKOZzUtYQYThVXjruat/a5ZNE3HJ+Csa6Wg9laMUuvuBx+TQywvfp Lp2s/u2D/UBCtTlArIlOD8NdM5j+J137YhCyDJtjkjS1vlG65LTlbS/B8pujyj8eSp sofkuBnqVb0HQ== From: Maxime Ripard Date: Thu, 23 Apr 2026 12:18:31 +0200 Subject: [PATCH v2 18/28] drm/atomic_helper: Pass nonblock to commit_tail Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260423-drm-state-readout-v2-18-8549f87cb978@kernel.org> References: <20260423-drm-state-readout-v2-0-8549f87cb978@kernel.org> In-Reply-To: <20260423-drm-state-readout-v2-0-8549f87cb978@kernel.org> To: Maarten Lankhorst , Thomas Zimmermann , David Airlie , Simona Vetter , Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Jyri Sarha , Tomi Valkeinen Cc: Devarsh Thakkar , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, Maxime Ripard X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=1841; i=mripard@kernel.org; h=from:subject:message-id; bh=M0DI3IdcW65y3o2L1ziOAG5YYDhmXOczwUugss1u7ZU=; b=owGbwMvMwCmsHn9OcpHtvjLG02pJDJkvP75/2zr92JENsc+X57DkXdm6fNHq1MDV901nHbc/U vyj9+LLCx1TWRiEORlkxRRZnsiEnV7evrjKwX7lD5g5rEwgQxi4OAVgIjEfGRtmGP/102fd+d2b XcAl8aFKRHhF1X4blahUx02rTsnc/H/riF+q8mLmJSWv+W73CclNv8lYK/UoSa/+V2j2tDjLolK 3SNaU/Jccb4/eWpdqunXj2XLWStXqMznXpttJTpvpNsPjvaAIAA== X-Developer-Key: i=mripard@kernel.org; a=openpgp; fpr=BE5675C37E818C8B5764241C254BCFC56BF6CE8D The state comparison infrastructure will need to know if a commit is blocking or non-blocking in commit_tail. Pass the nonblock flag along. Reviewed-by: Thomas Zimmermann Signed-off-by: Maxime Ripard --- drivers/gpu/drm/drm_atomic_helper.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c index 26953ed6b53e..9deb3dad34a6 100644 --- a/drivers/gpu/drm/drm_atomic_helper.c +++ b/drivers/gpu/drm/drm_atomic_helper.c @@ -2029,11 +2029,11 @@ void drm_atomic_helper_commit_tail_rpm(struct drm_atomic_state *state) drm_atomic_helper_cleanup_planes(dev, state); } EXPORT_SYMBOL(drm_atomic_helper_commit_tail_rpm); -static void commit_tail(struct drm_atomic_state *state) +static void commit_tail(struct drm_atomic_state *state, bool nonblock) { struct drm_device *dev = state->dev; const struct drm_mode_config_helper_funcs *funcs; struct drm_crtc_state *new_crtc_state; struct drm_crtc *crtc; @@ -2087,11 +2087,11 @@ static void commit_tail(struct drm_atomic_state *state) static void commit_work(struct work_struct *work) { struct drm_atomic_state *state = container_of(work, struct drm_atomic_state, commit_work); - commit_tail(state); + commit_tail(state, true); } /** * drm_atomic_helper_async_check - check if state can be committed asynchronously * @dev: DRM device @@ -2307,11 +2307,11 @@ int drm_atomic_helper_commit(struct drm_device *dev, drm_atomic_state_get(state); if (nonblock) queue_work(system_dfl_wq, &state->commit_work); else - commit_tail(state); + commit_tail(state, false); return 0; err: drm_atomic_helper_unprepare_planes(dev, state); -- 2.53.0