drm/panic: Fix uninitialized drm_scanout_buffer.set_pixel() crash
authorGeert Uytterhoeven <geert+renesas@glider.be>
Thu, 13 Jun 2024 19:17:59 +0000 (21:17 +0200)
committerJocelyn Falempe <jfalempe@redhat.com>
Mon, 24 Jun 2024 11:18:00 +0000 (13:18 +0200)
commita63ee07883dea5265ff00e606034e6c72b247cbc
tree6ce2f5a575c4e903c82c4c2b394cf02a962568b5
parent07430fa5248964d5338382b4b2e9ebea3904238e
drm/panic: Fix uninitialized drm_scanout_buffer.set_pixel() crash

No implementations of drm_plane_helper_funcs.get_scanout_buffer() fill
in the optional drm_scanout_buffer.set_pixel() member.  Hence the member
may contain non-zero garbage, causing a crash when deferencing it during
drm panic.

Fix this by pre-initializing the drm_scanout_buffer object before
calling drm_plane_helper_funcs.get_scanout_buffer().

Fixes: 24d07f114e4ec760 ("drm/panic: Add a set_pixel() callback to drm_scanout_buffer")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Jocelyn Falempe <jfalempe@redhat.com>
Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/4c250d21880ca0b97e41da7b6a101bdf07e9d015.1718305355.git.geert+renesas@glider.be
drivers/gpu/drm/drm_panic.c