Commit 3ccf8ec4 authored by David Stevens's avatar David Stevens Committed by Commit Bot

ui/ozone/drm: Skip vgem before creating gbm device

We want to drop vgem support from minigbm, so filter out the vgem render
node before trying to creating the gbm device to prevent the expected
unsupported backend failure from being treated as a real error.

Bug: b:141278896
Change-Id: Ia68c6fc57cff51cf04d76053026d5ee5ae5c57e0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2392161Reviewed-by: default avatarDaniele Castagna <dcastagna@chromium.org>
Reviewed-by: default avatarMichael Spang <spang@chromium.org>
Commit-Queue: David Stevens <stevensd@chromium.org>
Cr-Commit-Position: refs/heads/master@{#805174}
parent 2b3b965e
......@@ -24,6 +24,7 @@
#include "ui/ozone/common/egl_util.h"
#include "ui/ozone/common/gl_ozone_egl.h"
#include "ui/ozone/platform/drm/common/drm_util.h"
#include "ui/ozone/platform/drm/common/scoped_drm_types.h"
#include "ui/ozone/platform/drm/gpu/drm_gpu_util.h"
#include "ui/ozone/platform/drm/gpu/drm_thread_proxy.h"
#include "ui/ozone/platform/drm/gpu/drm_window_proxy.h"
......@@ -185,18 +186,18 @@ std::vector<gfx::BufferFormat> EnumerateSupportedBufferFormatsForTexturing() {
if (!dev_path_file.IsValid())
break;
// Skip the virtual graphics memory manager device.
ScopedDrmVersionPtr version(drmGetVersion(dev_path_file.GetPlatformFile()));
if (!version || base::LowerCaseEqualsASCII(version->name, "vgem")) {
continue;
}
ScopedGbmDevice device(gbm_create_device(dev_path_file.GetPlatformFile()));
if (!device) {
LOG(ERROR) << "Couldn't create Gbm Device at " << dev_path.MaybeAsASCII();
return supported_buffer_formats;
}
// Skip the virtual graphics memory manager device.
if (base::LowerCaseEqualsASCII(gbm_device_get_backend_name(device.get()),
"vgem")) {
continue;
}
for (int i = 0; i <= static_cast<int>(gfx::BufferFormat::LAST); ++i) {
const gfx::BufferFormat buffer_format = static_cast<gfx::BufferFormat>(i);
if (base::Contains(supported_buffer_formats, buffer_format))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment