[PATCH 1/2] doc: Update the ID alocation section
Jason Ekstrand
jason at jlekstrand.net
Sun Aug 18 14:52:36 PDT 2013
The method described of alocation IDs has been wrong at least since version
1.0. This commit updates it to correspond to the way IDs are chosen in
versions >= 1.0.
Signed-off-by: Jason Ekstrand <jason at jlekstrand.net>
---
doc/publican/sources/Protocol.xml | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/doc/publican/sources/Protocol.xml b/doc/publican/sources/Protocol.xml
index 1a7a7da..0ece579 100644
--- a/doc/publican/sources/Protocol.xml
+++ b/doc/publican/sources/Protocol.xml
@@ -196,10 +196,16 @@
<section id="sect-Protocol-Creating-Objects">
<title>Creating Objects</title>
<para>
- Each object has a unique ID. The IDs are allocated by the
- client, from a range of IDs. The server tracks how many
- IDs are left in the current range and sends a new range
- when the client is about to run out.
+ Each object has a unique ID. The IDs are allocated by the entity
+ creating the object (either client or server). IDs allocated by the
+ client are in the range [1, 0xff000000) while IDs allocated by the
+ server are in the range [0xff000000, 0xffffffff]. The 0 ID is
+ reserved to represent a null or non-existant object.
+
+ For efficiency purposes, the IDs are densely packed in the sense that
+ the ID N will not be used until N-1 has been used. Any ID allocation
+ algorithm that does not maintain this property is incompatible with
+ the implementation in libwayland.
</para>
</section>
<section id="sect-Protocol-Compositor">
--
1.8.3.1
More information about the wayland-devel
mailing list