summaryrefslogtreecommitdiff
path: root/stable
diff options
context:
space:
mode:
authorMichel Dänzer <mdaenzer@redhat.com>2026-01-12 17:55:12 +0100
committerMichel Dänzer <michel@daenzer.net>2026-06-23 11:30:33 +0200
commitafb614d5fcbd02d261a6ae91920aa91cf3915a8a (patch)
treed912772095cdc167bad6baea47d94b04d1a05498 /stable
parentee78491a237eaff9389a0ccf8680521d074407d3 (diff)
stable/linux-dmabuf: Spell out rules around format_table eventsHEADmain
Explicitly spell out that the compositor doesn't need to re-send a format_table event for the same dmabuf parameters feedback object if the table contents haven't changed since last time. v2: * Use "is free not to" instead of "may not", for clarity and consistency with the other two additions. (Pekka Paalanen) Signed-off-by: Michel Dänzer <mdaenzer@redhat.com>
Diffstat (limited to 'stable')
-rw-r--r--stable/linux-dmabuf/feedback.rst9
-rw-r--r--stable/linux-dmabuf/linux-dmabuf-v1.xml5
2 files changed, 14 insertions, 0 deletions
diff --git a/stable/linux-dmabuf/feedback.rst b/stable/linux-dmabuf/feedback.rst
index 709424c..9ba2d45 100644
--- a/stable/linux-dmabuf/feedback.rst
+++ b/stable/linux-dmabuf/feedback.rst
@@ -97,6 +97,11 @@ feedback parameters is received, they should perform these steps again. They
should detect when the optimal allocation parameters didn't change (same
device/format/modifier/flags) to avoid needlessly re-allocating their buffers.
+Note that the compositor is free not to re-send the ``format_table`` event for a
+given surface feedback object if the table contents haven't changed since last
+time. The client needs to keep around the last format table until it destroys
+the surface feedback object.
+
For compositors
---------------
@@ -108,6 +113,10 @@ to both ``get_default_feedback`` and ``get_surface_feedback``. Set the
format/modifier pairs supported by the rendering API. Do not set the
``scanout`` flag in the ``tranche_flags`` event.
+In the following advanced cases, the compositor is free not to re-send the
+``format_table`` event for a given surface feedback object if the table contents
+haven't changed since last time.
+
Some compositors may support direct scan-out for full-screen surfaces. These
compositors can re-send the feedback parameters when a surface becomes
full-screen or leaves full-screen mode if the client has used the
diff --git a/stable/linux-dmabuf/linux-dmabuf-v1.xml b/stable/linux-dmabuf/linux-dmabuf-v1.xml
index 7d727f7..7337175 100644
--- a/stable/linux-dmabuf/linux-dmabuf-v1.xml
+++ b/stable/linux-dmabuf/linux-dmabuf-v1.xml
@@ -447,6 +447,11 @@
With version 6 and above, the compositor must always advertise at least
one tranche with the sampling flag set.
+
+ The compositor sends a format_table event at least once for each dmabuf
+ parameters feedback object, before any tranche events. Unless the format
+ table contents change later, the compositor is free not to send another
+ format_table event for the same dmabuf parameters feedback object.
</description>
<request name="destroy" type="destructor">