Hi

Am 25.08.26 um 12:54 schrieb Roshan Kumar:
Commit 860e748bddcc ("drm: ensure blend mode supported if
pixel format with alpha exposed") added validation that warns when a
plane exposes an alpha format without a pixel blend mode property. PL111
exposes several such formats but does not attach the property.

The PL110/PL111 controller scans out a single framebuffer and does not
blend its alpha channel with a background. Advertise
DRM_MODE_BLEND_PIXEL_NONE to match the existing hardware behavior.

Why does the driver report ARGB formats in the first place. I'm looking at the code at [1] and I don't see any difference to XRGB. Unless I'm missing something, please remove ARGB formats from this driver instead. Drivers should not report formats they don't support.

[1] https://elixir.bootlin.com/linux/v7.2.2/source/drivers/gpu/drm/pl111/pl111_display.c#L259

Best regards
Thomas


With panic_on_warn enabled, this warning prevents the syzkaller
vexpress-a15 manager from booting. The change was tested on current
master with QEMU 10 and the existing production DTB; the guest reached
sshd and returned an SSH banner.

Fixes: 860e748bddcc ("drm: ensure blend mode supported if pixel format with alpha 
exposed")
Link: https://github.com/google/syzkaller/issues/7805
Signed-off-by: Roshan Kumar <[email protected]>
---
  drivers/gpu/drm/pl111/pl111_display.c | 6 ++++++
  1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/pl111/pl111_display.c 
b/drivers/gpu/drm/pl111/pl111_display.c
index 5d10bc5..758b297 100644
--- a/drivers/gpu/drm/pl111/pl111_display.c
+++ b/drivers/gpu/drm/pl111/pl111_display.c
@@ -15,6 +15,7 @@
  #include <linux/media-bus-format.h>
  #include <linux/of_graph.h>
+#include <drm/drm_blend.h>
  #include <drm/drm_fb_dma_helper.h>
  #include <drm/drm_fourcc.h>
  #include <drm/drm_framebuffer.h>
@@ -596,5 +597,10 @@ int pl111_display_init(struct drm_device *drm)
        if (ret)
                return ret;
+ ret = drm_plane_create_blend_mode_property(&priv->pipe.plane,
+                                                  
BIT(DRM_MODE_BLEND_PIXEL_NONE));
+       if (ret)
+               return ret;
+
        return 0;
  }

--
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstr. 146, 90461 Nürnberg, Germany, www.suse.com
GF: Jochen Jaser, Andrew McDonald, (HRB 36809, AG Nürnberg)


Reply via email to