Hello Hans,
On 5/9/22 13:04, Hans de Goede wrote:
> vmw_fb_kms_framebuffer() declares a drm_mode_fb_cmd2 struct on the stack
> without zero-ing it and then continues with initializing only some fields.
>
> This leads to drm_mode_fb_cmd2.modifiers[0] containing garbage,
> which eventually gets used by drm_helper_mode_fill_fb_struct() to
> set fb->modifier when leads to the following atomic-check failure:
>
> vmwgfx 0000:00:02.0: [drm:drm_atomic_check_only] [PLANE:34:plane-0]
> invalid pixel format XR24 little-endian (0x34325258),
> modifier 0xffff94d64719e000
> fbcon_init: detected unhandled fb_set_par error, error code -22
>
> Which causes the fbdev emulation and thus also fbcon to not work.
>
> Initialize the struct with all zeros to fix this.
>
> Fixes: dabdcdc9822a ("drm/vmwgfx: Switch to mode_cmd2")
> BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=2072556
> Signed-off-by: Hans de Goede <[email protected]>
> ---
Zack fixed this already:
https://cgit.freedesktop.org/drm/drm-misc/commit/?id=5405d25b9e8e6
--
Best regards,
Javier Martinez Canillas
Linux Engineering
Red Hat