* [PATCH] drm/gud: don't keep a connector without a CRTC as connector_state
@ 2026-09-22 8:40 Sajal Gupta
2026-10-06 12:20 ` Ruben Wauters
0 siblings, 1 reply; 2+ messages in thread
From: Sajal Gupta @ 2026-09-22 8:40 UTC (permalink / raw)
To: rubenru09
Cc: maarten.lankhorst, mripard, tzimmermann, airlied, simona, noralf,
dri-devel, linux-kernel, Sajal Gupta, Sashiko
If the 'for_each_new_connector_in_state()' loop finishes without
hitting the break, connector_state is left pointing at the last
connector visited, which has no CRTC, instead of
staying NULL.
That skips the "if (!connector_state)" fallback below the loop, which
looks up the active connector when the state contains none. The
function then carries on with a connector that is not driven.
Fix by resetting connector_state to NULL for each connector visited that
has no CRTC, so that it is NULL when none was found and the fallback runs.
Fixes: 40e1a70b4aed ("drm: Add GUD USB Display driver")
Reported-by: Sashiko <sashiko-bot@kernel.org>
Link: https://sashiko.dev/#/patchset/20260902123254.36987-1-sajal2005gupta@gmail.com?part=1
Signed-off-by: Sajal Gupta <sajal2005gupta@gmail.com>
---
drivers/gpu/drm/gud/gud_pipe.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/gpu/drm/gud/gud_pipe.c b/drivers/gpu/drm/gud/gud_pipe.c
index aa7792966287..5aa5ac2f3727 100644
--- a/drivers/gpu/drm/gud/gud_pipe.c
+++ b/drivers/gpu/drm/gud/gud_pipe.c
@@ -507,6 +507,7 @@ int gud_plane_atomic_check(struct drm_plane *plane,
for_each_new_connector_in_state(state, connector, connector_state, i) {
if (connector_state->crtc)
break;
+ connector_state = NULL;
}
/*
--
2.55.0
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH] drm/gud: don't keep a connector without a CRTC as connector_state
2026-09-22 8:40 [PATCH] drm/gud: don't keep a connector without a CRTC as connector_state Sajal Gupta
@ 2026-10-06 12:20 ` Ruben Wauters
0 siblings, 0 replies; 2+ messages in thread
From: Ruben Wauters @ 2026-10-06 12:20 UTC (permalink / raw)
To: Sajal Gupta
Cc: maarten.lankhorst, mripard, tzimmermann, airlied, simona, noralf,
dri-devel, linux-kernel, Sashiko
[-- Attachment #1: Type: text/plain, Size: 1489 bytes --]
On Tue, 2026-09-22 at 14:10 +0530, Sajal Gupta wrote:
> If the 'for_each_new_connector_in_state()' loop finishes without
> hitting the break, connector_state is left pointing at the last
> connector visited, which has no CRTC, instead of
> staying NULL.
>
> That skips the "if (!connector_state)" fallback below the loop, which
> looks up the active connector when the state contains none. The
> function then carries on with a connector that is not driven.
>
> Fix by resetting connector_state to NULL for each connector visited that
> has no CRTC, so that it is NULL when none was found and the fallback runs.
>
> Fixes: 40e1a70b4aed ("drm: Add GUD USB Display driver")
> Reported-by: Sashiko <sashiko-bot@kernel.org>
> Link: https://sashiko.dev/#/patchset/20260902123254.36987-1-sajal2005gupta@gmail.com?part=1
> Signed-off-by: Sajal Gupta <sajal2005gupta@gmail.com>
Acked-by: Ruben Wauters <rubenru09@aol.com>
> ---
> drivers/gpu/drm/gud/gud_pipe.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/gpu/drm/gud/gud_pipe.c b/drivers/gpu/drm/gud/gud_pipe.c
> index aa7792966287..5aa5ac2f3727 100644
> --- a/drivers/gpu/drm/gud/gud_pipe.c
> +++ b/drivers/gpu/drm/gud/gud_pipe.c
> @@ -507,6 +507,7 @@ int gud_plane_atomic_check(struct drm_plane *plane,
> for_each_new_connector_in_state(state, connector, connector_state, i) {
> if (connector_state->crtc)
> break;
> + connector_state = NULL;
> }
>
> /*
> --
> 2.55.0
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 870 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-10-06 12:30 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-22 8:40 [PATCH] drm/gud: don't keep a connector without a CRTC as connector_state Sajal Gupta
2026-10-06 12:20 ` Ruben Wauters
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®