[PATCH v2 0/8] Fix cursor planes with virtualized drivers
Pekka Paalanen
ppaalanen at gmail.com
Tue Jul 12 07:54:54 UTC 2022
On Mon, 11 Jul 2022 23:32:38 -0400
Zack Rusin <zack at kde.org> wrote:
> From: Zack Rusin <zackr at vmware.com>
>
> Virtualized drivers have had a lot of issues with cursor support on top
> of atomic modesetting. This set both fixes the long standing problems
> with atomic kms and virtualized drivers and adds code to let userspace
> use atomic kms on virtualized drivers while preserving functioning
> seamless cursors between the host and guest.
>
> The first change in the set is one that should be backported as far as
> possible, likely 5.4 stable, because earlier stable kernels do not have
> virtualbox driver. The change makes virtualized drivers stop exposing
> a cursor plane for atomic clients, this fixes mouse cursor on all well
> formed compositors which will automatically fallback to software cursor.
>
> The rest of the changes until the last one ports the legacy hotspot code
> to atomic plane properties.
>
> Finally the last change introduces userspace API to let userspace
> clients advertise the fact that they are aware of additional restrictions
> placed upon the cursor plane by virtualized drivers and lets them use
> atomic kms with virtualized drivers (the clients are expected to set
> hotspots correctly when advertising support for virtual cursor plane).
Hi Zack,
thank you very much for this revision, I am generally very happy how
this looks.
I read through all the patches, and all the commit messages and code
comments say good things. I'm not really knowledgeable enough to review
the code itself.
Otherwise I would already give my Ack for everything here, but I did
have some questions inspired by patches 5 and 8. See my replies to them.
Thanks,
pq
> Zack Rusin (8):
> drm: Disable the cursor plane on atomic contexts with virtualized
> drivers
> drm/atomic: Add support for mouse hotspots
> drm/vmwgfx: Use the hotspot properties from cursor planes
> drm/qxl: Use the hotspot properties from cursor planes
> drm/vboxvideo: Use the hotspot properties from cursor planes
> drm/virtio: Use the hotspot properties from cursor planes
> drm: Remove legacy cursor hotspot code
> drm: Introduce DRM_CLIENT_CAP_SUPPORTS_VIRTUAL_CURSOR_PLANE
>
> drivers/gpu/drm/drm_atomic_state_helper.c | 14 ++++++
> drivers/gpu/drm/drm_atomic_uapi.c | 20 ++++++++
> drivers/gpu/drm/drm_ioctl.c | 9 ++++
> drivers/gpu/drm/drm_plane.c | 59 ++++++++++++++++++++++-
> drivers/gpu/drm/qxl/qxl_display.c | 14 +++---
> drivers/gpu/drm/qxl/qxl_drv.c | 2 +-
> drivers/gpu/drm/vboxvideo/vbox_drv.c | 2 +-
> drivers/gpu/drm/vboxvideo/vbox_mode.c | 4 +-
> drivers/gpu/drm/virtio/virtgpu_drv.c | 3 +-
> drivers/gpu/drm/virtio/virtgpu_plane.c | 8 +--
> drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 2 +-
> drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 9 +---
> include/drm/drm_drv.h | 10 ++++
> include/drm/drm_file.h | 12 +++++
> include/drm/drm_framebuffer.h | 12 -----
> include/drm/drm_plane.h | 15 ++++++
> include/uapi/drm/drm.h | 17 +++++++
> 17 files changed, 173 insertions(+), 39 deletions(-)
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20220712/026c892b/attachment.sig>
More information about the dri-devel
mailing list