[PATCH v3] drm/ast: Don't check new mode if CRTC is being disabled

Thomas Zimmermann tzimmermann at suse.de
Mon Jan 24 12:40:11 UTC 2022


Hi

Am 21.01.22 um 16:25 schrieb dann frazier:
[...]
> 
> hey,
>    I'm seeing a regression that I bisected down to this change. I
> installed GNOME on a couple of different server models that have
> AMI-based BMCs, which provide a web-based graphics display (virtual
> KVM). When I enter the lock screen on current upstream kernels, the
> display freezes, and I see the following messages appear in syslog
> whenever I generate keyboard/mouse events on that display:
> 
> Jan 19 20:34:53 starbuck gnome-shell[5002]: Failed to post KMS update: drmModeAtomicCommit: Invalid argument
> Jan 19 20:34:53 starbuck gnome-shell[5002]: Page flip discarded: drmModeAtomicCommit: Invalid argument
> Jan 19 20:34:53 starbuck gnome-shell[5002]: Failed to post KMS update: drmModeAtomicCommit: Invalid argument
> Jan 19 20:34:53 starbuck gnome-shell[5002]: Page flip discarded: drmModeAtomicCommit: Invalid argument
> Jan 19 20:34:53 starbuck gnome-shell[5002]: Failed to post KMS update: drmModeAtomicCommit: Invalid argument
> Jan 19 20:34:53 starbuck gnome-shell[5002]: Page flip discarded: drmModeAtomicCommit: Invalid argument
> Jan 19 20:34:53 starbuck gnome-shell[5002]: Failed to post KMS update: drmModeAtomicCommit: Invalid argument

Thanks for reporting. I'll investigate soon.

Best regards
Thomas

> 
> If I back out this change w/ the following patch (code has evolved
> slightly preventing a clean revert), then the lock screen once again
> behaves normally:
> 
> diff --git a/drivers/gpu/drm/ast/ast_mode.c b/drivers/gpu/drm/ast/ast_mode.c
> index 956c8982192b..336c545c46f5 100644
> --- a/drivers/gpu/drm/ast/ast_mode.c
> +++ b/drivers/gpu/drm/ast/ast_mode.c
> @@ -1012,9 +1012,6 @@ static int ast_crtc_helper_atomic_check(struct drm_crtc *crtc,
>   	const struct drm_format_info *format;
>   	bool succ;
>   
> -	if (!crtc_state->enable)
> -		return 0; /* no mode checks if CRTC is being disabled */
> -
>   	ast_state = to_ast_crtc_state(crtc_state);
>   
>   	format = ast_state->format;
> 
> 
> Apologies for noticing so long after the fact. I don't normally run a
> desktop environment on these servers, I just happened to be debugging
> something recently that required it.
> 
>    -dann

-- 
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20220124/2ca15519/attachment.sig>


More information about the dri-devel mailing list