On Wednesday, July 19th, 2023 at 03:42, Zack Rusin <[email protected]> wrote:

> From: Zack Rusin <[email protected]>
> 
> Cursor planes on virtualized drivers have special meaning and require
> that the clients handle them in specific ways, e.g. the cursor plane
> should react to the mouse movement the way a mouse cursor would be
> expected to and the client is required to set hotspot properties on it
> in order for the mouse events to be routed correctly.
> 
> This breaks the contract as specified by the "universal planes". Fix it
> by disabling the cursor planes on virtualized drivers while adding
> a foundation on top of which it's possible to special case mouse cursor
> planes for clients that want it.
> 
> Disabling the cursor planes makes some kms compositors which were broken,
> e.g. Weston, fallback to software cursor which works fine or at least
> better than currently while having no effect on others, e.g. gnome-shell
> or kwin, which put virtualized drivers on a deny-list when running in
> atomic context to make them fallback to legacy kms and avoid this issue.
> 
> Signed-off-by: Zack Rusin <[email protected]>
> Fixes: 681e7ec73044 ("drm: Allow userspace to ask for universal plane list 
> (v2)")
> Cc: <[email protected]> # v5.4+
> Cc: Maarten Lankhorst <[email protected]>
> Cc: Maxime Ripard <[email protected]>
> Cc: Thomas Zimmermann <[email protected]>
> Cc: David Airlie <[email protected]>
> Cc: Daniel Vetter <[email protected]>
> Cc: Dave Airlie <[email protected]>
> Cc: Gerd Hoffmann <[email protected]>
> Cc: Hans de Goede <[email protected]>
> Cc: Gurchetan Singh <[email protected]>
> Cc: Chia-I Wu <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> Cc: [email protected]
> Acked-by: Pekka Paalanen <[email protected]>
> Reviewed-by: Javier Martinez Canillas <[email protected]>

Nit: I think it would be better to reflect the name of the DRM client cap in
the supports_virtualized_cursor_plane field.

Regardless:

Reviewed-by: Simon Ser <[email protected]>

Reply via email to