From: Pekka Paalanen <ppaalanen@gmail.com>
To: Zack Rusin <zack@kde.org>
Cc: krastevm@vmware.com, mombasawalam@vmware.com,
dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v2 0/8] Fix cursor planes with virtualized drivers
Date: Tue, 12 Jul 2022 10:54:54 +0300 [thread overview]
Message-ID: <20220712105454.519e2d7b@eldfell> (raw)
In-Reply-To: <20220712033246.1148476-1-zack@kde.org>
[-- Attachment #1: Type: text/plain, Size: 3294 bytes --]
On Mon, 11 Jul 2022 23:32:38 -0400
Zack Rusin <zack@kde.org> wrote:
> From: Zack Rusin <zackr@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(-)
>
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2022-07-12 7:55 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-12 3:32 [PATCH v2 0/8] Fix cursor planes with virtualized drivers Zack Rusin
2022-07-12 3:32 ` [PATCH v2 1/8] drm: Disable the cursor plane on atomic contexts " Zack Rusin
2022-08-10 16:40 ` Daniel Vetter
2023-05-02 9:32 ` Javier Martinez Canillas
2023-05-03 3:35 ` Zack Rusin
2023-05-03 7:48 ` Javier Martinez Canillas
2023-05-03 8:01 ` Pekka Paalanen
2023-05-04 1:50 ` Zack Rusin
2023-05-04 10:39 ` Pekka Paalanen
2023-05-04 11:27 ` Jonas Ådahl
2023-05-04 12:13 ` Pekka Paalanen
2023-05-03 7:54 ` Pekka Paalanen
2023-05-04 1:43 ` Zack Rusin
2023-05-04 8:21 ` Pekka Paalanen
2022-07-12 3:32 ` [PATCH v2 2/8] drm/atomic: Add support for mouse hotspots Zack Rusin
2023-05-03 7:59 ` Daniel Vetter
2022-07-12 3:32 ` [PATCH v2 3/8] drm/vmwgfx: Use the hotspot properties from cursor planes Zack Rusin
2022-07-25 13:35 ` Martin Krastev (VMware)
2022-07-12 3:32 ` [PATCH v2 4/8] drm/qxl: " Zack Rusin
2022-07-12 7:58 ` Gerd Hoffmann
2022-07-12 3:32 ` [PATCH v2 5/8] drm/vboxvideo: " Zack Rusin
2022-07-12 7:56 ` Pekka Paalanen
2022-07-13 3:35 ` Zack Rusin
2022-07-13 7:20 ` Pekka Paalanen
2022-07-13 13:35 ` Zack Rusin
2022-07-14 7:38 ` Pekka Paalanen
2022-07-12 3:32 ` [PATCH v2 6/8] drm/virtio: " Zack Rusin
2022-07-12 7:58 ` Gerd Hoffmann
2022-07-12 3:32 ` [PATCH v2 7/8] drm: Remove legacy cursor hotspot code Zack Rusin
2022-07-12 3:32 ` [PATCH v2 8/8] drm: Introduce DRM_CLIENT_CAP_SUPPORTS_VIRTUAL_CURSOR_PLANE Zack Rusin
2022-07-12 7:57 ` Simon Ser
2022-07-12 8:01 ` Pekka Paalanen
2022-07-12 7:54 ` Pekka Paalanen [this message]
2022-07-12 8:00 ` [PATCH v2 0/8] Fix cursor planes with virtualized drivers Simon Ser
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220712105454.519e2d7b@eldfell \
--to=ppaalanen@gmail.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=krastevm@vmware.com \
--cc=mombasawalam@vmware.com \
--cc=zack@kde.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox