[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250901145206.51213-1-jose.exposito89@gmail.com>
Date: Mon, 1 Sep 2025 16:52:05 +0200
From: José Expósito <jose.exposito89@...il.com>
To: louis.chauvet@...tlin.com
Cc: airlied@...il.com,
dri-devel@...ts.freedesktop.org,
hamohammed.sa@...il.com,
linux-kernel@...r.kernel.org,
maarten.lankhorst@...ux.intel.com,
melissa.srw@...il.com,
mripard@...nel.org,
simona@...ll.ch,
thomas.petazzoni@...tlin.com,
tzimmermann@...e.de
Subject: [PATCH 0/2] drm/vkms: Fix plane blending z-order
Hi Louis,
I already made some comments about zpos here:
https://lore.kernel.org/dri-devel/aJDDr_9soeNRAmm0@fedora/
But let's start the conversation here as well!
> As reported by Marius [1], the current blending algorithm for vkms planes
> is not future-proof. Currently the z-ordering is only garanteed by the
> creation order. As the future ConfigFS interface will allows to create
> planes, this order may vary.
>
> To avoid this, add the zpos property and blend the planes according to
> this zpos order.
>
> [1]:https://lore.kernel.org/all/aHpGGxZyimpJ8Ehz@xpredator/
In case you want to have a look, 3 years ago I sent a patch adding the
property and blending following the zpos order, but it wasn't merged:
https://github.com/JoseExposito/linux/commit/befc79a1341b27eb328b582c3841097d17ccce71
The way "vkms_state->active_planes" is set is a bit simpler, but it might
not be valid anymore due to code changes.
About this series, I didn't have a chance to run IGT test to validate it,
but in general your code looks good.
My only question is, how do we avoid breaking changes in the configfs side?
For the mutable/immutable configuration it'd be easy: We set it to
immutable by default, i.e, when the user creates a new plane via configfs:
$ sudo mkdir /sys/kernel/config/vkms/<device name>/planes/<plane name>
We set "planes/<plane name>/zpos_mutability" to immutable.
However, we don't know the plane type (required to set the zpos value) when
the user creates a new plane on configfs.
Therefore, we can not set the correct value in "planes/<plane name>/zpos".
Have you already figured out a solution for this?
Jose
PS - In case you missed it, I created:
https://github.com/JoseExposito/vkmsctl
I'll add zpos there once we support it in configfs :)
Powered by blists - more mailing lists