New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 666488 link

Starred by 4 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

ozone/drm: Cursors are improperly allocated

Project Member Reported by marc...@chromium.org, Nov 17 2016

Issue description

drm cursors are allocated using gfx::BufferUsage::SCANOUT which is incorrect since it results in GBM_BO_USE_SCANOUT | GBM_BO_USE_RENDERING. We don't need these 2 flags, but we really need GBM_BO_USE_CURSOR.
 

Comment 1 by ajha@chromium.org, Nov 18 2016

Labels: M-56
Project Member

Comment 2 by bugdroid1@chromium.org, Dec 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/minigbm/+/179687e4ebc9ce7c5a3199247c116852d9d418ce

commit 179687e4ebc9ce7c5a3199247c116852d9d418ce
Author: Gurchetan Singh <gurchetansingh@chromium.org>
Date: Fri Oct 28 17:07:35 2016

minigbm: Fix cursor and scanout flags

We were incorrectly advertising the scanout and cursor flags in
the drivers.

Chrome never used the BO_USE_CURSOR flag (see chromium:666488), and we
set it for incorrect formats.  Let's only advertise ARGB8888/XRGB8888
cursors if they were previously advertised, and prevent cursors from being
used as render targets.

For scanout, formats can vary from kernel version to kernel version.
For example, the v3.18 i915 driver can't scanout NV12, but the upstream v4.4
i915 driver can.  Let's query the KMS API in those cases.

In addition, we would also like to move to a place where our backends can
determine if a specific {format, usage, format modifier} tuple is supported.
The plan is to add modifiers to the properties that are exposed in KMS, which
can help with optimization.

BUG=b:31942635, chromium:666488
TEST=Ran graphics_Gbm and checked if Chrome boots on cyan, minnie, and
nyan_big

CQ-DEPEND=CL:413325

Change-Id: Ifd3fd1c8063db97b3f1fe057ace82d22def76943
Reviewed-on: https://chromium-review.googlesource.com/405019
Commit-Ready: Gurchetan Singh <gurchetansingh@chromium.org>
Tested-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Ilja H. Friedel <ihf@chromium.org>

[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/helpers.h
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/helpers.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/amdgpu.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/gma500.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/marvell.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/vgem.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/gbm.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/tegra.c
[add] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/list.h
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/rockchip.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/cirrus.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/cros_gralloc/Makefile
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/i915.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/udl.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/drv.h
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/cros_gralloc/cros_alloc_device.cc
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/drv.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/virtio_gpu.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/evdi.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/drv_priv.h
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/exynos.c
[modify] https://crrev.com/179687e4ebc9ce7c5a3199247c116852d9d418ce/mediatek.c

Components: OS>Kernel>Graphics
Components: -OS>Kernel>Graphics
Cc: marc...@chromium.org
marcheu@ can you tell me what component is Ozone if it is not OS>Kernel>Graphics?
Cc: -marc...@chromium.org -spang@chromium.org
I don't know that component it is, but ozone certainly isn't in the kernel...
Cc: julien.isorce@chromium.org
Components: Internals>GPU>Internals
Labels: Proj-Ozone-DRM

Comment 8 by fsamuel@google.com, Nov 17 2017

Owner: rjkroege@chromium.org
Status: Assigned (was: Untriaged)
+rjkroege@ for triage.

Sign in to add a comment