From 4850cb4d7eb2d81beb7e4d2311b225b7b1c0bc25 Mon Sep 17 00:00:00 2001 From: Wujian Sun Date: Tue, 19 Nov 2024 14:11:21 +0800 Subject: [PATCH] Fix chromium crash when run webgl 2.0.0 cts Most display not support YUV format SCANOUT usage, don't create YUV format GBM bo for SCANOUT. webgl 2.0.0 fail cases: all/conformance2/textures/video Upstream-Status: Inappropriate [i.MX specific] Signed-off-by: Wujian Sun --- ui/gfx/linux/gbm_wrapper.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ui/gfx/linux/gbm_wrapper.cc b/ui/gfx/linux/gbm_wrapper.cc index 415640e5825e3..ae99206f28f6a 100644 --- a/ui/gfx/linux/gbm_wrapper.cc +++ b/ui/gfx/linux/gbm_wrapper.cc @@ -313,6 +313,10 @@ class Device final : public ui::GbmDevice { return CreateBuffer(format, requested_size, flags); } + //Most display not support YUV format SCANOUT usage + if (format == GBM_FORMAT_NV12 && (flags & GBM_BO_USE_SCANOUT)) + return nullptr; + // Buggy drivers prevent us from getting plane FDs from a BO which had its // previously imported BO destroyed. E.g: Nvidia. Thus, on Linux Desktop, we // do the create/import modifiers validation loop below using a separate set -- 2.34.1